gpt4 book ai didi

java - 如何更改 Akka 应用程序的默认序列化程序?

转载 作者:搜寻专家 更新时间:2023-10-31 19:37:16 26 4
gpt4 key购买 nike

我看了akka连载page ,他们将 serialization-bindings 称为

serialization-bindings {
"java.lang.String" = java
"docs.serialization.Customer" = java
"com.google.protobuf.Message" = proto
"docs.serialization.MyOwnSerializable" = myown
"java.lang.Boolean" = myown
}

我正在考虑使用 kyro序列化并想知道是否有一种方法可以默认为完整的应用程序打开 kyro 序列化?而不是给每个类或包名称?

有点像

serialization-bindings {
default = kyro
}

最佳答案

是这样的,我用的是kryo:

serializers {
kryo = "com.romix.akka.serialization.kryo.KryoSerializer"
}

serialization-bindings {
"com.ex.es.Msg" = kryo
"java.io.Serializable" = none
}

类似于 Kunal 我所有的消息,我通过网络发送/存储/序列化以任何方式扩展 Msg 类。这不仅是因为我不确定是否有办法设置默认序列化程序,而且还不确定我的应用程序中序列化了什么。

现在试一试您的实际问题:

我还必须设置 "java.io.Serializable"= none 否则我会收到警告,它不确定为我的类选择哪个序列化程序。

所以这可能意味着,默认情况下 case 类扩展 Serializable 并使类似这样的东西作为默认设置工作:

serializers {
kryo = "com.romix.akka.serialization.kryo.KryoSerializer"
}

serialization-bindings {
"java.io.Serializable" = kryo
}

但这只是一个有根据的猜测,目前我无法进行测试。

关于java - 如何更改 Akka 应用程序的默认序列化程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38165886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com