我正在构建一个 Web 应用程序,我想在其中将代码分发到 UI、业务逻辑和数据库等各个层。这是我想要的功能,可以解释我的使用场景:
- 实时高性能请求-响应型应用程序
- 应用程序被划分为不同的层,如 UI、业务逻辑和数据库——每一层都在一组计算机上工作
- 这些层应支持负载平衡和故障转移功能,最好对其他交互层透明。
- 未来与各种语言的互操作性将是一个额外的可取特性
- 这些层将驻留在我的组织内部,即我目前不打算与外部组织服务交互。
我尝试了 RMI,但缺点是 Java 锁定并且不支持负载平衡和故障转移功能。我考虑过 JMS,但意识到即使负载平衡、MOM 的故障转移等功能非常诱人,对我来说,它似乎并不适合实时请求-响应类型的应用程序(如果你认为我错了,请纠正我)。
请向我推荐最适合此用例场景的流行、合适的框架。
更新:
探索 SOA,我遇到了两个突出的选项 SOAP 和 REST。正如我所提到的,我必须在我的应用程序的模块/层之间内部使用的通信方法方面做出选择。在寻找快速请求响应和高可扩展性、负载平衡、故障转移方案时,它们之间是否有明显/流行的选择?我不打算将这篇文章转换为 REST 与 SOAP 的讨论,但如果快速 lite 比较在这种情况下会有所帮助。如果我缺少的 SOA 中有任何第三种选择,我也愿意接受它。来自现实世界部署场景的一些示例也将有所帮助。