高并发系统的定义:
需要处理的系统瓶颈问题:
我们请求调用数据库的时候,都会先获取数据的连接,然后依靠这个连接来查询数据,搞完收工,最后关闭连接,释放资源。如果我们不用数据库连接池的话,每次执行SQL,都要创建和销毁,这样就使每次查询请求变得更慢了。因此要使用数据库连接池,HTTP连接池,Redis连接池等等都是一样的道理。
读从库,写主库,主从赋值。
这里包括构建多级缓存
ES扩容方便,天然支持高并发。当数据量大的时候,不用动不动就加机器扩容,分库等等,可用考虑用ES来支持简单的查询搜索,统计类的操作。
保护系统的一种机制。当前互联网一般都是分布式部署的,而分布式系统中偶尔会出现某个基础服务不可用,最终导致整个系统不可用的情况,这种现象叫做服务雪崩。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZxKSwW1J-1674050535303)(D:\A\图片\板书\服务雪崩.excalidraw.png)]
如果服务C出现延迟,比如是因为慢SQL查询,那将导致B也会延迟,从而A的延迟越来越多。堵住A请求会消耗系统的线程,IO,CPU等资源。当请求A的服务越来越多,占用的计算机资源也就越多,最终会导致系统瓶颈出现,造成其他的请求同样不可用,最后导致业务崩溃,这就叫服务雪崩。
限流算法
限流组件
跟消息队列有关系
扩容:增加从库,提升配置
切流量:服务多机房部署
上一篇:Linux扫盲第2次笔记
下一篇:从永远到永远-勇次(ユウジ)