apache tomcat上的Java Web应用程序

时间:2012-06-25 19:59:44

标签: java apache tomcat vaadin

我正在使用Vaadin框架在java中开发Web应用程序。

我在Apache Tomcat上运行该应用程序。我想问的是,如果我在Apache Tomcat上运行该应用程序并在两台不同的计算机上使用两个不同的浏览器访问同一个应用程序,那么该应用程序是否在Tomcat上有两个实例,或者它是否有一个实例?我已经搜索过了,但未能找到满意的答案。

谢谢!

2 个答案:

答案 0 :(得分:3)

如果您在Tomcat中运行Web应用程序,您将只有一个Tomcat实例,它将托管您的应用程序。这个单一的Tomcat实例(以及您的Web应用程序)将能够从许多不同的计算机中获得许多不同的浏览器请求。这正是Web服务器的目的:处理来自许多不同客户端的请求。

答案 1 :(得分:1)

Tomcat的一个实例,以及您的Vaadin应用程序的许多实例。

要访问您的Vaadin应用,用户会将其网络浏览器指向您的Vaadin应用的网址。必须已运行Tomcat才能接受来自Web浏览器的请求。当已经运行的Tomcat实例收到该请求时,Tomcat会启动一个新线程。在该线程中,将创建并运行Vaadin“Application”类的子类的新实例。

因此,如果您有5个同时运行Vaadin应用程序的用户,您将运行一个Tomcat实例。而且Tomcat实例将运行5个会话,每个会话都在自己的线程中运行自己的Vaadin“Application”子类实例。

您应用中标记为“静态”的任何内容都适用于您应用的所有5个实例,而未标记为“静态”的任何内容仅适用于您应用的单个实例(单个用户)。