什么是高并发?
如果你要考虑数据一致性或者线程安全的问题, 能承载 2 个线程就是解决了高并发的问题。
如果你要考虑服务承载量的问题, 只要你的服务能水平扩容, 就是解决了高并发的问题。
一些建议:
- MySQL 的 TPS 就按 5000 算,每秒超过 5000 的请求,直接用 MySQL 肯定不行。
- 单机 Redis 的 QPS 可以到 100K,把一些数据/缓存,存到 Redis,能有效提高并发。
- 利用消息队列实现削峰,实现生产与消费的解耦。
- 保证处理逻辑可以并行,可以扩展,谨慎使用锁。
- 尽量将服务做成无状态可扩展,把状态扔给 Redis 或者其他更高效的存储。
- 对于频繁访问的数据一定要做缓存,然后去解决缓存的雪崩,穿透,失效等问题。
以上内容来自网络,非原创。
评论已关闭