frozenway
V2EX  ›  问与答

webman 在高并发的时候有问题,不知道是什么原因造成的?

  •  
  •   frozenway · Jul 20, 2023 · 1782 views
    This topic created in 1042 days ago, the information mentioned may be changed or developed.

    问题 1: 在 9 点 32 分的时候通过php start.php status看 total_request 是 20930225.然后到了 9 点 45 分时再次通过php start.php status看 total_request 是 13360680 ,怎么请求量反而变少了?

    附上图片: 9 点 32 的截图: 11 9 点 45 分的截图: 22

    问题 2: 在 9 点 45 分的状态图中,发现有一个连接数最多的 webman 进程的 pid 是 4 位数的,而 9 点 32 分时看所有进程的 pid 都是 5 位数的,这个是什么原因造成的?

    6 replies    2023-07-20 11:10:11 +08:00
    brader
        1
    brader  
       Jul 20, 2023   ❤️ 1
    我觉得没什么问题,应该是你理解错误。
    我理解的这个 total_request 的意思是这个进程,他在一段时间内一共处理了多少个请求,而不是指并发数的意思,这个东西,就和 PHP 的 pm.max_requests 有点类似,可能框架处于某些优化目的,也会定期重启或者回收进程,来重置一些内存泄露等问题,对应进程重启了,这个请求数的统计自然也重置了。

    我还有个疑问是,你是以什么判断依据,来判断 9 点 45 分 的并发就一定要比 9 点 32 分的并发高呢?
    me1onsoda
        2
    me1onsoda  
       Jul 20, 2023   ❤️ 1
    @brader op 并没有说这是并发数哦。就是因为他知道这是总请求数,才会有问题 1
    brader
        3
    brader  
       Jul 20, 2023   ❤️ 1
    @me1onsoda 能理解是总请求数的话,就像我上面说的,可能是重启或者回收进程,这个很正常的
    8355
        4
    8355  
       Jul 20, 2023   ❤️ 1
    pid 32216 内存占用太多应该被 kill 了或者内存溢出挂掉了

    上面 exit status = 65280 退出了 66 次排查啊。。。
    8355
        5
    8355  
       Jul 20, 2023   ❤️ 1
    每个进程起来都应该是 5m 不到 如果内存管理做的好应该是能够一直保持这个数字运行下去的,你这几个进程有明显内存增长应该是有运行什么代码导致内存溢出了 一直不释放且累加 随着请求数增长持续增长
    8355
        6
    8355  
       Jul 20, 2023   ❤️ 1
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3841 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 00:48 · PVG 08:48 · LAX 17:48 · JFK 20:48
    ♥ Do have faith in what you're doing.