【DM版本】:DM8
【操作系统】:CENTOS7
【CPU】: X86
【问题描述】*:MEMORY_N_POOLS从官方资料上看,几乎所有的例子,都设置为默认的1;我理解的MEMORY_POOL/MEMORY_N_POOLS,从1个大整体,调整为N个小区,每个小区有独立的锁,有利于并发访问的时候减少冲突?不知道我这里理解是否正确?MEMORY_N_POOLS>0,是否会出现什么问题?如果我服务器内存512G,我需要调整这个值,MEMORY_POOL=10000,MEMORY_TARGET=30000,MEMORY_N_POOLS=11是否合理?
MEMORY_N_POOLS指共享内存池个数;把共享内存池划分为几个独立的单元,以减少并发访问的冲突,提升并发效率;分片数根据维护的全局变量进行取模。
高并发下建议调大,建议是质数,减少临界区冲突。
512的内存,如果并发比较大,可以再调大一些。