好久没有来更新了,今天来分享下Rhapsody高可用的架构模式吧,引擎自身并不具备高可用(官方文档中,采用共享配置文件磁盘实现,个人认为不是真正意思上的高可用),如果需要得借用第三方应用(有F5设备的土豪单位请忽略),本文中采用Nginx作为负载均衡软件来实现Rhapsody的高可用
总结了下 主要有以下3种架构:
1.单体的Nginx用以负载,只需一台Nginx服务器即可,Nginx配置中配置rhapsody服务的upstream即可 例如:
upstream rhapsody_pool{ server 192.168.0.101:8096 weight=2 max_fails=2 fail_timeout=10s; server 192.168.0.120:8096 weight=2 max_fails=2 fail_timeout=10s; }
server{ listen 8096; server_name localhost; location /{ proxy_pass http://rhapsody_pool; } }
2.采用分布式的Nginx,防止Nginx服务因宕机导致服务瘫痪,此模式与第1种不同的是 多了Nginx服务器,更有效的保障了Nginx服务的稳定性,Nginx服务器之间采用keepalived来保持通讯,对外用户只需访问虚拟IP即可
3.分布式Nginx,分布式rhapsody应用服务器,此模式与第2种不同的是 Nginx服务器之间连的是不同的应用服务器
总结:此前单位用的是第2种模式,应用服务器2台,2台Nginx服务器。应用服务器之间的同步可以通过其中一台配置的导出,然后导入到其他应用服务器实现,应用服务器越多,同步越麻烦,查询日志也相对麻烦
关于Nginx的安装配置 以及keepalived的配置 本文中就不展开了,大家可以网上找找资料
|