lua-resty-redis set_keepalive建议设置

时间:2018-10-11 00:59:28

标签: nginx redis lua openresty

我正在使用 red:set_keepalive(max_idle_timeout,pool_size)

(从这里:https://github.com/openresty/lua-resty-redis#set_keepalive

使用Nginx并尝试确定用于max_idle_timeout和pool_size的最佳值。

如果我的worker_connections设置为1024,那么pool_size为1024是否有意义?

对于max_idle_timeout,60000(1分钟)是否太“激进”?较小的值更安全吗?

谢谢

马特

1 个答案:

答案 0 :(得分:1)

我认为官方文档的Check List for Issues部分为调整连接池大小提供了很好的指导:

  

基本上,如果您的NGINX处理n个并发请求,并且您的NGINX具有m个工作程序,则连接池大小应配置为n/m。例如,如果您的NGINX通常 处理1000个并发请求,而您有10个NGINX工作线程,则连接池大小应为100。

因此,如果您期望实际连接到Redis的1024个并发请求,那么您的池的合适大小为1024 / worker_processes。也许还有更多原因可以解释工人之间的请求分配不均。

您的keepalive应该足够长,才能说明流量的到达方式。如果流量恒定,则可以降低超时时间。还是停留60秒,在大多数情况下,更长的超时时间不会带来任何明显的变化。