社区版 EMQX Broker 在发布消息时出现高耗时情况。

问了下GPT,应该没什么影响,tcp长链接都已经建立稳定了。

net.nf_conntrack_max这个内核参数是用于控制Linux系统中netfilter connection tracking表的最大大小。
netfilter是Linux内核中的一个框架,用于网络数据包过滤和处理。其中的connection tracking功能可以追踪通过系统的网络连接,以实现状态ful过滤。
为了追踪连接状态,netfilter会维护一个connection tracking表。这个表中记录了所有通过本机的网络连接及其状态。net.nf_conntrack_max就是这个表的最大条目数。
如果连接跟踪表溢出,新连接将会被丢弃。所以合理配置net.nf_conntrack_max参数,可以防止跟踪表溢出导致的连接问题。
net.nf_conntrack_max默认值往往不高,在高连接并发环境下可能会溢出。可以根据系统并发连接数进行调优,例如web服务器可以调大该值。
建议通过如下命令动态修改该参数:

sysctl -w net.nf_conntrack_max=65535

也可以修改/etc/sysctl.conf文件永久生效。

所以简单来说,net.nf_conntrack_max主要用来控制内核connection tracking表大小,避免高并发下表溢出引起的问题。