一种基于XMPP协议的跨节点通讯网络请求方法与流程

文档序号:12182996阅读:577来源:国知局

本发明属于电力系统领域,涉及一种基于XMPP协议的跨节点通讯网络请求方法。



背景技术:

随着电力系统的移动互联用户数量越来越多,用户量越来越大,用户数呈现非线性增长,单一节点部署的方式在带宽、硬件等资源上无法满足日益增长的需求,易产生故障,影响用户体验。



技术实现要素:

为降低单一部署节点故障的影响范围,分流即时通讯服务器的负荷和运维压力,本发明的目的是提供一种基于XMPP协议的跨节点通讯网络请求方法,通过该方法实现在多个节点之间通过XMPP协议进行安全稳定的消息发送与接收。

本发明的目的通过以下技术方案实现:

一种基于XMPP协议的跨节点通讯网络请求方法,其特征在于该方法包括以下步骤:

1)定义信任域,对需传送的即时消息进行识别,只有来源于信任域服务器的即时消息,网络请求才能被处理,信任域与IP地址进行绑定,进行校验;

2)定义协议,协议采用HTTP2协议进行通讯,通讯时在URL中增加随机码、校验值、时间戳信息,用于校验头信息,确保来源信息的稳定可靠;

3)定义消息格式,跨节点通讯消息比正常消息增加了crossdomain节点信息,由发送节点自动添加,方便应用识别跨节点消息与非跨节点消息;

4)跨节点消息通过互联网进行传输接收。

本发明中,跨节点消息通过互联网进行传输接收的性能优化方法如下:

1)存离线消息,系统检索用户不在线后立即将消息存放到离线消息队列,异步且批量保存到数据库中;

2)检索域,因为域保存在数据库中,每次发送消息需要查询用户所在域,因此建立用于与域的对应关系,并进行缓存处理,以便用户任意进行域信息切换;

3)传输优化,正常HTTPS通讯需要握手、协调加密算法过程,时延较大,采用HTTP2批量发送消息报文,减少流量提高传输性能。

本发明实现即时通讯服务器多节点部署,减轻单一服务器的压力,分散用户的访问请求,满足用户需求。通过该方法实现在多个节点之间通过XMPP协议进行安全稳定的消息发送与接收。

附图说明

图1是本发明的流程示意图。

具体实施方式

一种基于XMPP协议的跨节点通讯网络请求方法,包括以下步骤:

1)定义信任域,对需传送的即时消息进行识别,只有来源于信任域服务器的即时消息,网络请求才能被处理,信任域与IP地址进行绑定,进行校验。

2)定义协议,协议采用HTTP2协议进行通讯,通讯时在URL中增加随机码、校验值、时间戳信息,用于校验头信息,确保来源信息的稳定可靠。

3)定义消息格式,跨节点通讯消息比正常消息增加了crossdomain节点信息,由发送节点自动添加,方便应用识别跨节点消息与非跨节点消息。

4)因跨节点消息通过互联网进行传输代价大,所以提出对性能进行优化的几种方法:

(1)存离线消息,系统检索用户不在线后立即将消息存放到离线消息队列,异步且批量保存到数据库中。

(2)检索域,因为域保存在数据库中,每次发送消息需要查询用户所在域,因此建立用于与域的对应关系,并进行缓存处理,以便用户可以任意进行域信息切换。

(3)传输优化,正常HTTPS通讯需要握手、协调加密算法过程,时延较大,因此采用HTTP2可以批量发送消息报文,减少流量提高传输性能。

实施例:

如图1所示,节点1的用户向节点2的用户发送即时消息,步骤如下:

1.节点1用户向他所在的节点服务发送即时消息,此消息采用XMPP协议进行发送,比正常协议扩展了crossdomain信息,主要在协议报文消息中添加<crossmain fromdomain=”” todomain=””>,以便应用识别跨节点消息。

2.节点1的即时通讯服务收到节点1用户的消息后,首先检索接收方用户所在的信任域,然后将信息以HTTP2协议的方式发送出去。

3.在消息报文中的URL头信息中增加了随机码、校验值、时间戳信息。

4.节点2收到消息后,首先检查接收方用户是否在线,如不在线,则将消息发送到离线消息队列,并且异步批量保存到节点数据库中。如在线,则将消息推送给用户。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1