Playframework 2.6.x:为什么Akka HTTP从现在开始默认?

Dan*_*nte 5 netty playframework akka-http

问题是为什么Playframework团队决定从Netty迁移到Akka?它在性能意义上更有效吗?

gly*_*ing 9

播放默认使用Akka,因为:

  • Play已在内部使用Akka和Akka流,Akka HTTP用于表示请求和响应的模型更接近于Play.
  • Play团队与Akka团队合作要容易得多.这部分是由于共享的理念和目标,也是由于两个团队都为Lightbend工作.希望这种改进的通信能够帮助Play团队更快地实现新功能并修复错误和安全问题.

Play团队认为Akka的表现至少和Netty一样好.任何发现这不是真的人都会被鼓励向他们提出问题.

以上所有内容均来自Play开发列表中电子邮件主题.

注意:Play继续支持Netty,所以如果您更愿意使用Netty,那么您可以手动选择它:

如果由于某种原因,您在类路径上同时拥有Akka HTTP服务器和Netty HTTP服务器,则需要手动选择它.这可以使用play.server.provider系统属性完成,例如,在开发模式下:

run -Dplay.server.provider=play.core.server.NettyServerProvider

  • 有一天,他们说 Play 和 AkkaHttp “不自然兼容”(https://www.playframework.com/documentation/2.5.x/AkkaHttpServer#known-issues)。我希望他们现在能解决 (2认同)