App的服务器,目前用的是微软的Azure,产品马上要上线了,想提高服务端的可用性。目前的配置如下
硬件:两台主机,一台Django应用程序服务器,一台数据库服务器
软件:负载均衡用的Nginx,消息队列RabbitMQ+Celery,它们与Django应用程序服务器共用一台主机。
提高系统可用性,我能想到的是使用集群。
目前的想法是,增加两台主机,一台放Nginx和MQ,另一台用做应用程序服务器,这样在一定程序上提高应用程序服务器的可用性。后台代码更新时,可以先更新一台应用程序服务器,成功后,再更新另一台,这样更新过程中不会中断服务。对于数据库,做主备,主备数据库应该放在不同的主机上吗?另外,除了这些,提高系统的可用性还有哪些措施呢?