Tomcat 和应用程序逻辑在双服务器系统(数据库服务器或 Web 服务器)上位于哪里?

Tomcat 和应用程序逻辑在双服务器系统(数据库服务器或 Web 服务器)上位于哪里?

我有一个依赖于 BlazeDS 和 Oracle Application Express 的应用程序,它们都需要使用 Tomcat 或同等版本。我有以下两台 Linux 服务器:

(1)Oracle数据库11G

(2)Apache Web服务器

此外,我的应用程序需要 Java 和 C 程序主要用于大量的数字运算。

我的第一个问题是将 Java 和 C 应用程序逻辑放在哪个服务器上?应该是数据库服务器还是 Web 服务器?或者,这取决于……?

我的第二个问题是将 Tomcat 放在哪个服务器上(它总是在 Web 服务器上运行,还是取决于第一个问题的答案)?

如果有多种可能性,将不胜感激其优缺点。

答案1

Tomcat 可以运行在任意一台服务器上(或者完全不同的服务器上)。我倾向于将 Tomcat 和 C 代码放在 Web 服务器上,并将所有内存和 CPU 分配给数据库服务器。如果 Java 和 C 代码是瓶颈,则为 Tomcat 添加第三台服务器。除非别无选择,否则我不喜欢将数据库服务器用作多功能服务器。只要 Web 服务器可以处理传入流量和数字运算,就让它成为“应用程序”服务器。

答案2

它通常运行在第三个应用服务器上。

对于 Tomcat,在典型的企业环境中,它将是:Apache 反向代理 -> Tomcat 应用程序服务器 <-> 数据库服务器

如果您是轻量级的并且不需要在 Web 层上进行很多限制,那么您始终可以直接使用 Tomcat 上的 HTTP 或 HTTPS 连接器(使用 APR 或内置的 Coyote 连接器)进行前端连接。

答案3

我反对把任何不必要的东西放在数据库服务器上。除非你还有另一台服务器,否则就把它放在网络服务器上。

相关内容