本文先了解一下并发以及高并发。
并发
同时拥有两个或者多个 线程 ,如果程序在单核处理器上运行,多个线程将交替地换入或者换出内存,这些线路是同时“存在”的,每个线程都处于执行过程中的某个状态。如果运行在 多核处理器 上, 此时,程序中的每个线程都将分配到一个处理器核上,因此可以同时运行。
高并发
高并发(High Concurrency)是互联网 分布式系统 架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够 同时并行处理 很多请求。
并发谈的是多个线程操作相同的资源,关注点在于保证 线程安全 ,合理使用资源。
高并发更多的是指提高程序性能。在系统运行过程中,短时间内遇到大量的请求的情况,像在12306抢票,要保证服务能够同时处理很多请求、大量的数据库访问等等。
并发的知识体系
线程安全 线程封闭 线程高度 同步容器 并发容器 AQS J.U.C ……
高并发的解决思路与手段
扩容
缓存
队列
拆分
服务降级与熔断
数据库切库
分库分表
……