美文网首页
mac环境undertow线程数问题

mac环境undertow线程数问题

作者: 三无架构师 | 来源:发表于2021-06-07 09:51 被阅读0次

    mac下undertow线程设置

    springboot中undertow的线程设置如下:

    
    server:
    
      undertow:
    
        threads:
    
          worker: xx
    
          io: xx
    
    

    其io线程为当前cpu线程数:如以下为12线程:

    1.png

    默认worker线程数为:cpu线程数X8 ,在本机应该为12 * 8 = 96.

    2.png

    问题

    在mac下发现线程数超过300无效,测试流程如下

    设置worker线程为200时:生效

    3.png

    worker线程数设置为250:生效

    4.png

    worker线程数设置为300:不生效,最多只到260

    5.png

    分析

    1. 修改worker线程数为400,发现还是维护在250左右,始终上不去

    2. 初步怀疑并发数不够,提高并发数,发现基本无提升。

    3. 其资源占用都不高,因此不是资源问题

    4. 然后怀疑是由于mac下文件打开数限制导致,查看发现默认当前打开文件数只为256,

    
    (base) ➜  ~ ulimit -a
    
    -t: cpu time (seconds)              unlimited
    
    -f: file size (blocks)              unlimited
    
    -d: data seg size (kbytes)          unlimited
    
    -s: stack size (kbytes)             8192
    
    -c: core file size (blocks)         0
    
    -v: address space (kbytes)          unlimited
    
    -l: locked-in-memory size (kbytes)  unlimited
    
    -u: processes                       5568
    
    -n: file descriptors                256
    
    

    直接修改为5000,重启发现生效。如图

    6.png

    相关文章

      网友评论

          本文标题:mac环境undertow线程数问题

          本文链接:https://www.haomeiwen.com/subject/iayzsltx.html