Openresty: 在 init 中创建连接到 Tarantool

我想在 init_by_lua_blockinit_worker_by_lua_block 中创建连接到 Tarantool 数据库,然后在每个 content_by_lua_block 中使用创建的连接:

init_by_lua_block {
    local tnt = require 'resty.tarantool'

    local tar, err = tnt:new({
        host = '127.0.0.1',
        port = 3312,
        user = 'user',
        password = 'password',
        socket_timeout = 2000
    })

    local res, err = tar:connect()
}

但是cosocket api在指令 init_*_by_lua* 中是被禁用的。我该如何创建一次连接而不是为每个请求创建连接?

点赞
用户2060502
用户2060502

使用https://github.com/perusio/lua-resty-tarantool#set_keepalive

将创建的连接推送到连接池中,从而使连接在多个请求之间保持活动状态。

2017-02-27 08:58:54