设计一个高并发系统

高并发,很多时候死在了mysql上面,毕竟mysql的qps比较低,特别是业务数据比较复杂的时候

  • 系统拆分
  • 缓存
  • 消息队列
  • 分库分表
  • 读写分离
  • 搜索引擎

1.系统拆分

将一个系统根据一定的原则划分为几个子系统,划分的粒度根据业务场景,可以参考微服务的治理方式。子系统的数据库独立,单个mysql 所承受的qps

2.缓存

读多写少,redis 单机都能轻松支持几万的并发

3.消息队列

削峰填谷神器,kafka ,单机都能轻松支持几万的并发,消费者消费的时候,控制在 mysql 承载范围之内。

4.分库分表

大库拆成多个小库,大表拆成小表,提高mysql的查询修改的效率,从而提高整个系统的效率

5.读写分离

读多写少,增加从库的数量。

6.搜索引擎

把一些搜索的功能切换至搜索引擎

 

做高并发要远远比上面提到的点要复杂几十倍到上百倍

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值