有一段时间,我一直在寻找一个快速而简单的微服务框架解决方案。我对所有亮点产品都很陌生& scala,但由于它看起来非常有趣,所以我决定尝试一下。
几个问题:
1)我不明白为什么需要新的框架拉格姆?
如果play已经给了我同样的解决方案(作为微服务),那么为什么还需要另一个框架呢?
2)使用play,我能够非常快地创建一个“Hello”项目,并且部署非常简单和直接(通过dist)。
我喜欢这样的事实,我可以合并所有在一个ZIP,并运行它通过脚本。在拉格姆,据我所知,我需要使用ConductR。
因为我的电流需要它看起来像一个很大的开销。有一个简单的为什么要部署它,类似于游戏?
谢谢大家
发布于 2016-12-02 09:48:29
泻湖是建立在游戏之上的。Play旨在成为一个通用(异步)的web框架,而Lagom更具体的目标是添加一些工具/意见,重点是将应用程序部署为微服务。
Lagom提供的几个例子可以帮助您实现微服务风格的体系结构(不是这样的):-
持久性
例如,它还添加了一个用于CQRS-based持久性的API,它是在持久性支持播放当前提供的基础上提供的--如果您不知道,这是一种模式,它通过将查询和命令解耦来帮助您实现微服务体系结构。
容器编排
假设您有一个包含25种不同微服务的Play应用程序--这可能是一个保守的数字,即使是一个相对较小的企业应用程序--您如何管理所有这些JVM的部署/编排?集装箱很受欢迎。你是如何管理所有这些容器的?ConductR是一种工具,它为ConductR提供了集成工具,使您可以更容易地将它与您的Lagom项目一起使用--这是您自己玩不到的。
我仍然可以用Play实现这一点
好的,你可以在播放项目中使用大量的SBT模块来帮助你意识到同样的事情,但是你需要选择你需要的工具,找出哪些模块适合你的项目,根据需要配置和连接它们--这是拉格姆的目标之一--让你远离这些决策和配置任务,这样你就可以专注于编写你的应用程序逻辑。
如果我的应用程序很小,可能只有5个服务,那么您可以很有说服力地争辩说,您真的不需要Lagom (或任何其他的微服务框架)。但是,如果您的应用程序很可能会增长,那么从长远来看,自己玩将花费更多的时间。
显然,在设计微服务时还有更多的考虑因素,但您会得到与Lagom相比的乐趣。
https://stackoverflow.com/questions/40920468
复制相似问题