如何才能提高系统的并发能力?

为了提高系统的并发访问能力,突破并发访问的瓶颈,首先的web应用服务器可以横向扩展,增加应用服务器的集群量。

如果在应用服务器扩展的情况下,还不能够有效缓解,我们会查询并发访问的性能瓶颈在哪里?

是数据库瓶颈还是文件io瓶颈或者是网络带宽瓶颈?

如果是数据库瓶颈,我们会进一步的检测是读瓶颈还是写瓶颈。

如果是读密集型,而写很少,我们会采用数据库读写分离技术。

适当增加读结点的数据库的数量,然后再来观察系统的运行情况。

如果是写密集型,我们可以采用分表分库的技术,尽量让写均匀的分部在不同的数据库上,降低单台数据库的写入压力。

当然,如果并发还是过大,我们会考虑使用缓存层来保护数据库。

数据库的性能瓶颈可能是多种多样的,不可能一种方案就会解决问题。

我们需要根据实际的情况,精准的定位问题的所在,而不能盲目地去做方案。

如果已经上述的优化,性能还是没有得到有效的提升,我们可以查看下是否是数据库设计有问题?

索引是否设置得当?

sql语句或者java程序代码是否有问题?

所以,我们需要通过专业的检测工具,性能分析工具来独立隔离的分析每一个可能出问题的点。

然后给出具体的处理办法。

当然了,影响并发的还有文件iO瓶颈,如果我们是一个网盘项目,io密集型项目。

那么,我们的文件服务器集群之间的网卡需要升级

文件服务器硬盘是否需要提升?

或者文件服务器集群是否需要增加机器?

网络带宽也是限制并发的一个因素,是否需要升级本网站的网络带宽?

对于超大型的全国性网站,我们还可以购买CDN服务,将静态资源分发到全国的各个节点来降低网站系统的并发访问量。

当我们这样去分析,去处理,我相信,一定可以很快的解决并发访问的性能瓶颈。

本站所有文章均由网友分享,仅用于参考学习用,请勿直接转载,如有侵权,请联系网站客服删除相关文章。若由于商用引起版权纠纷,一切责任均由使用者承担
极客文库 » 如何才能提高系统的并发能力?

Leave a Reply

欢迎加入「极客文库」,成为原创作者从这里开始!

立即加入 了解更多