Это моя конфигурация:
local rc = require("resty.redis.connector").new({
connect_timeout = 50,
read_timeout = 5000,
keepalive_timeout = 30000
})
local redis, err1 = rc:connect({
url = "redis://127.0.0.1:6379",
})
if not redis then
ngx.say( err1)
else
ngx.say('connection fine')
end
local ok, err = rc:set_keepalive(redis)
Я получаю эту ошибку:
[ошибка] 4044#0: *1068056 попытка отправить данные через закрытый сокет: u:00007F2BABA05D48, c:0000000000000000, ft:0 eof:0, клиент: МОЙ IP, сервер: , запрос: "GET /foo HTTP/1.1 ", хост: "IP-адрес СЕРВЕРА"
Когда я отключаю настройку поддержки активности, получаю эту ошибку:
[ошибка] 4147 # 0: * 1089971 lua tcp socket timeout timeout, при подключении к 127.0.0.1: 6379,
Когда я закомментирую строку, связанную с rc:set_keepalive, она работает с одиночными запросами и вылетает при 100 запросах.
Каковы наилучшие методы подключения к Redis в Lua при больших запросах?