Spray、Akka-http 和 Play,这是新 HTTP/REST 项目的最佳选择

Spray, Akka-http and Play, Which is the best bet for a new HTTP/REST project

我将使用 Scala 和 Akka Actors 开发新的 HTTP/REST 服务。

我有使用 Play 的经验,但我并不真的需要一个完整的 Web 框架。 根据我的阅读,我认为 Spray 是一个合适的选择。 我的问题来自于新的 AKKA-HTTP 之后 Spray 的未来。

Spray 项目会独立于 Akka-HTTP 项目发展,还是将两个项目合并为一个 Akka-HTTP 项目?

如果我开始使用 Spray 进行开发,这会有什么影响? 我还读到 Play 将集成 AKKA-HTTP。 所以我最后想知道 a 是否应该与 Play 一起使用?

感谢您的帮助。

您已经在评论中回答了您的问题。只要您不需要处理 UI 我建议您使用 Akka-HTTP 或 Spray.io.

我认为如果您从 Spray.io 开始不会产生影响,因为有很多项目 运行 他们的生产环境在 Spray 上。

详情请参考下方link。

FAQ SPray.io

Typesafe Press Release

谢谢

Spray 已准备好投入生产,但开发团队 (Mathias Doenitz) 现在正在为 Akka-http 上的 Typesafe 工作。

Akka-http 的状态是 "development preview"。有完全释放的含糊承诺 "within a few months",但您不能将任何东西带到银行。

2015 年 7 月 29 日编辑:

The status of Akka-HTTP is now "release candidate" with version 1.0 RC4. Its functionality is largely competing with spray.io, and the common expectation is that spray.io will lose it's development momentum. At this time I would not recommend spray.io for new projects anymore.

Typesafe 的 Jonas Boner 将 Akka-http 称为 "Spray 2.0"。所以不要期望 Spray 的任何未来版本,在某些时候您将不得不进行转换。我在 Scala Days 上看到了 Jonas 的 Akka-http 演示文稿,看起来将 Spray 代码移植到 Akka-http 应该是直截了当的,因为 DSL 几乎没有变化(即使库的底层实现会有所不同)。

具体回答您的问题:Spray 作为一个单独的项目完成,它正在以名称 Akka-http 导入到 Akka(不是合并,因为 Akka 之前没有任何等效项)。如果您现在需要开始开发,请使用 Spray,如果您有能力处理预览版中不可避免的错误,请使用 Akka-http。您的 Spray 代码永远不会停止工作,但除了小错误修复之外,它也不会受到支持。所有新功能都将添加到 Akka-http 中,因此您无需更新到 Spray 2.0,而是更新到 Akka-http。

嗯,如果你必须从头开始学习一切,我建议选择 spray - Akka hhtp 文档真的不完整,akka.http 上很多路由指令还没有实现。入手akka却被逼去喷...

Typesafe gets Spray(ed) | @typesafe

The Akka/Spray integration—named Akka HTTP—will provide an ideal way of producing and consuming embeddable REST services.

根据约翰内斯·鲁道夫

if you want to provide an HTTP interface to (maybe already existing) akka services, then that's what akka-http is for

来源:https://gitter.im/akka/akka?at=5874fc9761fac5a03dbe1a6f