精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2011-12-09
由于jvm堆内存回收时间的限制,不敢为堆分配大内存,每个jvm分配了4G内存(新生代1.5G并行收集,平均每次回收0.0303220 secs,每1.5分钟回收一次,旧生代并发收集,平均每次回收0.6230031secs,每5个小时回收一次),每台linux使用了8个jvm。每个jvm上使用一个tomcat。每个tomcat上就运行一个webapp,每个tomcat都是相同的应用。每台linux上有一个apache,动态请求负载均衡到这8个tomcat上。使用F5把请求分发到这两个主机上。 session和缓存信息存放在第3台linux主机上的memcached上。 系统一直运行的比较好,但就是每次发布程序的时候比较痛苦。现在每个tomcat的跑的应用存放到一个目录,例如:tomcat1对应的应用目录是/app1,tomcat2=/app2,以此类推,而且还是两台主机,为了可以做到一键发布写了很多的shell脚本。 现在我想可不可以这样,两台主机接一个共享存储,每个主机映射存储上的相同目录,把webapp就部署到这个目录下,所有的tomcat都指向这个目录。这样我只要把程序发布到这个目录下,然后通过脚本重启16个tomcat就可以了。不知大家有没有这么干过的,行不行的通,因为要16个tomcat读取一个webapp目录,有没有什么不良影响。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-12-09
设置tomcat的webapp目录为同一个目录即可。
|
|
返回顶楼 | |
发表时间:2011-12-09
楼主能不能简单说一下,集群开发的技巧
|
|
返回顶楼 | |
发表时间:2011-12-12
我们的项目是用IBM的小机和weblogic做的负载均衡,每次只发布一一个war包就可以了,听系统集成的说,好像是做的磁盘共享,两台机器共享一个磁盘,具体的也不懂....
|
|
返回顶楼 | |
发表时间:2011-12-13
同一台服务器可以设置tomcat的webapp目录指向同一个目录即可。
不同的服务器需要映射网络驱动器然后指向同一个目录 |
|
返回顶楼 | |
发表时间:2011-12-13
我们的系统就这么弄呢,暂时没发现什么影响。就是用到了quarz框架,需要数据库同步一下。
|
|
返回顶楼 | |
发表时间:2011-12-13
如果使用磁盘阵列柜,可以实现。我们以前3台 apache + 2台 webspere (全部aix操作系统) 连到一个磁盘阵列柜。
|
|
返回顶楼 | |
发表时间:2011-12-13
其实楼主也只是两台机器接受前端请求,同一台机器请求指向同一个目录就行了,也只要在两台机器上发布,还不需要搞共享存储。
|
|
返回顶楼 | |
发表时间:2011-12-13
surfire91 写道 其实楼主也只是两台机器接受前端请求,同一台机器请求指向同一个目录就行了,也只要在两台机器上发布,还不需要搞共享存储。
说的有道理,其实系统的访问量不是很大,“同一台机器请求指向同一个目录就行了”这个你用过吗? |
|
返回顶楼 | |
发表时间:2011-12-13
如果不考虑备份容灾冗余之类的问题,单纯用一个目录没任何问题!
|
|
返回顶楼 | |