你可以比较下刚启动 Nginx 时 Virt 占用大小,看看有没有超过 2G?虽然 shr 只统计实际用到的共享内存,但是 Virt
里面会直接加上账面分配的共享内存数,所以从 Virt 可以得知 shr 的上限应该是多少。
毕竟除了 lua_shared_dict,其他地方也会用到共享内存,说不定是其他地方的内存占用引起的。
在 2017年12月15日 下午2:28,cheng zhang <zche...@gmail.com> 写道:
> 8个worker,每个worker都飙到一两个G。
>
> 在 2017年12月15日星期五 UTC+8下午2:28:00,tokers写道:
>>
>> 单个 worker 飙到一两个 G,还是所有 worker?还有 worker 数量是多少?
>>
>> On Friday, December 15, 2017 at 2:25:59 PM UTC+8, cheng zhang wrote:
>>>
>>> 我一直观察SHR的大小,申请的是100M,SHR中一路从3M,飙到一两个G
>>>
>>> 在 2017年12月15日星期五 UTC+8下午2:04:29,tokers写道:
>>>>
>>>> 这个应该是因为刚刚申请好共享内存但是没用,对应的 page 没有换进内存,只有你真正用了之后,触发缺页,才会换进来,top 里的 SHR
>>>> 统计的应该统计的是共享内存物理页的大小。
>
> --
>