【问题标题】:A scalable and high-performance Java EE solution?可扩展的高性能 Java EE 解决方案?
【发布时间】:2011-08-09 05:51:54
【问题描述】:

假设我们想要设计一个 Java EE Web 应用程序系统,该系统期望在响应中表现出高性能和效率,因为太多的用户可能会向服务发送请求。

我正在考虑将应用程序实例部署到不同的应用程序服务器(JBoss、Tomcat 等)上。所以我们有了“应用服务器集群”的概念。而这个应用程序需要在不同的引擎上处理一些数据,这些引擎又会在不同的服务器上进行处理。

所以我们也有“引擎服务器集群”的概念。假设我们要从一个点访问应用程序,例如从一个简单的 URL。如何将此 URL 与应用服务器集群相关联?应该实施什么样的策略来设计这样一个由应用服务器和一些其他需要尽可能高效通信的服务器组成的系统?

欢迎任何解决方案和建议。如果您处理过与此类似的现实世界问题,您能帮我吗?也欢迎任何关于教程、电子书、示例的建议。

【问题讨论】:

  • 如果你逐点重写你的问题会很好。写下你的期望,然后你认为你应该做什么,最后,提出问题。一个不太可读的问题是一个不太受关注的问题。
  • 使用 Glassfish - 鱼是可扩展的 :-)
  • @Stephen C,JBoss 也是!

标签: java tomcat jakarta-ee cluster-computing


【解决方案1】:

回答(部分)您的问题:

  • 如何将此 URL 与应用服务器集群相关联? 在您的 Web 服务器前使用负载均衡器 - 最好使用硬件(更快),否则您可以使用普通商品 PC/硬件(例如 haproxy)
  • 应该实施什么样的策略来设计这样一个由应用服务器和其他一些需要尽可能高效通信的服务器组成的系统?取决于您交换的数据类型和方式。如果您不需要同步调用,那么您可能可以查看消息传递——JMS、ActiveMQ 或 RabbitMQ;所以向后端服务器发送一条消息并让另一个线程等待回复,当回复到达时将其拾取并发送。如果您需要同步通信,有很多选择 - 从简单的基于套接字的通信到 RMI、SOAP 等。值得考虑两层之间交换的数据量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-18
    • 1970-01-01
    • 2017-04-27
    • 1970-01-01
    相关资源
    最近更新 更多