嵌入式vs独立Tomcat(HTTP)服务器

时间:2013-12-23 02:47:15

标签: tomcat jetty embedded-jetty httpserver embedded-tomcat-7

我正在开发一个新项目,该项目将是一个带有前端UI和后端Web服务的Web应用程序。我开始研究像Tomcat / Jetty那样使用哪些服务器......我还注意到这些HTTP服务器有一个嵌入式版本。我不明白何时对独立版本使用嵌入式版本。我尝试使用谷歌搜索,但无法找到令人信服的答案,所以如果有人向我解释嵌入式服务器的用例,我将不胜感激。提前谢谢。

2 个答案:

答案 0 :(得分:17)

当您将应用程序视为操作系统进程时,嵌入式服务器非常有用,它将以java -jar youapp.jar之类的方式启动。在这种情况下,不需要使用给定的应用服务器(例如Tomcat)预先设置该框。此类应用程序可由最终用户运行,无需额外安装和配置应用服务器。

像詹金斯这样的应用程序可以从这种包装中获益匪浅。另一种情况是在像Heroku这样的云服务上进行部署。您将应用服务器包装在jar中,无需在此类云盒上安装服务器。

这里基本上是一个Web应用程序在给定的嵌入式服务器上运行。但是,如果您希望安装两个网络应用程序,请说两个上下文${root}/app1 ${root}/app2,那么嵌入式应用服务器对您来说不是一个好选择。

答案 1 :(得分:11)

我已将embedded-jetty用于网络应用。我使用的原因是我不想为一个App设置单独的Web服务器。所以我创建了一个简单的java程序,其中嵌入了jetty并通过java代码配置所有服务器属性。现在我可以在没有安装Web服务器的任何机器上运行该程序,它将充当在服务器中运行的Web应用程序。我可以将任何端口和程序中的多对多上下文/ servlet映射关联起来。