初步聊聊消息系统

栏目: 后端 · 发布时间: 5年前

移动互联网时代,消息系统、推送消息是系统必不可少的一部分,无论是促销信息的推动,还是朋友圈有人点赞评论之后推送,亦或者公众号留言被选为精选都会发送消息。可以说消息已经是移动互联网很重要一部分。

初步聊聊消息系统

消息从发送方式看可以分为两种,一种是系统发送消息,比如JD app发送促销消息,由系统发送系统圈定一部分用户进行发送。消息推荐系统,这篇文章对系统发送促销消息个性化推荐做了相应介绍。

另外一种消息系统是用户发送消息给用户,典型应用是即时通讯工具。用户发送消息给用户,这种场景下发送方也是用户。

消息推送从业务场景很清晰,发送文字、图片或视频等内容从A到B,实际情况中存在一个点是,app有在线和离线情况,在线采取一种策略发送消息,离线采用一种策略发送消息。

在线进行消息推送一般采用长链接方式,通过长链接将消息进行发送。离线方式app不再已经推出,无法通过在线长链接方式进行发送,需要采取其他方式进行发送。

离线消息是一种重要消息类型,因为当用户不在线时app退出时,在线长链接方式无法用,这时就需要离线的消息架构,离线需要考虑对于消息存储,或者通过离线消息通道将消息发送给app,离线消息苹果和谷歌都给出相应方案,核心理念是将消息通过苹果谷歌消息通道发送到手机由手机转发给app,这两种方式时离线消息常用发送方式。

消息架构还有一个点就是消息发送速率,比如微信用户发送消息是通过中间消息队列进行转发,而不是采取早些时候qq 基于udp点对点消息发送方式,这样架构方式简化了对于应对各种NAT网络穿透啊等等问题,但也需要面对新的问题就是消息转发要高效,以及要不丢失。

消息系统还面临一个挑战就是架构本身要满足业务需求扩展,比如消息本身协议设计要支持扩展,比如需要已送达、已阅读、撤回等各种个样需求。协议本身要能支持,整个系统架构不需要推翻重做。

消息系统在有就是安全性,对于即时通讯工具,通讯数据需要被加密,不能被轻易破解,以及账号安全性,是通讯 工具 要面临挺大一个问题,因为哪个用户也不想自己用的好好被别人盗去。

消息系统还有就是当消息变大极大量的时候,需要能够系统动态扩容,动态去增加处理消息能力,而不是消息丢失、以及消息延时,这都是严重影响用户体验的。

消息系统本身说起来很简单,就是内容从A发送到B,但真的做到,不卡、不慢、不丢、安全、稳定并且能够稳定支持各种在线离线,以及保证速率并且能够支持各种业务扩展就相对难度大了很多很多。


以上所述就是小编给大家介绍的《初步聊聊消息系统》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

断点:互联网进化启示录

断点:互联网进化启示录

[美]杰夫·斯蒂贝尔 / 师蓉 / 中国人民大学出版社有限公司 / 2014-11-1 / CNY 49.00

一部神经学、生物学与互联网技术大融合的互联网进化史诗巨著。 我们正置身网络革命中。互联网的每一丝变化都与你我息息相关。当科技变得无处不在时,它就会改变你我。在《断点》一书中,大脑科学家和企业家杰夫·斯蒂贝尔将带领读者来到大脑、生物与技术的交汇处,向读者展示生物学和神经学是如何与互联网技术发生联系的;我们是如何通过生物学上的前车之鉴,来预测互联网的发展的;互联网在经历增长、断点和平衡后又会发生......一起来看看 《断点:互联网进化启示录》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具