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

ConnectionPool 实现了长连接吗

  •  
  •   wudaokou · 2014-01-08 03:14:34 +08:00 · 9321 次点击
    这是一个创建于 3958 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有一些开源项目,例如 okhttp采用了ConnectionPool 技术,是否实现了长连接技术。如此的话 ,岂不是不自己实现socket来得easy多了。。。
    8 条回复    1970-01-01 08:00:00 +08:00
    laomo
        1
    laomo  
       2014-01-08 10:30:39 +08:00
    你说这个没看过

    长连接依赖于服务器的支持吧。

    现在我这边有个应用实现长连接使用的Websocket协议,比自己实现socket容易。

    Ripple整套的在用Websocket
    wolegequ
        2
    wolegequ  
       2014-01-15 09:33:30 +08:00 via Android
    @laomo 安卓使用Web socket吗
    laomo
        3
    laomo  
       2014-01-15 09:43:51 +08:00
    @wolegequ Websocket只是一种协议。Android也可以使用
    wolegequ
        4
    wolegequ  
       2014-01-15 11:22:16 +08:00 via Android
    @laomo 求项目地址
    laomo
        5
    laomo  
       2014-01-15 12:54:56 +08:00
    @wolegequ https://github.com/tavendo/AutobahnAndroid

    我用的这个项目,WebSocket & WAMP for Android

    只用了里面WebSocket的部分
    laomo
        6
    laomo  
       2014-01-15 12:58:17 +08:00
    @wolegequ 刚忘记说了,协议版本要和服务器端协商,保持一致。你可以先看看协议。
    wolegequ
        7
    wolegequ  
       2014-01-15 14:50:00 +08:00 via Android
    @laomo 谢谢
    wudaokou
        8
    wudaokou  
    OP
       2014-01-15 22:49:19 +08:00
    @laomo

    HTTP1.1
    它支持持续连接.通过这种连接,就有可能在建立一个TCP连接后,发送请求并得到回应,然后发送更多的请求并得到更多的回应.通过把建立和释放TCP连接的开销分摊到多个请求上,则对于每个请求而言,由于TCP而造成的相对开销被大大地降低了.而且,还可以发送流水线请求,也就是说在发送请求1地回应到来之前就发送请求2.

    复制自百度[请鄙视我],所以我猜想okhttp是不是已经默认长连接了,这样原来实现起来就轻松多了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   959 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 21:07 · PVG 05:07 · LAX 13:07 · JFK 16:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.