使用应用服务器集群是解决高并发的常用手段,当一台应用服务器的处理能力不足时,不要企图更换配置更高的服务器,对于大型网站而言,不管多么强大的服务器,都满足不了持续增长的业务需求,在这种情况下,更好的做法是增加一台应用服务器去分担原来服务器的压力。因为这样使得系统的可扩展和可伸缩性更好。
使用应用服务器集群
架构如下图:
总结:
使用应用服务器集群后,应用服务器这一层的高并发问题就解决了,但是高并发的压力就转移到数据库了,所以后面要继续优化架构去解决数据库的压力问题,这个阶段应用层理论上并发数是不受限制的,因为随时可以扩充应用服务器。
同时使用应用服务器集群,会带来一个典型的问题:Session会话问题,如何保证接下来的每次请求都落在同一个服务器上。常用的有两种解决方案:
1,固定Nginx的路由,一般使用Hash源地址散列法,将来自同一IP的请求,都转发到相同服务器处理。参考:http://www.cnblogs.com/itfly8/p/5043452.html
2,Session集中存储,使用redis实现session共享。参考:http://www.cnblogs.com/yanweidie/p/4719692.html