【未来虫教育】线程隔离浅析

【未来虫教育】线程隔离浅析

前言

随着微服务的流行,单体应用被拆分成一个个独立的微进程,可能一个简单的请求,需要多个微服务共同处理,这样其实是增加了出错的概率,所以如何保证在单个微服务出现问题的时候,对整个系统的负面影响降到最低,这就需要用到我们今天要介绍的线程隔离。

线程模型

在介绍线程隔离之前,我们先了解一下主流容器,框架的线程模型,因为微服务是一个个独立的进程,之间的调用其实就是走网络 io,网络 io 的处理容器如 tomcat,通信框架如 netty,微服务框架如 dubbo,都很好的帮我们处理了底层的网络 io 流,让我们可以更加的关注于业务处理;

Netty

Netty 是基于 java nio 的高性能通信框架,使用了主从多线程模型,借鉴 Netty 系列之 Netty 线程模型的一张图片如下所示:

为什么要线程隔离

从上面的介绍的线程模型可以知道,处理业务的时候还是使用的 io 线程比如 Tomcat 和 netty,这样会有什么问题那,比如当前服务进程需要同步调用另外三个微服务,但是由于某个服务出现问题,导致线程阻塞,然后阻塞越积越多,占满所有的 io 线程,最终当前服务无法接受数据,直至奔溃;

Dubbo 本身做了 IO 线程和业务线程的隔离,出现问题不至于影响 IO 线程,但是如果同样有以上的问题,业务线程也会被占满;

做线程隔离的目的就是如果某个服务出现问题可以把它控制在一个小的范围,不至于影响到全局;

如何做线程隔离

做线程隔离原理也很简单,给每个请求分配单独的线程池,每个请求做到互不影响,当然也可以使用一些成熟的框架比如 Hystrix (已经不更新了),Sentinel 等;

信号量隔离

线程池隔离的好处是隔离度比较高,可以针对某个资源的线程池去进行处理而不影响其它资源,但是代价就是线程上下文切换的开销比较大,特别是对低延时的调用有比较大的影响;

上面对线程模型的介绍,我们发现 Tomcat 默认提供了 200 个 io 线程,Dubbo 默认提供了 200 个业务线程,线程数已经很多了,如果每个命令在使用一个线程池,线程数会非常多,对系统的影响其实也很大;有一种更轻量的隔离方式就是信号量隔离,仅限制对某个资源调用的并发数,而不是显式地去创建线程池,所以开销比较小;Hystrix 和 Sentinel 都提供了信号量隔离方式,Hystrix 已经停止更新,而 Sentinel 干脆就没有提供线程隔离,或者说线程隔离是没有必要的,完全可以用更轻量的信号量隔离代替;

总结

本文从线程模型开始,讲到了 IO 线程,以及为什么要分开 IO 线程和业务线程,具体如何去实现,最后简单介绍了一下更加轻量的信号量隔离,为什么说更加轻量哪,其实业务还是在 IO 线程处理,只不过会限制某个资源的并发数,没有多余的线程产生;当然也不是说线程隔离就没有价值了,其实还是要根据实际情况来定,根据你使用的容器,框架本身的线程模型来决定

特别声明:[【未来虫教育】线程隔离浅析] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

赵晴白裙如古画走出来!古典仕女气韵藏多少巧思?

支持者狂赞:“这才是真・国风美人,不是穿件汉服就叫古典,她的眼神、仪态、甚至走路的节奏都透着古韵,天选仕女没跑了”“比那些硬凹古风的明星高级多了,她往那一站,就像从诗词里走出来的”;反对者却质疑:“全靠造型撑…

赵晴白裙如古画走出来!古典仕女气韵藏多少巧思?

125%关税重锤!中国海关新规三天逼退2000万美芯,国产替代大爆发(关税=关税完税价格×关税税率)

部分企业试图通过中国台湾或香港进行转口贸易,但中国海关已在深圳湾、香港口岸部署了针对性的专项布控,封堵了这条路径。 125%的关税无疑在短期内重创了美国企业,但更深远的变革在于,“溯源平台”正在重塑全球芯片贸…

125%关税重锤!中国海关新规三天逼退2000万美芯,国产替代大爆发(关税=关税完税价格×关税税率)

所有人都以为黄亦玫被庄国栋耍了,只有苏更生戳中了真相(所有人都以为我是绝世高手短剧)

黄亦玫的故事并非悲剧,而是关于成长与自我救赎的旅程。女性在成长道路上难免遭遇挫折与失败,但最重要的是要从失败中吸取经验教训,勇敢地站起,继续前行。通过这样的故事,我们能够更好地理解自己,迎接生活的挑战,最终实…

所有人都以为黄亦玫被庄国栋耍了,只有苏更生戳中了真相(所有人都以为我是绝世高手短剧)

2025.8.3娱乐资讯:杨幂、王一博、丁禹兮、梓渝、刘宇宁、成毅、李沁、唐嫣、张若昀、雷佳音、宋威龙、陈晓、张予曦、李纯、沈梦辰、李溪芮(娱乐信息分享发布2012)

唐嫣的粉丝对自家偶像拿到“特别主演”这一称谓心怀不满,认为被张若昀压了番;而张若昀的粉丝则坚称此剧是“一番男主剧”,双方各执一词,互不相让,在网络上隔空展开了激烈的争论。 1、丁禹兮在节目中谈及姜妍去《永夜星…

2025.8.3娱乐资讯:杨幂、王一博、丁禹兮、梓渝、刘宇宁、成毅、李沁、唐嫣、张若昀、雷佳音、宋威龙、陈晓、张予曦、李纯、沈梦辰、李溪芮(娱乐信息分享发布2012)

东营空压机管路_沐钊新型铝合金管路系统(空压机管怎么安装)

东营本地企业在管路安装维护这块经验老多了,从设计、施工到售后一站式服务,汽车制造、电子、食品等行业的洁净压缩空气需求都能满足。 - 洁净管控:安装全程封闭作业,管道内异物残留量不超过5mgm3,符合I…

东营空压机管路_沐钊新型铝合金管路系统(空压机管怎么安装)