中间件软件实现TCP通信互载均衡方法技术

技术编号:29083234 阅读:19 留言:0更新日期:2021-06-30 09:45
本发明专利技术公开了一种中间件软件实现TCP通信互载均衡方法,利用IP网络通信协议中的组播通信技术,将通信系统中各中间件服务器节点的通信地址和服务器的处理能力、连接数、连接速度信息采取一对多数据广播的形式通知所有客户端,客户端根据负载均衡算法中加权轮转、加权最小连接数及局部性的最小连接与基于响应时间的WLC算法的组合选择连接最优的服务器,实现互载均衡的功能。本发明专利技术通过在纯中间件应用软件中增加互载均衡的功能,在不增加硬件和额外成本的情况下,同时部署两个以上相同功能的中间件服务器,来替代硬件互载均衡设备,客户端系统可以在多个中间件服务器中根据负载情况自动切换,明显提高了系统的可靠性和运行效率,增强了系统的互载能力。增强了系统的互载能力。

【技术实现步骤摘要】
中间件软件实现TCP通信互载均衡方法


[0001]本专利技术涉及计算机网络信息
,更具体涉及一种中间件软件实现 TCP通信互载均衡方法。

技术介绍

[0002]随着计算机网络和软件技术的快速发展和数据传输对互载均衡的高可靠性要求,各行各业都在寻求计算机软件辅助管理,管理系统在使用过程中也越来越复杂和完善,人们的工作和生活越来越离不开计算软件和通信网络。因此,市场上涌现出硬件互载均衡设备(装置)或软、硬件相结合的设备(装置)。
[0003]应用软件的可靠性直接影响着人们的工作生生活,绝大多数业务功能的应用软件结构上还是比较简单的,特别是中小型企业、软件系统,由于投入成本的有限,系统的可靠性并不高,其中最主要的是就中间层软件服务器节点都存在单点故障,可靠性差的问题,一旦出现故障整个系统就会瘫痪,业务全部停止,产生的影响是非常大的。
[0004]使用硬件网络负载均衡器的缺点为:
[0005]1)使用硬件网络负载均衡器,最少要增加近10万元的硬件成本,对于一些中小型公司或系统业务量不大的公司,相对来说这个硬件的投入成本是非常高的,很多公司没有这个投入预算,但系统的可靠性问题不会因为业务量小就不存在,因此需要使用低成本的方案来代替。
[0006]2)硬件网络负载均衡器判定服务器失效的过程依赖于网络协议,所有的算法判定、算法使用的时间也比较长,一般都要经过60秒左右等待时间,在切换后台服务器的会话连接时,客户端软件会产生明显的网络通信错误,也要一定的恢复时间,没有办法做到客户端无感知、毫秒级的通信会话连接切换。
[0007]3)使用硬件网络负载均衡器,网络管理的配置也十分复杂,对技术要求高,需要专业的网络工程师才能应用,一般的系统运维人员是不具备这个技术能力的,因此增加了人力资源的投入以及运维成本。

技术实现思路

