Hi,
      tcp_sock 在 init_worker_by_lua 阶段是被 disabled 的,请问有没有办法绕过这个限制呢?
      比如我想在 init_worker_by_lua 阶段进行域名解析得到 ip 地址,谢谢。
    起个线程试试?

    Cunli.Zhang <zhangc...@gmail.com> 于2018年9月14日周五 下午4:14写道:
    Hi,
          tcp_sock 在 init_worker_by_lua 阶段是被 disabled 的,请问有没有办法绕过这个限制呢?
          比如我想在 init_worker_by_lua 阶段进行域名解析得到 ip 地址,谢谢。

    --
      Hello!

      目前是无法绕过的。
        可以使用 luasocket 库(https://github.com/diegonehab/luasocket) 阻塞的发起请求,
        对于 lua-resty-redis,可以这样绕过 cosocket:

        local socket = require "socket"
        local redis = require "resty.redis"


        local red = setmetatable({ sock = socket.tcp() }, { __index = redis })

        然后 red:hget(...)

        其他库操作方法类似




        On Friday, September 14, 2018 at 4:14:22 PM UTC+8, Cunli.Zhang wrote:
        Hi,
              tcp_sock 在 init_worker_by_lua 阶段是被 disabled 的,请问有没有办法绕过这个限制呢?
              比如我想在 init_worker_by_lua 阶段进行域名解析得到 ip 地址,谢谢。
          a month later
          那是否可以使用lua原生的库  来绕过这个限制呢

          在 2018年9月14日星期五 UTC+8下午5:10:03,tokers写道:
          Hello!

          目前是无法绕过的。
                --初始化配置
                local ok, err = ngx.timer.at(0, function(premature, myself)        
                --操作tcp_sock
                end, myself)


            在 2018年9月14日星期五 UTC+8下午4:14:22,Cunli.Zhang写道:
            Hi,
                  tcp_sock 在 init_worker_by_lua 阶段是被 disabled 的,请问有没有办法绕过这个限制呢?
                  比如我想在 init_worker_by_lua 阶段进行域名解析得到 ip 地址,谢谢。
              Write a Reply...