最近在忙后台的搭建,用户量在10W左右,时间比较赶,决定采用负载均衡、服务器集群的方式。原理图如下:
当然这只是一个简单的第一代版本。完整的架构还包括, 负载均衡集群、数据库集群、业务服务器与 数据库之间还有一层缓存、负载均衡与业务服务器之间有个中间层, 以及覆盖整个系统的日志管理、权限管理、容灾管理、安全管理等等。系统的复杂度是随着用户量而动态改变的。在目前先采取 一台负载均衡服务器 + 两台业务服务器 + 一台数据库服务器的架构。
准备条件:
负载均衡服务器/业务服务器 : 8核 16G 50M ubuntu16.04
数据库服务器: 16核 16G 50M ubuntu16.04
跨多个应用程序实例的负载平衡是优化资源利用率、最大化吞吐量、减少延迟和确保容错配置的常用技术。
可以使用nginx作为一个非常有效的HTTP负载平衡器来将流量分布到多个应用程序服务器,并通过nginx改进web应用程序的性能、可伸缩性和可靠性。如下图所示: