首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

openresty 的连接池好溜啊

  •  
  •   lolizeppelin · 149 天前 · 1620 次点击
    这是一个创建于 149 天前的主题,其中的信息可能已经有所发展或是发生改变。

    刚折腾这玩意第一次写 lua

    他的 redis 库说是支持连接池,但是代码超级简单压根没看出来怎么支持连接池的

    直接把 python 的连接池代码套了上去折腾了半天

    总觉得有点别扭回头又查了下他的连接池实现原理

    我操溜得不行...简直是投机!!用起来超级方便,cgi 的方式写代码也能直接池化...

    思路非常简单在 connect 上做手脚,如果 connect 的对象是池子里的直接返回就,如果是新的才真的 connect,然后链接次数计数器设置为 0

    应用层那边 connect 以后判断一下次数计数器,如果是新链接就执行下 connect 以后的认证之类的代码即可

    卧槽这思路超级投机倒把啊!!!

    5 回复  |  直到 2019-05-19 15:53:53 +08:00
        1
    BBCCBB   149 天前
    不这样实现那怎么实现呢??????
        2
    Athrob   149 天前 via iPhone
    这叫持久连接,不是连接池。
        3
    Athrob   149 天前 via iPhone
    phpredis 的持久连接也是差不多这样实现的。
        4
    lolizeppelin   149 天前
    @Athrob
    咋不能叫连接池... 下层帮你实现了 池化管理,控制了连接数,复用了链接,还不叫连接池叫啥

    缺点也就是没应用层的心跳包而已
    当然这缺点其实蛮致命的,但是代码简化了好多
        5
    Athrob   149 天前
    @lolizeppelin #4 没毛病
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2865 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 12:10 · PVG 20:10 · LAX 05:10 · JFK 08:10
    ♥ Do have faith in what you're doing.