求 3-5w 同时在线的即时通讯后台 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请要在回答技术问题时复制粘贴 AI 生成的内容
solesschong
V2EX    程序员

求 3-5w 同时在线的即时通讯后台

  •  
  •   solesschong 2014-11-03 21:18:13 +08:00 9839 次点击
    这是一个创建于 3996 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近要开发一个手机应用,要带即时通讯的后台,要求3-5w同时在线。

    比较了几个可用的方案
    1. 环信(easemob.com)这类SaaS,缺点是没法进行二次开发。
    2. OpenFire,二次开发,但可扩展性不强,需要升级服务器才行。

    有没有做过手机应用带IM后台的能来稍微说说,指点一二?谢过了!
    35 条回复    2015-01-16 15:44:46 +08:00
    ccinls
        1
    ccinls  
       2014-11-03 21:23:58 +08:00
    可以考虑用netty作做一个,这个量级难度不高
    lsylsy2
        2
    lsylsy2  
       2014-11-03 21:25:44 +08:00
    LeanCloud 以前的AVOSCloud,个人没用过,不过在V2的评价似乎不错,而且他们的定价是“1元/千在线用户/天”,那么支撑3-5W同时在线大概不会是什么问题?
    solesschong
        3
    solesschong  
    OP
       2014-11-03 21:30:38 +08:00
    @lsylsy2 这个之前看过,貌似挺靠谱的。看起来是有国内服务器吧?

    @ccinls 做过觉得难度大吗?如果自己开发的话貌似这个非常靠谱。
    alsotang
        4
    alsotang  
       2014-11-03 21:31:23 +08:00
    @solesschong 那本来就是国内的服务商,肯定有啊
    sunwenjun
        5
    sunwenjun  
       2014-11-03 21:32:25 +08:00
    蘑菇街开源了一款,前台客户端都有。https://github.com/mogutt 不知道是否满足。
    lsylsy2
        6
    lsylsy2  
       2014-11-03 21:32:47 +08:00
    @solesschong 这家主要做的就是国内
    另外如果有能力的话,用Node.js写大概也是一个不错的选择(使用socket.io之类库)
    http://www.zhihu.com/question/19653241 可以参考
    td width="10" valign="top">
    ozking
        7
    ozking  
       2014-11-03 21:41:42 +08:00
    还以为是开价3-5W
    (●°u°●) 」
    solesschong
        8
    solesschong  
    OP
       2014-11-03 21:54:05 +08:00
    @xudshen 你是想说是高是低~~

    @alsotang @lsylsy2 真没注意。一开始觉得接入了github oauth好洋气,就觉得像是外国的。国人也是越来越争气

    @sunwenjun 看了一下,非常棒,但好像不是很成熟吧?这次需求是快速开发,还是会倾向于选用一个商业一点的。但商业公司发布开源系统,赞一个!!
    88250
        9
    88250  
       2014-11-03 21:57:05 +08:00
    后端的话可以看一下这个: https://github.com/Terry-Mao/gopush-cluster
    solesschong
        10
    solesschong  
    OP
       2014-11-03 21:58:34 +08:00   1
    @88250 野生B3log哥一枚
    solesschong
        11
    solesschong  
    OP
       2014-11-03 22:05:03 +08:00
    @88250 这个心跳支持真心是良心。不过golang还是不敢轻易尝试。
    allenforrest
        12
    allenforrest  
       2014-11-04 00:30:46 +08:00
    openfire 支持这个量级应该 OK,二次开发和扩展性也比较好,缺点是 XMPP 的方案比较耗流量。
    legend9
        13
    legend9  
       2014-11-04 05:37:39 +08:00
    没有足够的时间和预算不要尝试自己开发,选择一个比较好的第三方服务商吧。
    还有xmpp是一个大坑,也不太适合移动端
    odirus
        14
    odirus  
       2014-11-04 09:11:17 +08:00
    我们是在TCP基础上自己拟定协议,自己开发程序,不过耗时比较久,程序正在被考验中。
    Registering
        15
    Registering  
       2014-11-04 09:26:19 +08:00
    @legend9
    之前刚基于openfire基于android开发了一个款XMPP IM。。。。。。额,真心不知道为何说XMPP是大坑
    gotham
        16
    gotham  
       2014-11-04 09:40:36 +08:00
    我最近也在做这个,基本上能达到8w用户同时在线了,我们是自定义协议。用xmpp来搞这个,好多功能我们还用不上。
    teavoid
        17
    teavoid  
       2014-11-04 09:53:54 +08:00
    我之前pomelo做聊天服务器,开发了一个IM的APP.push用的百度。但是现在也想自己整理出一套好的push server的最佳实践。
    solesschong
        18
    solesschong  
    OP
       2014-11-04 09:57:48 +08:00
    @odirus 真是跪了。。
    @allenforrest 不知道openfire是否支持推送?有没有心跳?你说xmpp耗流量,是因为心跳做的不好吗?

    @legend9 是的,目前看来这个比较实际。
    @Registering 可能是太复杂吧。遇到问题可以向你请教吗?

    @gotham 8W也是挺nb
    @teavoid 百度的推送用着怎么样?有人说不太稳定。
    allenforrest
        19
    allenforrest  
       2014-11-04 10:01:12 +08:00
    @solesschong openfire 做推送没问题,也支持双向心跳。xmpp 耗流量不是因为心跳,是因为 xmpp 本身协议设计决定的,文本、XML,太冗余。
    canesten
        20
    canesten  
       2014-11-04 10:11:58 +08:00
    记得Facebook的客户端是MQTT协议的
    在心跳略微频繁的场景下会有比较好的能效比
    lianghui
        21
    lianghui  
       2014-11-04 11:18:05 +08:00
    MQTT绝对适合,手机耗电少,数据包小。
    hjiang
        22
    hjiang  
       2014-11-04 11:59:15 +08:00
    看看 LeanCloud 吧: https://leancloud.cn/features/message.html

    国内实时消息服务的不二之选 :-)
    aszxqw
        23
    aszxqw  
       2014-11-04 12:45:11 +08:00   1
    为什么没人时候说 ejabberd ?
    gotham
        24
    gotham  
       2014-11-04 13:08:22 +08:00
    ejabberd好是好,精通erlang的人少
    hcymk2
        25
    hcymk2  
       2014-11-04 13:20:43 +08:00
    ejabberd 这个协议还是xmpp,估计有人会叫耗流量 耗电。
    lianghui
        26
    lianghui  
       2014-11-04 14:26:55 +08:00
    @hcymk2 对于xmpp手机端不是那么好使,首先网络而言移动网络没有有线网络稳定和宽带大。另外本身协议臃肿会使解析麻烦进而耗电耗流量。在gameloft时使用的是ejabberd作为游戏的im,但结果非常不不尽人意,对世界的广播相当差。不知道是否什么原因,工会到50人而已,延迟相当严重。最后不得不放弃自定义一套简洁的协议和重新设计集群。
    hartonyan
        27
    hartonyan  
       2014-11-04 15:07:34 +08:00
    可以看看亲加通讯云(www.gotye.com.cn),也是国内一家专门为APP提供IM功能的云服务提供商,而且他们架构比较灵活,可以进行二次开发
    yueyoum
        28
    yueyoum  
       2014-11-04 15:13:46 +08:00
    erlang + 自定义消息格式, 一切so easy
    290601953
        29
    290601953  
       2014-11-04 15:17:53 +08:00
    蘑菇街teamtalk开源.
    Registering
        30
    Registering  
       2014-11-05 00:18:18 +08:00
    beatles
        31
    beatles  
       2014-11-05 12:44:47 +08:00
    推荐使用 LeanMessage https://leancloud.cn/features/message.html 文档介绍非常全面 ticket 系统反应也很快 口碑也非常不错
    savegame
        32
    savegame  
       2015-01-09 21:18:16 +08:00
    @290601953 teamtalk 有clone 么,有的话可否mailto : vpn2000.com 在 gmail, 谢谢。
    savegame
        33
    savegame  
       2015-01-09 21:30:17 +08:00
    @290601953 原来 github 已经可以下了。话说怎么删除自己的发言啊.... 居然不会用 v2ex
    sieon
        34
    sieon  
       2015-01-16 15:43:47 +08:00
    可以看一下这个帖子即时通讯云服务,你选的哪家: http://www.v2ex.com/t/136398
    sieon
        35
    sieon  
       2015-01-16 15:44:46 +08:00
    可以试一下容联云通讯www.yuntongxun.com 国内最早的,通讯能力最全的。IM、语音、视频、会议、短信甚至呼叫中心IVR都有。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3267 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 11:33 PVG 19:33 LAX 04:33 JFK 07:33
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86