[0008]本专利技术需要解决的技术问题是提供一种中间件软件实现TCP通信互载均衡方法,以解决采用硬件网络负载均衡器投入成本高、算法判定和算法使用的时间长、运维投入成本高的问题,以使用纯软件技术提供低成本的解决方法,实现互载均衡的功能,以满足中小型应用场景。
[0009]为解决上述技术问题,本专利技术所采取的技术方案如下:
[0010]中间件软件实现TCP通信互载均衡方法,利用IP网络通信协议中的组播通信技术,将通信系统中各中间件服务器节点的通信地址和服务器的处理能力、连接数、连接速度信息采取一对多数据广播的形式通知所有客户端,客户端根据负载均衡算法中加权轮转、加权最小连接数及局部性的最小连接与基于响应时间的WLC算法的组合选择连接最优的服务
器,实现互载均衡的功能。
[0011]进一步优化技术方案,连接最优的服务器为服务器处理能力最强、最小连接数、连接速度最快、本网段优先加权最优的服务器。
[0012]进一步优化技术方案,具体包括以下步骤:
[0013]S1、在中间件应用软件中使用组播通信协议,中间件应用软件启动后定时地将各自的通讯信息向网络组播传输,同时接收所有中间件客户端程序的查询连接地址消息并及时应答;
[0014]S2、所有中间件客户端程序启动后,通过组播接收网络中的中间件服务器的服务器处理能力、连接数、连接速度消息,或通过组播发送查询中间件服务器的服务器处理能力、连接数、连接速度消息,然后将接收到中间件服务器通信连接参数保存在内存中,维持可用中间件服务器列表;
[0015]S3、中间件客户端程序需要连接中间件服务器时,从内存的中间件服务器列表中根据负载均衡算法与基于响应时间的WLC算法的组合取得一个最优服务器进行连接,如果连接失败或在数据传送过程中产生通信错误,再从内存的中间件服务器列表中获取下一个次优的服务器,重新创建连接,重发失败的数据。
[0016]进一步优化技术方案,所述步骤S1中,通讯信息包括通信地址、端口和连接方式。
[0017]进一步优化技术方案,在进行步骤S1前,需定义服务器通信连接参数组播查询和应答通信协议;
[0018]中间件服务器按照通信协议,监控组播端口,接收客户端的RMAD消息,收到正确的消息后使用MSAD消息发送本服务器的通信连接参数,声明本服务器正常在线和相关信息;
[0019]客户端程序按照通信协议,监控组播端口,接收中间件服务器的MSAD消息,并在内存中维持可靠的通信服务器列表,如果没有收到任何中间件服务器的MSAD消息,会自动发送RMAD消息查询网络中的中间件服务器;
[0020]中间件客户端程序在连接中间件应用服务器时根据负载均衡算法与基于响应时间的WLC算法的组合,选择本网段互载最轻的服务器。
[0021]进一步优化技术方案,服务器通信连接参数组播查询和应答通信协议的定义过程为:
[0022]将传输的内容全部转化为可见字符;
[0023]将数据包中的信息分设为发送源信息、功能信息和数据三部分;
[0024]对功能代码进行定义。
[0025]进一步优化技术方案,在选择本网段互载最轻的服务器后,当前连接的中间件服务器关闭或硬件、网络故障时,重新选择服务器,出故障的通信服务器地址在指定的时间内没有收到更新消息将从通信服务器列表中移除。
[0026]进一步优化技术方案,所述中间件服务器与客户端所在网络中不支持组播通信协议时,在客户端手工配置好中间件服务器列表,实现中间件服务器与客户端之间的互载均衡功能。
[0027]由于采用了以上技术方案,本专利技术所取得技术进步如下。
[0028]本专利技术是使用中间件服务器纯软件的方法实现互载均衡的功能,来满足中小型应用场景的需要,能够通过低成本实现多点容错、业务功能互载均衡的高可靠性要求。
[0029]本专利技术通过在纯中间件应用软件中增加互载均衡的功能,在不增加硬件和额外过多成本的情况下,同时部署两个以上相同功能的中间件服务器(软件),来替代硬件互载均衡设备,客户端系统可以在多个中间件服务器中根据负载情况自动切换,同样可以明显提高系统的可靠性和运行效率,排除了系统的单点故障,同时增强了系统的互载能力,能够最大程度地降低网络构建成本,取得了明显的经济效益。
[0030]本专利技术中间件应用软件中使用软件方法实现互载均衡,相对于硬件负载均衡器除了节省成本和应用配置简单的优点外,在切换服务器的速度方面比硬件互载均衡器更快,可以达到毫秒级的均衡切换,在使用者几乎没有任何察觉情况下,系统就自动完成了切换,保证了业务功能不会中断。
[0031]本专利技术中间件应用软件中使用软件方法实现互载均衡,最大程度地降低了系统运维人员对硬件设备配置的技术能力的要求。
具体实施方式
[0032]下面将结合具体实施例对本专利技术进行进一步详细说明。
[0033]一种中间件软件实现TCP通信互载均衡方法,利用IP网络通信协议中的组播通信技术,将通信系统中各中间件服务器节点的通信地址和服务器的处理能力、连接数、连接速度等信息采取一对多数据广播的形式通知所有客户本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.中间件软件实现TCP通信互载均衡方法,其特征在于:利用IP网络通信协议中的组播通信技术,将通信系统中各中间件服务器节点的通信地址和服务器的处理能力、连接数、连接速度信息采取一对多数据广播的形式通知所有客户端,客户端根据负载均衡算法中加权轮转、加权最小连接数及局部性的最小连接与基于响应时间的WLC算法的组合选择连接最优的服务器,实现互载均衡的功能。2.根据权利要求1所述的中间件软件实现TCP通信互载均衡方法,其特征在于:连接最优的服务器为服务器处理能力最强、最小连接数、连接速度最快、本网段优先加权最优的服务器。3.根据权利要求1所述的中间件软件实现TCP通信互载均衡方法,其特征在于:具体包括以下步骤:S1、在中间件应用软件中使用组播通信协议,中间件应用软件启动后定时地将各自的通讯信息向网络组播传输,同时接收所有中间件客户端程序的查询连接地址消息并及时应答;S2、所有中间件客户端程序启动后,通过组播接收网络中的中间件服务器的服务器处理能力、连接数、连接速度消息,或通过组播发送查询中间件服务器的服务器处理能力、连接数、连接速度消息,然后将接收到中间件服务器通信连接参数保存在内存中,维持可用中间件服务器列表;S3、中间件客户端程序需要连接中间件服务器时,从内存的中间件服务器列表中根据负载均衡算法与基于响应时间的WLC算法的组合取得一个最优服务器进行连接,如果连接失败或在数据传送过程中产生通信错误,再从内存的中间件服务器列表中获取下一个次优的服务器,重新创建连接,重发失败的数据。4.根据权利要求3所述的中间件软件实现TCP通信互载均衡方法,其特征在于:所述步骤S...

【专利技术属性】
技术研发人员:刘建华饶宝星陈祖林
申请(专利权)人:广州市华奕电子科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1