本发明涉及信息,特别是涉及websocket的信息共享方法、装置及电子设备。
背景技术:
1、现代应用目前都使用集群部署的方式,当应用使用websocket时,session无法放到存储系统如redis中实现共享,目前广告平台在转化联调的时候需要客户用手机扫描二维码&展示联调进度,后台需要识别二维码已扫描&实时进度更新并实时同步到前端,为了提高实时性&避免资源浪费使用websocket的方式,故需要解决session共享问题。
技术实现思路
1、本发明实施例的目的在于提供websocket的信息共享方法、装置及电子设备,以实现websocket系统中的信息共享。具体技术方案如下:
2、在本发明实施的第一方面,首先提供了一种websocket的信息共享方法,应用于websocket系统的服务器集群中的任一服务器,所述服务器集群中的每一服务器与至少一个客户端连接,每一客户端与一个服务器连接,所述方法包括:
3、针对所述任一服务器,获取第一客户端的消息队列,其中,所述消息队列中包括所述第一客户端存储的第一数据信息;
4、判断获取到的第一数据信息与预先获取到的历史数据信息是否相同;
5、若不相同,则将所述第一数据信息发送至与所述任一服务器相连接的第二客户端,以使所述第二客户端根据接收到的第一数据信息进行自身存储的数据信息的更新。
6、在一种可能的实施方式中,所述针对所述任一服务器,获取第一客户端的消息队列,包括:
7、针对所述任一服务器,获取与该服务器连接的服务器集群中的其它服务器转发的消息队列。
8、在一种可能的实施方式中,在所述针对所述任一服务器,获取第一客户端的消息队列之前,所述方法还包括:
9、针对所述服务器集群中的其它服务器,周期性获取与该服务器连接的第三客户端的消息队列;
10、判断所述第三客户端的消息队列中的数据信息与前一周期获取到的历史数据信息是否相同;
11、若不相同,则向所述服务器集群广播所述第三客户端的消息队列。
12、在一种可能的实施方式中,所述若不相同,则将所述第一数据信息发送至与所述任一服务器相连接的第二客户端,以使所述第二客户端根据接收到的第一数据信息进行自身存储的数据信息的更新,包括:
13、若不相同,则识别与所述任一服务器长连接的第二客户端;
14、将所述第一数据信息发送至所述第二客户端,以使所述第二客户端根据接收到的第一数据信息进行自身存储的数据信息的更新。
15、在本发明实施的第二方面,还提供了一种websocket的信息共享装置,应用于websocket系统的服务器集群中的任一服务器,所述服务器集群中的每一服务器与至少一个客户端连接,每一客户端与一个服务器连接,所述装置包括:
16、消息获取模块,用于针对所述任一服务器,获取第一客户端的消息队列,其中,所述消息队列中包括所述第一客户端存储的第一数据信息;
17、信息判断模块,用于判断获取到的第一数据信息与预先获取到的历史数据信息是否相同;
18、信息更新模块,用于若不相同,则将所述第一数据信息发送至与所述任一服务器相连接的第二客户端,以使所述第二客户端根据接收到的第一数据信息进行自身存储的数据信息的更新。
19、在一种可能的实施方式中,所述消息获取模块,具体用于针对所述任一服务器,获取与该服务器连接的服务器集群中的其它服务器转发的消息队列。
20、在一种可能的实施方式中,所述装置还包括:
21、队列获取模块,用于针对所述服务器集群中的其它服务器,周期性获取与该服务器连接的第三客户端的消息队列;
22、数据判断模块,用于判断所述第三客户端的消息队列中的数据信息与前一周期获取到的历史数据信息是否相同;
23、信息广播模块,用于若不相同,则向所述服务器集群广播所述第三客户端的消息队列。
24、在一种可能的实施方式中,所述信息更新模块,包括:
25、客户端识别子模块,用于若不相同,则识别与所述任一服务器长连接的第二客户端;
26、信息更新子模块,用于将所述第一数据信息发送至所述第二客户端,以使所述第二客户端根据接收到的第一数据信息进行自身存储的数据信息的更新。
27、在本发明实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
28、存储器,用于存放计算机程序;
29、处理器,用于执行存储器上所存放的程序时,实现上述任一所述的websocket的信息共享方法。
30、在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的websocket的信息共享方法。
31、在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的websocket的信息共享方法。
32、本发明实施例提供的websocket的信息共享方法、装置及电子设备,应用于websocket系统的服务器集群中的任一服务器,所述服务器集群中的每一服务器与至少一个客户端连接,每一客户端与一个服务器连接,所述方法包括:针对所述任一服务器,获取第一客户端的消息队列,其中,所述消息队列中包括所述第一客户端存储的第一数据信息;判断获取到的第一数据信息与预先获取到的历史数据信息是否相同;若不相同,则将所述第一数据信息发送至与所述任一服务器相连接的第二客户端,以使所述第二客户端根据接收到的第一数据信息进行自身存储的数据信息的更新。可以通过服务器在获取到第一客户端的消息队列之后,判断本次获取到的消息队列和预先获取到的是否相同,若不相同则进行服务器中存储的数据信息的更新,从而实现服务器集群中的服务器跟随客户端进行信息更新。
1.一种websocket的信息共享方法,其特征在于,应用于websocket系统的服务器集群中的任一服务器,所述服务器集群中的每一服务器与至少一个客户端连接,每一客户端与一个服务器连接,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述针对所述任一服务器,获取第一客户端的消息队列,包括:
3.根据权利要求2所述的方法,其特征在于,在所述针对所述任一服务器,获取第一客户端的消息队列之前,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述若不相同,则将所述第一数据信息发送至与所述任一服务器相连接的第二客户端,以使所述第二客户端根据接收到的第一数据信息进行自身存储的数据信息的更新,包括:
5.一种websocket的信息共享装置,其特征在于,应用于websocket系统的服务器集群中的任一服务器,所述服务器集群中的每一服务器与至少一个客户端连接,每一客户端与一个服务器连接,所述装置包括:
6.根据权利要求5所述的装置,其特征在于,
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
8.根据权利要求5所述的装置,其特征在于,所述信息更新模块,包括:
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-4任一所述的方法步骤。