我发现嵌入式tomcat,我觉得很方便!
虽然过去似乎我们使用了非嵌入式Tomcat 频繁,(有更多关于非嵌入式Tomcat的可用教程和书籍),但非嵌入式Tomcat的使用仍在继续。
非嵌入式Tomcat的优势是什么?为什么不是每个人都一直使用嵌入式Tomcat?
此外:
- 嵌入式Tomcat文档和站点在哪里? 我期待嵌入tomcat文件和网站,但找不到它。
- 源代码中嵌入式Tomcat和非嵌入式Tomcat之间有什么区别吗?
醇>
答案 0 :(得分:1)
每个人都有不同的要求和用例。对于您的用例,嵌入式使用显然看起来很理想。对于每种情况都不是这样。
运行嵌入式Tomcat就像转动" servlet容器"从内到外,而不是托管应用程序的容器(Tomcat),而应用程序托管容器。如果您喜欢这种隐喻,那就是控制反转。
使用嵌入式Tomcat要求应用程序针对特定于Tomcat的API进行编写。这可能会也可能不会增加您或您的应用程序的复杂性。
基于服务的程序(如Tomcat)通常会监视它们以确保它们保持运行并在不继续运行时自动重新启动。如果切换到嵌入式策略,使用现有工具的机会就会减少:您的应用程序必须监控嵌入式容器的运行状况,并在必要时采取措施。
使用嵌入式容器时,资源管理可能会出现问题。如果你有十几个应该全部协同工作的Web应用程序,让一个容器实例托管这些单独的应用程序更有意义,还是应该将它们捆绑到一个带有嵌入式容器实例的单个程序中?如果您只想升级一个应用程序怎么办?您只需更新一个组件就需要重建整个软件包。或者您应该将它们作为具有自己的嵌入式容器的单独应用程序进行部署?这通常意味着多个JVM,这意味着更高的内存需求,端口冲突和其他类似的资源相关问题。
嵌入式和非嵌入式Tomcat都有许多有效的用例。幸运的是,你可以选择。
嵌入式Tomcat文档和站点在哪里?我期待嵌入tomcat文件和网站,但找不到它。
它主要位于Tomcat javadoc。
源代码中嵌入式Tomcat和非嵌入式Tomcat之间有什么区别吗?
它是同一种产品。