问题
IM 系统从架构模式上包括 【介绍人模式】和 【代理人模式】。介绍人模式也叫直连模式,消息收发不需要服务端的参与,即客户端之间直连的方式;代理人模式也叫中转模式,消息收发需要服务端进行中转。
下面关于这两类模式描述的说法正确的有哪几项呢?
A. 介绍人模式需要解决 P2P 打洞技术问题;
B. 代理人模式方便对消息内容进行风险管控;
C. 介绍人模式不利于实现消息漫游,影响用户体验;
D. 从性能上比较,介绍人模式比代理人模式的性能更优。
解析
A选项:早期的很多IM软件大都采用了介绍人模式,也就是要通信的两个客户端进行直连的模式;如果这两个客户端在同一个局域网中,建立连接是非常方便的(比如现在仍在普遍使用的“飞鸽传书”);如果这两个客户端是在不同的局域网中(局域网中的客户端是没有公网IP的),怎么建立连接呢?这个时候往往需要P2P打洞技术。这个地方有一个非常有意思的面试题目:几乎所有的客户端都是没有公网独立IP的,但我们上网时,那些服务器程序回复的数据包是怎么找到我们的客户端的呢?(大家可以自行学习一下 NAT 技术!)介绍人模式见下图。

B选项:代理人模式对消息内容可以方便地进行风控管理,这个是非常容易理解的;毕竟在介绍人模式下进行风控管理,用户体验、代价和复杂度都太大了!(大家想一下,为什么?)代理人模式见下图。

C选项:介绍人模式下,消息都保存在客户端本地;换一个终端设备,消息如何漫游呢!
D选项:收发消息的性能损耗,除

最低0.47元/天 解锁文章
772

被折叠的 条评论
为什么被折叠?



