如何建设高可用系统

2017-5-26 孤独求学人 架构

面试的时候经常会问一个问题,如何建设高可用系统?大家可以一起探讨下。

“高可用性”(High Availability)通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。以下是高可用系统的设计建议:

设计建议

  • 减少单点 – 去单点首先要识别整个系统所有主链路的单点,如机房(同城异地双机房),应用服务器,DNS服务器,SFTP服务器,LBS,缓存服务器,数据库,消息服务器,代理服务器和专线等,如系统通过专线调用对方服务,需要考虑同时拉联通和电信的专线,联通或电信的专线还是有一定概率会出现问题的,但是同时出问题的概率会小非常多。优先使用软负载,使用硬负载兜底。
  • 减少依赖 – 减少DNS依赖,减少远程服务依赖,DNS依赖可以尝试设置本地host,用工具给所有服务器推送最新的域名映射关系,通过本地缓存或近端服务减少RPC调用。
  • 限制循环 – 避免无限死循环,导致CPU利用率百分百,可以设置for循环的最大循环次数,如最大循环1000次。

阅读全文>>

标签: High Availability 高可用系统

评论(0) 浏览(1080)

Powered by emlog 豫ICP备15004178号-1