引用:ZJoker 发表于 2022-11-04 22:56 文章没有提到额外的发号服务吧 |
|
今天读完感觉怪,可能是我钻牛角尖了 假如同一个群聊的两条消息,在同一时间到达不同的两个消息服务,并且获取消息id, 那不就满足了时间相同,不自旋,会话类型和会话id相同了吗 然后得出一个重复的消息Id ![]() |
引用:穷屌丝2 发表于 2024-08-13 18:20 你可以看融云的另一个产品,服务端生成id后,通过ack的机制把消息id带回客户端 |
引用:xiaoskery2 发表于 2023-08-21 15:40 会话id不需要全局唯一吧,只要保证用户个人不重复就行,2的22次方有四百多万呢,一个客户怎么可能使用四百多万的会话 |
引用:JackJiang 发表于 2026-05-08 17:35 好的,谢谢Jack老师 |
引用:helloc 发表于 2026-05-08 17:07 网页端你一样可以js代码去生成,规则一致即可 |
引用:JackJiang 发表于 2026-05-08 16:58 emmm,客户端我理解,如果是网页端咋办呢 |
引用:helloc 发表于 2026-05-08 15:35 最方便的是办法:哪个端发出的消息就哪个端生成 |
| 假如产品是多端的话,这些发号器是在哪个阶段给id生成给消息啊 |
引用:JackJiang 发表于 2023-08-21 16:01 会话和qq号是不一样的,一个QQ号有N个会话 |
引用:ZJoker 发表于 2022-11-04 22:56 怎么个流程呢,是先不带id发送给服务端吗,服务端生成填充。那么客户端的消息没id,什么时候能给到他呢? |
引用:xiaoskery2 发表于 2023-08-21 15:40 qq活了24年了,qq号现在才多少位。。。 先不说这22位能不能正的用完,假使真的会用完,我估计公司肯定比这个id先走。。。 |
|
会话类型+会话id一共只有22位,能表示的会话会不会太少了?冲突了怎么办? 像有匿名用户的场景,会不断的产生匿名账号,匿名账号每次都会产生新的会话id,时间长了会话id就不够用了。 |
引用:HK意境 发表于 2023-02-10 21:18 融云的是全局唯一 |
| 这相当于是全局递增的是吧,不能做到会话级别递增吧 |
| 集群模式如何确保ID不重复, 因为ID没有work_id 信息 |
引用:林北lpepsi 发表于 2021-09-11 23:32 有专门的ID发号器服务 |
| 想问一下,使用这个算法生成的id,是不是就不需要另外弄一个id生成服务了? |
| 有个疑惑,ID生成是在哪里生成,是客户端每次要发送消息前,请求这个ID生成的服务嘛,然后把生成的ID加到消息中发给服务器 |