1

我想添加特殊情况来提高任何Akka 序列化模块的性能,即允许更快的序列化Array[Double]或用户包装的任何原始类型。是否有一种规范的方式来允许基于每种类型的自定义序列化?

我的想法是添加一个CanSerialize[T]定义方法serialize(o:T):Array[Byte]deserialize(bytes:Array[Byte]):T. 有没有办法在不失去 Akka 的好处的情况下实现这样的事情,比如模式匹配?

编辑 我也可以对 Kryo 或其他比 Java 的序列化器更快的东西感到满意,但似乎没有任何用于 Kryo 和 Akka 2.1 的预打包 jar 文件。

4

1 回答 1

2

您可以为特定类型注册自己的序列化程序。

akka.actor {
  serialization-bindings {
    "[D" = doubleBytes
  }

  serializers {
    doubleBytes = "a.b.YourDoubleArraySerializer"
  }
}

请注意,这[DArray[Double].

http://doc.akka.io/docs/akka/2.1.2/scala/serialization.html

于 2013-03-19T11:05:08.583 回答