与直接使用 Playframework 相比,使用 Lagom 有什么优势?

What are the advantages of using Lagom over the Playframework directly?

我正处于在 Scala Play 之上构思一个基于 JSON 的小型 Web 服务框架的阶段,这非常容易,突然偶然发现了新的 Lagom 框架,我想知道使用它而不是直接使用 play 框架的附加价值是什么?什么可以证明 Cassandra 等的额外复杂性和额外足迹......

哪种框架更适合您取决于您​​的具体需要和要求。但是,在评估时,您不应该只考虑单个服务的实现,而应该考虑整个系统的实现——例如您的服务将如何通信,您将如何处理持久存储?

Lagom 有一些 Play 没有的功能,例如服务描述符和服务客户​​端的概念,可以简化动态服务查找、断路器集成等操作

正如您已经发现的那样,它还简化了为事件溯源设置 Cassandra 持久性,甚至通过为 Kafka 消息总线提供集成来简化服务之间的异步消息传递。请注意,如果您决定使用它们,它们只会增加占地面积。

另一方面,Play 也具有 Lagom 没有的功能,您可能需要也可能不需要,例如从模板渲染 HTML。