高并发解决思路
其实,高并发并不神秘,说白了就是想办法搞定两个指标:提升QPS(Query Per Second,每秒查询率 ,每秒的响应请求数,也即是最大吞吐能力)、降低RT(响应时间,系统对请求作出响应的时间(一次请求耗时))。并且同时保证数据的正确性、系统的可用性就OK了。
1、网站并发量上来了?啥都不要管,先扩容,堆机器。机器多了自然需要集群技术、负载均衡了。(提升QPS)
2、机器多了也扛不住了?服务拆分,把集中式部署改成分布式部署。(提升QPS)
3、分布式了还是扛不住?先做降级,再做限流。(保证系统可用性)
4、数据库扛不住了?上分布式缓存。(降低RT)
5、缓存上了之后,数据还是扛不住?那就考虑读写分离、分库分表、数据库容灾。
6、系统间同步交互有延迟?解耦,上异步方案,采用消息中间件。(降低RT)
7、高并发导致了脏数据?上分布式锁。(保证数据正确性)
8、高并发导致了数据不一致?上分布式事务。(保证数据正确性)