`
iyuan
  • 浏览: 474044 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

IM选型(初)

 
阅读更多
主要参考文章: https://ruby-china.org/topics/22530

因为文章本身的时效性,目前在协议端个人还是更加看好MQTT:https://github.com/mqtt/mqtt.github.io/wiki/servers

服务器选型的话,如果是考虑到现有后台coder, 建议选java 框架的;否则建议选择Erlang框架的,目前筛选看来,MQTT建议emqttd; xmpp建议Ejabberd

不过个人对下面这段话还是比较认同的:
引用

** 开源的IM框架也有不少,为什么我不可以自己搭建一个IM服务器,自行开发呢? **
a) 自行研发移动IM,技术门槛高,开发周期长。根据我们的经验,至少需要资深的Android工程师,iOS工程师,后台工程师各一名,需要至少2到6个月时间。主要的技术难点包括:

协议和IM服务器的选择:当前常用作IM的协议包括XMPP和MQTT,也有用SIP的,还有自行开发的私有协议。- - 可以使用的开源的IM服务器包括OpenFire, Tigase, Prosody, Mosquitto, ejabberd等。你知道它们各自的优缺点吗,你知道哪个协议,那个IM服务器实现最适合你的需求吗,你知道你一旦选定了一个方案,你分别需要对协议和IM服务器做哪些改动和改进吗?
不稳定网络环境下(3G,2G,Wifi,无网络,及各种网络环境下的切换)移动终端即时通讯长连接可靠性的维护
移动终端耗电量优化
移动终端流量优化
发送各类富媒体消息的特定处理,如语音文件格式选择,语音压缩算法,语音降噪算法,图片压缩处理,地理位置,名片,文档等
消息回执处理(ack),防止消息丢失。
离线消息处理。离线时的实时消息通知(比如通过第三方推送平台)
实时状态同步
支持千万级同时在线用户的高可靠,高并发的服务器集群架构的搭建和运维
安全
b) 移动IM是一个需要长期跟进和维护的技术,并不是产品上线后研发团队就可以解散了。作为运营者,你做好长期的技术投入的思想准备了吗?比如新的IM功能层出不穷,如匿名社交,阅后即焚,你的产品要不要与时俱进?移动IM相关的各种安全隐患和漏洞,你要不要及时修复?所以你需要问自己一个问题,移动IM技术是你的核心竞争力吗,还是只是支撑你的业务实现的一个工具?

c) 移动IM服务对服务器硬件,网络,运维环境,都有非常高的要求。需要长期持续的服务器端运维投入。

d) 绝大多数团队都不具备百万级,千万级并发的IM技术。一旦用户量爆发性增长,APP的基本可用性会有极大的隐患。


在比较了几个国内的IM云服务,目前  环信,融云,leancloud  都比较成熟了,个人还是建议通过这种方式实现im功能。环信在日活量30w-内是免费的,对于我们的业务需求在初期试错是有效而低成本的。(目前,知乎,猎聘等也是使用的云im)

如果可以选择云im的话,主要精力可以放在app/app Server端的开发。在通过初期后,确有必要再自建IM Server 进行转接即可。
分享到:
评论

相关推荐

    选型资料16-接口模块.pdf

    首先,IM 360作为一款基本的接口模块,非常适合S7-300机架安装,其设计之初就考虑到了简洁性和实用性。其最小的尺寸(40 x 125 x 120毫米)和较轻的重量(约250克)使得它成为空间受限环境的理想选择。在数据传输...

    物理电路章学习教案.pptx

    有效值的概念非常重要,因为它不仅用于衡量电路中的电能,而且在功率计算和设备选型中都扮演着核心角色。 **相位与初相位** 正弦量随时间变化的电角度被称为相位,它表示交流电在变化过程中的位置,以ωt+φ来表示...

    电工电子技术课程课件第2章.pptx

    幅值是正弦波的最大值,例如交流电流和电压的最大值分别用Im和Um表示。初相位是在时间t=0时正弦波的相位,它描述了波形起始的位置。 有效值是衡量交流电实际效果的重要参数,它是与交流电流或电压在相同时间内通过...

    ASP基于WEB购物系统(LW+源代码+开题报告+答辩PPT+操作说明).zip

    这个购物系统可能基于ASP技术构建,这在20世纪90年代末到21世纪初是非常流行的Web开发技术。ASP(Active Server Pages)允许开发者创建动态网页,通过服务器端脚本处理用户请求,然后返回HTML页面。它支持VBScript和...

    煤矿电工技术比武理论考试题库.docx

    - **知识点**:触点压力分为初压力和终压力,触点的终压力取决于触点材料、导体允许温升等因素,对于交流接触器和直流接触器有不同的调整比例。 13. **电器失爆定义**: - **知识点**:电器失爆指的是电气设备的...

Global site tag (gtag.js) - Google Analytics