怎样提高系统的可用性?

发布于 2022-08-31 21:03:53 字数 350 浏览 35 评论 0

App的服务器,目前用的是微软的Azure,产品马上要上线了,想提高服务端的可用性。目前的配置如下
硬件:两台主机,一台Django应用程序服务器,一台数据库服务器
软件:负载均衡用的Nginx,消息队列RabbitMQ+Celery,它们与Django应用程序服务器共用一台主机

提高系统可用性,我能想到的是使用集群。
目前的想法是,增加两台主机,一台放Nginx和MQ,另一台用做应用程序服务器,这样在一定程序上提高应用程序服务器的可用性。后台代码更新时,可以先更新一台应用程序服务器,成功后,再更新另一台,这样更新过程中不会中断服务。对于数据库,做主备,主备数据库应该放在不同的主机上吗?另外,除了这些,提高系统的可用性还有哪些措施呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

并安 2022-09-07 21:03:53

一般思路如下:
1. 是否可以水平扩展, 可以创建集群. 如web的 基本都是无状态的 可以水平扩容搞个nginx就可以实现集群(其它的lvs haproxy都可以考虑).
2. 是否有接入单点, 可以考虑心跳与轮询的方式. 如lvs haproxy 之间可以做心跳检测,自动容灾.简单点的DNS轮询 ,zookeep等.
3. 是否有数据单点, 可以采用开源的一些解决方案,最简单的就是保证数据安全,多份部署,冷备.

现在设计服务都要考虑分布式的一个需求,之后迁移云平台都是非常简单的.

一江春梦 2022-09-07 21:03:53

简单的说就是冗余

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文