大型网站如何防止崩溃,解决高并发带来的问题( 四 )
三 、消息队列 (解耦+削峰+异步)通过异步处理提高系统性能 , 降低系统耦合性
在不使用消息队列服务器的时候 , 用户的请求数据直接写入数据库 , 在高并发的情况下数据库压力剧增 , 使得响应速度变慢 。 但是在使用消息队列之后 , 用户的请求数据发送给消息队列之后立即 返回 , 再由消息队列的消费者进程从消息队列中获取数据 , 异步写入数据库 。 由于消息队列服务器处理速度快于数据库(消息队列也比数据库有更好的伸缩性) , 因此响应速度得到大幅改善 。
通过使用消息中间件对Dubbo服务间的调用进行解耦 消息中间件可利用高效可靠的消息传递机制进行平台无关的数据交流 , 并基于数据通信来进行分布式系统的集成 。 通过提供消息传递和消息排队模型 , 可以在分布式环境下扩展进程间的通信 。 通过消息中间件 , 应用程序或组件之间可以进行可靠的异步通讯 , 从而降低系统之间的耦合度 , 提高系统的可扩展性和可用性 。
四 、采用分布式开发 (不同的服务部署在不同的机器节点上 , 并且一个服务也可以部署在多台机器上 , 然后利用 Nginx 负载均衡访问 。 这样就解决了单点部署(All In)的缺点 , 大大提高的系统并发量)
推荐阅读
- 小鱼人|如何在新赛季稳定上分?善于抓失误的小鱼人,值得认真练上一波
- 阴阳师|阴阳师SR川猿强度如何 是否值得抽卡 改变斗技环境 大佬的新玩具
- 手机游戏|梦幻西游手游:活力如何换金币 一切都已给出 就看你的选择
- 华佗|三国杀:两位\奶爸\,朱治与华佗比,强度如何呢?
- 亲朋上分|《亲朋上分》266391亲朋下分亲朋上下分永劫无间崔三娘技能介绍 崔三娘如何获得更多技能
- 单机|游戏推荐:当前八款最热门的大型单机,都是不容错过的精品游戏
- s6|金铲铲之战:S6双城传说如何才能快速上手?基础知识很关键
- |冰雪传奇:平民玩家四转后如何打金
- 穿越火线|CF:传说武器再度上新,那王者、炫金该如何发展?
- 打野|打野已经被削到几乎不能再削了,到底如何平衡打野位置?