我有一个函数,我使用play-json OFormat来序列化api响应的case类,现在我注意到一些警告我在播放应用程序的日志中看起来像这样:
zation(akka://application)(77) - Using the default Java serializer for class [model.ValidationResponse] which is not recommended because of performance implications. Use another serializer or disable this warning using the setting 'akka.actor.warn-about-java-serializer-usage'
以前有没有人拥有它?以前从未见过这个...
就像我的任何应用程序一样,我使用play-json和我的序列化器只是:
object CustomSerializer {
implicit val ValidationResponseFormat: OFormat[ValidationResponse] = Json.format[ValidationResponse]
}
然后我将它导入到我需要的地方。
如果有人之前有过,我会很乐意听到,在这种情况下我应该怎么做。
从来没有见过它,但最近在这个功能中发生的变化是我添加了缓存(play-redis),也许它与它有关?
警告的原因是Akka演员之间的消息序列化。这不是你的“play-json和我的序列化器只是:”。
你开始使用play-redis,插件使用Akka actor,并使用最简单的序列化,java序列化。它很慢,所以他们建议不要在制作中使用它(这就是警告存在的原因),你需要在设置中更改它。
https://github.com/KarelCemus/play-redis
更多关于Akka序列化设置和此警告,您可以在这个问题的答案中找到:akka-remote serializable warning