默认
发表评论 30
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
[已回复] RainbowChat-Web中base_config配置,改成false对消息保存影响吗?
[已回复] RainbowChat-Web中base_config配置,改成false对消息保存影响吗?_c61b5b0d69ec1f169a8dbc265cb94fa8_ZQevENox31AAAAABJRU5ErkJggg==.png RainbowChatServer里base_cofnig配置文件里,这里如果改成false,会对消息保存有影响吗?

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

推荐方案
评论 30
必须为true,否则影响你web产品中的某些实时指令。
引用:JackJiang 发表于 2022-06-22 13:12
必须为true,否则影响你web产品中的某些实时指令。

可是现在改为true后,保存到离线消息表的消息,同一条消息内容会重复存两次,上次重复的问题好像是这样出现的,mqserver保存了一次,rchatserver也保存了一次
引用:JackJiang 发表于 2022-06-22 13:12
必须为true,否则影响你web产品中的某些实时指令。

可是现在改为true后,保存到离线消息表的消息,同一条消息内容会重复存两次,上次重复的问题好像是这样出现的,mqserver保存了一次,rchatserver也保存了一次
引用:qinghezi183 发表于 2022-06-22 14:04
可是现在改为true后,保存到离线消息表的消息,同一条消息内容会重复存两次,上次重复的问题好像是这样出 ...

把RainbowChatServer和node那个server里,bridge开关都开成true
引用:JackJiang 发表于 2022-06-22 15:12
把RainbowChatServer和node那个server里,bridge开关都开成true

大佬,我现在把RainbowChatServer和node那个server里,bridge开关都开成true了,

不知道是不是产品原来就这样还是之前开发的人改的

现在遇到的问题是:
RainbowChatServer_web发消息,会有两个队列,一个队列在RainbowChatMQServer消费了,它这里估计之前有人改动过,现在保存了实时的聊天记录的同时顺便又做了往离线消息表插入了一条消息记录;另一个队列在RainbowChatServer消费了,这里应该是之前没动过,就是往离线消息表里存了一条离线消息记录;

然后就现在RainbowChatServer设置为true后,就会有重复的离线消息记录出现了;

我如果RainbowChatServer设置为false,RainbowChatServer_web设置为true,它就只会走RainbowChatMQServer消费,这时候就会有一个消费队列,按照原先的人的逻辑,保存了聊天记录顺便又保存了离线记录,RainbowChatServer里设置false就不会有任何操作

有什么影响吗?如果RainbowChatServer设置为false,我这里只用到了单聊和群聊、创建群、邀请入群、转让群、退出、解散群、该名称的功能,求大佬指教
引用:qinghezi183 发表于 2022-07-05 14:47
大佬,我现在把RainbowChatServer和node那个server里,bridge开关都开成true了,

不知道是不是产品原 ...

你前面的人也没跟你交接的话,不清楚他改成false的目的是什么,有可能他根据false的情况进行了调整也不是不可能,这样说来,代码就有可能搞乱掉了。。。最好能找到之前的核实一下情况,交接一下
引用:JackJiang 发表于 2022-07-05 15:50
你前面的人也没跟你交接的话,不清楚他改成false的目的是什么,有可能他根据false的情况进行了调整也不是 ...

大佬,我想问下,如果都设置为true后,RainbowChatMQServer里这里是不是原先就只是做了聊天记录的保存操作,没有做其它的离线消息操作啊
引用:qinghezi183 发表于 2022-07-06 09:36
大佬,我想问下,如果都设置为true后,RainbowChatMQServer里这里是不是原先就只是做了聊天记录的保存操 ...

RainbowChatMQServer有两个功能:
一个是保存nodejs服务通过MQ推过来的聊天记录保存功能;
另一个是保存nodejs服务通过mq推过来的离线消息功能。
引用:JackJiang 发表于 2022-07-06 10:03
RainbowChatMQServer有两个功能:
一个是保存nodejs服务通过MQ推过来的聊天记录保存功能;
另一个是保 ...

我看到了,大佬,RainbowChatMQServer有这两个功能,

按照操作,如果都设置为true,

现在RainbowChatMQServer里面的两个功能,只走了一个,就是保存nodejs服务通过mq推过来的聊天记录保存功能;另一个保存离线的功能就没走过;

nodejs服务通过mq推过来的离线消息功能,而是在RainbowChatServer里走了

