本文为冰河《分布式IM系统》的学习笔记,非本人创作
从什么角度出发去看一个业务,如何理解一项业务,或许是直接体现技术人员层次的地方
为什么会有IM
生活里像微信、QQ 等即时通讯工具其实很多,我们对这些工具习惯到甚至没有思考过他们为什么会存在,又是怎么出现的。
细想起来,其实随着移动互联网的发展,移动通信手段只有电话和短信显然是远远不够的,在这种操作略显繁琐的、收费的服务的背景下,发展出 IM 其实是一件必然的事情。所以可能之所以会出现 IM 就是因为人们通信方面的需求,至于商业需求、社交需求等,反倒有可能是因为 IM 的出现促成的?
为什么要自研IM
很容易地想到我们手机里每一个属于大厂,不属于大厂的软件,好像都有一套自己的 IM 系统,为什么都要自研 IM…这个问题我觉得首先是不自研你也用不了别人的呀,难道在美团点了外卖还要加 QQ 问外卖送到哪啦?人家 QQ 也不允许你继承到美团 APP 里呀
当然其次自研 IM 还是有一系列好处的:
- 沟通的便利自不必说
- 从用户使用的角度来讲,避免了软件跳转带来的使用的麻烦
对软件侧呢:
- 可以基于自己庞大的用户群体提供社交服务(增强用户粘性)
- 方便进一步的数据收集与分析
- 也有助于优化平台的生态(支付宝没有社交,每天平均在线 7 分钟)
- 比起集成呢,也能够进一步保护数据安全和用户隐私
- 最后还能探索新的运营和商业模式
所以,何乐而不为?
为什么要学 IM
这就从自己角度想吧…当然是因为菜,要是这些东西我都会我还要学?
看看冰河承诺里面有什么吧:
- 编程技术
- 系统架构技巧
- 实时通讯技术
- 数据存储架构
- 系统监控技术
- 开阔视野…
工具栈就不再多说,如果想得起来的话,可以做完回头来总结,顺便看看技术选型的事情