引用: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加到消息中发给服务器 |
左右移的时候丢弃的数据,反解析时岂不是可能无法得到正确的值? |
引用:JackJiang 发表于 2021-07-07 18:34 好的谢谢楼主 |
引用:逍遥小子 发表于 2021-07-07 18:09 id用数字只能说比较大小更直接,字符串还不是一样可以有顺序,只是不直观而已,就看你要怎么用了 |
楼主好,请问下,消息ID一般服务端有用作消息顺序性排序,如果是字符串,应该比较不了大小把 |
引用:JackJiang 发表于 2020-01-18 20:25 请问集群环境下,服务器时钟不一致,会不会导致时间戳不一样造成消息乱序? |
引用:王卿 发表于 2020-01-18 18:22 你说的理论上确实存在这种可能性,但现实来说几率小到可以忽略,当然程序员都是这种思维。 不过,记住做im不是做支付这类金融系统,数据可以允许万有一失(腾讯就是一直用这个原则设计qq的),聊天消息相当于自然语言,是有上下文关系的,系统做为容错机制扔掉一条冲突的消息,完全可以理解,也不会出现什么大不了的事。 |
消息 id 客户端来生成可以吗? |
引用:高双文 发表于 2019-11-19 10:44 会话id不需要hash啊,会话id(比如群id号)可以用唯一主键的方式生成,没有什么问题 |
我有一个不明白的地方,就是会话id如果hash 冲突了,那不就表明不能通过会话类型和会话id唯一确定了啊 |