Tomcat应用陈设,是否要一个萝卜一个坑?
常常有读者在靠山向我提问,一些本性化的题目就直接在靠山回覆了。也有些较量广泛的题目,好比下面这个: 本身的项目有多个应用,这些应用是要陈设到统一个 Tomcat 里好,照旧多个应用别离陈设到差异的 Tomcat 里,每个内里只陈设一个应用好呢? 最近在 Tomcat 官方的「邮件组」里也看到相同的题目,也许这个题目不分疆土。一些 Tomcat 的 commiter 也给出了本身的观点,各人观点都纷歧样,正好咱们一路来看看,两种环境对较量,到底奈何行使得当。 起首我们本身先想一下,假如多个应用陈设到一个 Tomcat 实例中,是非别离有哪些呢? 上风 : 安装打点、监控都利便,只必要安装一个 Tomcat,全部的操纵都指向统一个实例即可。 劣势: 多个应用共用 Tomcat 的内存,轻易相互影响。假若有一个应用占用堆太多,频仍的 GC 也会使其他应用随着停息。 每个 Tomcat 实例陈设一个应用呢? 上风 : - 多个应用之间 Tomcat 的内存相互断绝,相互之间无影响。一个应用crash,频仍 GC,都只影响其本身,影响面缩小。 劣势: 对比一个实例,安装打点、监控都较繁琐一些。可以通过安装一个实例,配置差异的CATALINA_HOME来简化一些操纵。 邮件组里的题目描写比上面的更具体一些。而且摆列了本身以为的是非。 邮件内容较多,我选个中要害的几段翻译如下: 个中描写意见分歧在开拓职员和运维职员之间 运维以为一个 Tomcat 陈设多个应用,缘故起因如下:
开拓职员以为应该一个 Tomcat里只陈设一个应用,来由如下:
邮件组里的回覆,大部门倾向于一个应用陈设一个Tomcat: 这样观念上最简朴,应用之间不会相互影响。同时呢,可以行使差异的JVM,差异的情形,差异的库,不会相互限定,也不消测试这些应用间的兼容性。 多个应用部在一路,假如都是占用内存较量大的,好比占用Heap 较多,假如遇上一次Full GC,就会导致停息时刻较长,这样多个应用的线程都受影响。 Tomcat 的焦点开拓职员 Mark 以为这两种环境应该视环境而定。假如你的一个应用必要出格多的资源,这样只管一个应用陈设到一个Tomcat中以满意企业的要求。不然,倾向于多个应用共用统一个 Tomcat ,这样利便打点和运维。 我小我私人倾向于出产情形每个应用独立陈设,每个应用独立监控,资源打点也相互断绝。在开拓的时辰,可以只配置一个 Tomcat 实例,陈设多个应用到一个Tomct也更快捷,没那么多本性化要求,不必要再设置一堆的端口。虽然,假如线上也都是各类小应用,没什么要求,陈设到一路也OK。 总结下,出产上假如应用小,嫌贫困,出题目可接管,都放到一路也没题目。假如占用资源较量大,必要不变性等,只管独立陈设,开拓情形就怎么利便怎么来。 【编辑保举】
点赞 0 (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |