腾讯IM SDK的群组的学习
群组是im系统里一个非常核心的功能,也是容易产生性能问题的部分,常见im在一对一的问题不多,这个也没啥可多说的,但是在群聊的时候却有很多不同的特征的。
我们可以在腾讯im sdk里看到对于群组共有5组不同的分类 https://cloud.tencent.com/document/product/269/1502
- 好友工作群(work): 这个其实类似于一个微信群,最大人数是6000人。这种就是一个全功能的群,我们也知道微信群是没法通过外部搜索来加入的,只能通过邀请制。这种群是可以没有群主和管理员的,但是因为是邀请制,理论上第一个人就是群主。
- 陌生人社交群(public):这个类似于qq群,最大人数也是6000人,可以通过群号来添加。然后群主可以来确认是否加入。所以这种群肯定是有群主和管理员的。
- 临时会议群(meeting):这种一般就是临时拉起的qq群,最大人数也是6000人,可以通过群号来加入。但是是无需邀请的,所以这种群完成任务后就尽快关闭。
- 直播群(acchatroom):这个就是直播场景,当然跟前面1,2,3种有特别大的区别,其实就是我们常说的聊天室。聊天室一般都是没有人数上限的,因为相比群来说阉割了很多功能。
- 社群(community) :这个一般认为是一个bbs的场景,人数理论上也是没有上限的。
同时我们可以看到腾讯的im sdk里支持3种消息的qos
- high:一般是红包和礼物信息
- normal:一般普通消息
- low:低优先级的消息比如点赞这样的消息
所以从研发角度来看,就是1,2,3这3种和4和5这两种群的差异,以及内部大概是如何实现的。