是对的吗?看操作文档是都要设置为true,然后现在发消息nodejs就会推送两个消息队列,一个保存聊天记录走了RainbowChatMQServer,一个保存离线消息走了RainbowChatServer


什么情况下,保存聊天记录和保存离线消息功能都只走RainbowChatMQServer,不走RainbowChatServer呢?

大佬,RainbowChat-Web我目前只用web端
引用:qinghezi183 发表于 2022-07-06 11:17
我看到了,大佬,RainbowChatMQServer有这两个功能,

按照操作,如果都设置为true,

我觉得你手上的代码有可能逻辑改乱掉了。
我查了一下你们公司的代码,版本是2.0。
要么,你让跟我对接的技术负责人联系一下我,我给你们打包一下最新的代码,你就用这个最新的代码,不改动代码本身(只改必要的配置)的情况下,按你的场景进行测试,如果我给你的代码不出现重复的问题,你就用新代码,去比对你老的代码,看看代码是不是哪里改乱了。或者,干脆用最新的代码,把老代码扔掉。
引用:JackJiang 发表于 2022-07-06 14:38
我觉得你手上的代码有可能逻辑改乱掉了。
我查了一下你们公司的代码,版本是2.0。
要么,你让跟我对接 ...

大佬,代码比对了下,就是因为之前有人加代码了,出现了重复消息的问题,

向大佬咨询个解决方案

RainbowChatMQServer不是有两个功能吗:
一个是保存nodejs服务通过MQ推过来的聊天记录保存功能;
另一个是保存nodejs服务通过mq推过来的离线消息功能。

现在如何设置,让聊天记录的功能和离线消息功能只走RainbowChatMQServer消费?


我现在都设置为true后,web端mq生产了两个队列,一个是聊天记录走了RainbowChatMQServer,一个是离线消息走了RainbowChatServer
确认一下,昨天发你的新版代码,不改动任何逻辑的情况下,不会出现重复对吧
引用:JackJiang 发表于 2022-07-07 16:28
确认一下,昨天发你的新版代码,不改动任何逻辑的情况下,不会出现重复对吧

对,代码比对了下,就是因为有人加了代码,才会出现重复的消息
引用:qinghezi183 发表于 2022-07-11 17:09
对,代码比对了下,就是因为有人加了代码,才会出现重复的消息

嗯 以后记得要交接,改动代码也要版本管理起来,不然接手的人就倒霉了
引用:JackJiang 发表于 2022-07-11 17:11
嗯 以后记得要交接,改动代码也要版本管理起来,不然接手的人就倒霉了

是呢,前人挖坑
引用:qinghezi183 发表于 2022-07-07 14:37
大佬,代码比对了下,就是因为之前有人加代码了,出现了重复消息的问题,

向大佬咨询个解决方案

大佬,能提供个解决方案吗?

我现在想让保存聊天记录和保存离线消息的功能,在rainbowchatMqserver里消费,不走rainbowchatServer里面的,该如何配置实现呢?我这边只能用到了web端
引用:qinghezi183 发表于 2022-07-11 17:19
大佬,能提供个解决方案吗?

我现在想让保存聊天记录和保存离线消息的功能,在rainbowchatMqserver里 ...

没必要折腾,因为现在这样的设计主要是基于RainbowChat和RainbowChat-Web两个产品同时使用时,而像你单独只用RainbowChat-Web的情况比较少见,所以代码看起来好像有点不太优雅,但实际是架构是从两个产品同时部署去考虑的。

如果一定要改,那你就把RainbowChat里有关消息落库的代码改成你web那边先落MQ,再由MQ消息者落库的逻辑,这没什么更多的影响,放心改就好了
引用:JackJiang 发表于 2022-07-11 17:40
没必要折腾,因为现在这样的设计主要是基于RainbowChat和RainbowChat-Web两个产品同时使用时,而像你单独 ...

这些什么配置的改成true的还需要改吗?现在是因为都改成true,web端生成了两个队列,一个是消息落库的走mq消费了,一个是离线消息落库的走了rainbowchat端的mq消费了
引用:JackJiang 发表于 2022-07-11 17:40
没必要折腾,因为现在这样的设计主要是基于RainbowChat和RainbowChat-Web两个产品同时使用时,而像你单独 ...

大佬,您之前不是说RainbowChatMQServer有两个功能吗:
一个是保存nodejs服务通过MQ推过来的聊天记录保存功能;
另一个是保存nodejs服务通过mq推过来的离线消息功能。

我怎么操作?怎么用最少的更改?都走上面的两个功能呢
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部