V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
moyaya
V2EX  ›  问与答

Python下有什么比较好的实时推送信息的方案?

  •  
  •   moyaya · 2013-06-04 10:56:24 +08:00 · 6098 次点击
    这是一个创建于 4191 天前的主题,其中的信息可能已经有所发展或是发生改变。
    手工客的交易系统上线之后,想再完善一下我们社区现有的站内信功能(方便买卖双方的对话),介于即时通信和站内信中间的一种方案,能够实时推送数据,而不依赖于用户的强制刷新,类似微博的私信。

    请教一下,python下面有什么好的解决方案,或推荐比较成熟的库。

    Comet据说有延时,实际用过的也来指教一下,谢谢!
    13 条回复    1970-01-01 08:00:00 +08:00
    jerry
        1
    jerry  
       2013-06-04 10:58:14 +08:00
    websocket 不过只适用于现代浏览器,老浏览器只能长链接了
    moyaya
        2
    moyaya  
    OP
       2013-06-04 11:55:30 +08:00
    @jerry 哎,这个是我们最头痛的,我们的用户80%都是用360之类的浏览器。
    jerry
        3
    jerry  
       2013-06-04 12:03:37 +08:00
    用类tornado的异步功能做长链接好了
    moyaya
        4
    moyaya  
    OP
       2013-06-04 12:15:57 +08:00
    @jerry 我们用的是django
    spritevan
        5
    spritevan  
       2013-06-04 12:41:50 +08:00
    socket.io 或者 pyxmpp
    feilaoda
        6
    feilaoda  
       2013-06-04 12:42:30 +08:00
    @moyaya 直接socket.io啊
    后台架一个nodejs server,和django共存
    搞复杂点,就是web版的im了。
    buru
        7
    buru  
       2013-06-04 12:48:13 +08:00
    socket.io做推送 ,都有现成的解决方案了吧
    eYeer
        8
    eYeer  
       2013-06-04 12:58:38 +08:00
    在页面搞个定时器,ajax获取消息不可以吗?
    还要什么方案?
    moyaya
        9
    moyaya  
    OP
       2013-06-04 20:39:55 +08:00
    @eYeer @buru @feilaoda @spritevan @jerry 感谢几位:)

    如果用coment长连接的话,代码改动太大,还是先用ajax轮询来做吧

    再次谢谢!
    julyclyde
        10
    julyclyde  
       2013-06-04 22:57:12 +08:00 via iPad
    @moyaya 360其实挺现代的
    zhy0216
        11
    zhy0216  
       2013-06-04 23:15:07 +08:00
    我是用eventsource做的
    moyaya
        12
    moyaya  
    OP
       2013-06-05 10:26:09 +08:00
    @julyclyde IE 8的内核
    hepochen
        13
    hepochen  
       2013-06-05 12:08:48 +08:00 via iPad
    楼主没看明白大家的意思,比如socket.io是一个解决方案,它会自动判断与处理websocket以及长连接轮询。

    python中也有基于gevent的socket.io的服务端解决方案,融合到django中还算简单。

    socket.io原生库的服务端解决方案是node.js
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2651 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 05:03 · PVG 13:03 · LAX 21:03 · JFK 00:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.