开个主题讨论下线程池参数自适应调整的可能性 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
yanhomlin
V2EX    程序员

开个主题讨论下线程池参数自适应调整的可能性

  •  
  •   yanhomlin
    yanhom1314 2022-04-24 14:49:16 +08:00 2015 次点击
    这是一个创建于 1274 天前的主题,其中的信息可能已经有所发展或是发生改变。

    开个主题讨论下线程池参数自适应调整的可能性

    目前动态线程池开源框架 DynamicTp 是基于配置中心实现线程池参数调整的,有没有可能根据 cpu 、负载等指标自动调整(估计也是个大概,肯定不准)

    以下是前几天发在 V 站上关于 DynamicTp 的介绍文章

    美团动态线程池实践思路,开源了

    美团动态线程池实践思路开源项目( DynamicTp ),线程池源码解析及通知告警篇

    12 条回复    2022-04-26 16:44:10 +08:00
    smilekung
        1
    smilekung  
       2022-04-24 15:02:43 +08:00
    在容器化这么流行的情况下,没必要对线程池进行自适应整定吧,如果负载上涨,降低线程池大小,一方面是不好测算具体值,一方面也可能对业务造成影响呀
    还不如依靠容器平台的自动伸缩,负载或者请求量变化自动创建合适的容器数量
    chendy
        2
    chendy  
       2022-04-24 15:10:38 +08:00
    1 楼+1
    动态扩缩线程池的使用场景是什么呢?……
    golangLover
        3
    golangLover  
       2022-04-24 15:17:02 +08:00 via Android
    @chendy 一般人应该用不上吧,始终不都是美团这样的公司
    rrfeng
        4
    rrfeng  
       2022-04-24 15:19:39 +08:00
    任何 pool 都可以自动调整啊,无非是从设定 pool 固定大小变成了 pool 的「最多空闲」「最长空闲时间」「最小」和「最大」而已……

    楼上说得对,要看具体有没有实践意义…
    golangLover
        5
    golangLover  
       2022-04-24 15:21:44 +08:00 via Android
    不过虽然如此。但是学习楼主的代码我觉得还是有获益的。另外就是令我接触到大公司的编程思想。谢谢楼主
    yanhomlin
        6
    yanhomlin  
    OP
       2022-04-24 15:35:18 +08:00
    @smilekung 必要性因人而异吧,毕竟还是有很多公司系统没有这种快速扩缩的能力而且这也是两个不同维度,线程池更多偏重单机处理能力。这个问题也是使用 DynamicTp 框架的用户提出的,我觉得还是有一定探讨性的,比如系统负载不高的情况下,线程池负载比较高,是不是可以考虑调大下线程池参数;反之,系统负载高的情况下,一般也是由于线程过多造成,就可以考虑调小下线程池参数。但是就像你说的,很难把控具体值。
    yanhomlin
        7
    yanhomlin  
    OP
       2022-04-24 15:38:54 +08:00
    @rrfeng 意义我觉得还是有的,但是自动调整,具体数值不好把控,没有一个比较成熟的最简实践算法支持
    yanhomlin
        8
    yanhomlin  
    OP
       2022-04-24 15:39:19 +08:00
    @golangLover 谢谢你
    akira
        9
    akira  
       2022-04-25 11:39:18 +08:00
    挺有意思的。 如果判断准确的话,线程参数不需要用户调整,也可以获得 90 分以上的效果了。

    一般情况下,大部分软件部署的时候,都需要人工针对目标服务器的配置,进行一些经验性的参数调整,才能更好发挥服务器性能,而普通用户其实很多时候是很难完全搞懂这些参数的。
    如果大部分参数都能动态的自动调整,那对于普通用户,世界会美好很多。
    lesismal
        10
    lesismal  
       2022-04-25 12:09:29 +08:00
    楼主上一个帖子我忍住了没好意思说,这个帖子还是说下吧:

    何不用 go?
    lesismal
        11
    lesismal  
       2022-04-25 12:11:39 +08:00
    我们一些服务用 go 替换 java 后,内存消耗普遍降低了 50+%、个别服务占用降低 70%,cpu 消耗降低了 30-70%不等
    wolfie
        12
    wolfie  
       2022-04-26 16:44:10 +08:00
    @lesismal #11
    确定不是重构时候优化了一下代码吗。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1033 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 23:15 PVG 07:15 LAX 16:15 JFK 19:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86