Spring Boot 我应该在单独的机器上安装JMS代理吗?

fcipmucu  于 2023-10-16  发布在  Spring
关注(0)|答案(3)|浏览(108)

我正在使用Sping Boot 邮件和JMS代理来构建一个电子邮件系统。我跟踪了this example project。因为我们的应用程序QPS很小,一个服务器就足以处理请求。在示例项目中,代理、发送方和接收方都在同一台服务器上。这对于小型应用程序来说是一个好的做法吗?或者我应该把经纪人,发送者和接收者放在三个不同的机器上?

0md85ypi

0md85ypi1#

看情况...
应用程序的大小无关紧要。它更多地取决于您对可用性、可扩展性和数据安全性的要求。
如果你把所有东西都放在同一台机器上,你就只有一个风险点。如果机器崩溃,你会失去那台机器上的一切。但是这个设置是最简单的一个(也是为了维护),服务器崩溃的可能性很低。现代化的机器能承受很大的负荷.
如果你有一个非常高的负载和/或保证交付的要求,你应该使用多个系统,生产者将消息发送到ActiveMQ集群(也分布在多台机器上)。消费者,也不止一台机器。还可以使用负载平衡器连接/连接到机器。
您也可以在两个示例设置(简单和复杂)的中间进行设置。
如果你能够复制所有的消息(在你的例子中是电子邮件),并且负载不是很高,我会建议你把它简单地放在同一台机器上。

fhg3lkii

fhg3lkii2#

简短的回答是,这取决于。最长的答案是衡量它。使用小的申请标准是有缺陷的。如果您的服务器拥有应用程序和消息队列代理所需的所有资源,并且不影响最终用户的性能,则可以在同一服务器上同时使用这两种服务器。
我建议您运行性能测试来测试您的标准,然后决定您的目标环境设置。

enyaitl3

enyaitl33#

最简单的方法就是把所有的东西都放在同一个盒子里。如果这个盒子有足够的CPU和磁盘空间,为什么不呢?一个(性能)优势是不需要通过网络。
如果您关心容错,请在第二台机器上复制整个设置。

相关问题