beardog 发表于 2015-9-6 16:07:10

tomcat在线更新

大家好
      公司用tomcat作为WEB服务器,目前每次更新网站,都要停tomcat,上传WAR包,或者更新文件后,再重启TOMCATI。只能夜间操作。如果我有多台TOMCAT做负载均衡,有什么办法可以在线更新网站,又不影响网站访问? 实现我白天就可以更新网站,也不影响业务。以前做EXCHANGE集群的时候,有主从的概念,先更新从服务器,然后切换主从,然后再更新以前的主。tomcati有什么类似的机制吗?

sky 发表于 2015-9-6 16:16:59

用什么软件做的负载均衡?先关闭掉其中一台负载节点更新后切到新节点关闭旧节点,所有更新完毕后在启动,这样不就可以不影响业务了吗。

beardog 发表于 2015-9-6 16:29:59

负载均衡是阿里云的SLB,三台TOMCAT做后端服务器。我理解你的想法,可以先把A从SLB中移除,更新A的内容,B以此类推。但是到了C,最后一台服务器的时候,如果从SLB移除,这个时候业务就断了。如果不移除,又不能做更新。怎么办?这时候,如果把更新完成的A和B加入SLB集群,又会有不同步的问题。

sky 发表于 2015-9-6 16:32:38

三台服务器文件用什么做的同步?

sky 发表于 2015-9-6 16:34:07

一般情况下web程序和数据文件最好分离,这样更新web程序的时候会很方便

sky 发表于 2015-9-6 16:34:39

文件存储调用共享存储

beardog 发表于 2015-9-6 16:35:00

目前是手动同步,没有自动同步机制。现在的问题不是同步,假设有自动同步。也不能实现在线更新。因为更新后需要测试,然后才能上线。

beardog 发表于 2015-9-6 16:37:12

一般情况下web程序和数据文件最好分离,这样更新web程序的时候会很方便 具体解释一下? 我这里指的更新,不是更新TOMCAT的版本,是指更新网站内容,我理解是你说的数据文件的部分,对吗?

sky 发表于 2015-9-6 16:39:57

是的,数据文件最好不要每个web下面都是主

beardog 发表于 2015-9-6 16:41:49

对,比如两个TOMCAT,一个是主,一个是从,就能解决这个问题。那怎么能让两个TOMCATI一个是主,一个是从,而且还能自动或者手动切换主从呢?这个切换时间通常要非常短,才能保证业务不断。

sky 发表于 2015-9-6 16:52:35

我的意思是数据文件都读取共享存储,web程序都是一样的那个坏了都不会影响业务也不会丢失数据。

sunzhongyu 发表于 2015-10-7 14:47:42

飘过
页: [1]
查看完整版本: tomcat在线更新