买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种负载均衡的代码重构的方法、装置及设备_苏州浪潮智能科技有限公司_201711049650.5 

申请/专利权人:苏州浪潮智能科技有限公司

申请日:2017-10-31

公开(公告)日:2021-01-08

公开(公告)号:CN107707672B

主分类号:H04L29/08(20060101)

分类号:H04L29/08(20060101);H04L29/12(20060101);H04L12/24(20060101)

优先权:

专利状态码:有效-授权

法律状态:2021.01.08#授权;2018.03.16#实质审查的生效;2018.02.16#公开

摘要:本发明公开了一种负载均衡的代码重构的方法,包括:在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;根据所述PDNS配置文件,启动域名解析进程;其中,所述域名解析进程的个数为一个;在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。通过启动一个域名解析进程,将原连接数收集发送进程与连接数接收进程在功能不变的前提下以线程的方式在该域名解析进程中启动,使多进程的负载均衡服务优化为单进程的负载均衡服务,提高了程序的稳定性,使代码维护容易、方便。本发明还公开了一种负载均衡的代码重构的装置、设备及计算机可读存储介质,均具有上述有益效果。

主权项:1.一种负载均衡的代码重构的方法,其特征在于,包括:在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;其中所述域名解析进程的个数为一个;启动所述域名解析进程后,利用while函数循环从PDNS获取域名解析请求信息,并对所述域名解析请求信息进行验证及解析;在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。

全文数据:一种负载均衡的代码重构的方法、装置及设备技术领域[0001]本发明涉及分布式文件系统领域,特别是涉及一种负载均衡的代码重构的方法、装置、设备及计算机可读存储介质。背景技术[0002]在分布式文件系统中,负载均衡可以提供可控的轮询策略、连接数策略及域名解析服务等。现有负载均衡包含连接数收集发送模块、连接数接收模块、以及域名解析模块。其中连接数收集发送模块启动时有3个进程,连接数接收模块启动时有i个进程,域名解析模块会被跨平台开源^或名系统服务组件PDNS启动5个进程。现有负载均衡技术服务程序的进程g多,且进程间采用共享内存、信号量的方式进行数据共享及同步,这种多进程及进程间共享内存的方式使故障维护、问题定位及修复变得较为困难,且也容易产生不可预知的问题。并且,多进程的负载均衡会对程序的稳定性及代码维护带来很大的困难,负载均衡服务的启动、重启、关闭等管理也比较繁琐。[0003]因此,如何解决上述技术问题是本领域技术人员目前需要解决的问题。发明内容[0004]本发明的目的是提供一种负载均衡的代码重构的方法,通过将原连接数收集发送进程与连接数接收进程在功能不变的前提下以线程的方式在域名解析进程中启动,使多进程的负载均衡程序服务优化为单进程的负载均衡服务,提高了程序的稳定性,使代码维护容易、方便。本发明的另一目的是提供一种负载均衡的代码重构的装置、设备及计算机可读存储介质。[0005]为解决上述技术问题,本发明提供了一种负载均衡的代码重构的方法,包括:[0006]在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;[0007]根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;其中所述域名解析进程的个数为一个;[0008]在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。[0009]优选的,所述创建连接数收集发送线程包括:[0010]创建连接数收集发送主程序线程;[0011]对连接数配置文件进行预处理;[0012]在所述连接数收集发送主程序线程中创建连接数收集线程、连接数发送线程以及循环更新虚拟IP线程。[0013]优选的,所述创建连接数接收线程包括:[0014]创建SNMP接收线程;[0015]加载负载均衡配置文件。[0016]优选的,所述方法还包括:[0017]设置全局变量,利用所述全局变量分别存储所述连接数配置文件及所述负载均衡配置文件。[0018]优选的,所述方法还包括:[0019]对所述全局变量进行读和或写操作时,对所述全局变量进行加锁处理。[0020]本发明还提供了一种负载均衡的代码重构的装置,包括:[0021]配置单元,用于在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;[0022]启动单元,用于根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;[0023]创建单元,用于在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。[0024]优选的,所述创建单元包括:[0025]第一创建子单元,用于创建连接数收集发送主程序线程;[0026]处理子单元,用于对连接数配置文件进行预处理;[0027]第二创建子单元,用于在所述连接数收集发送主程序线程中创建连接数收集线程、连接数发送线程以及循环更新虚拟IP线程。[0028]优选的,所述装置还包括:[0029]设置单兀,用于设置全局变量,利用所述全局变量分别存储所述连接数配置文件及所述负载均衡配置文件。[0030]本发明还提供了一种负载均衡的代码重构的设备,包括:[0031]存储器,用于存储计算机程序;[0032]处理器,用于执行所述计算机程序时实现如上述任一项所述的负载均衡的代码重构的方法的步骤。[0033]本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的负载均衡的代码重构的方法的步骤。[0034]本发明所提供的负载均衡重构的方法,在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;其中,所述域名解析进程的个数为一个;在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。[0035]可见,相对于原多进程的负载均衡服务,本发明根据PDNS配置参数,启动i个域名解析进程,而不再是启动5个域名解析进程;将原连接数收集发送进程以及原连接数接收进程在保持功能不变的前提下以线程的方式在域名解析进程中启动,而不再是启动的3个连接数收集发送进程以及启动1个连接数接收进程。启动1个域名解析进程,在所述域名解析进程中启动连接数收集发送线程和连接数接收线程以执行相关的操作的方法提高了程序的稳定性,使代码维护更加容易、方便,并且使负载均衡服务的启动、重启、关闭等管理更加简单。[0036]本发明所提供的负载均衡的代码重构的装置、设备及计算机可读存储介质均具有上述技术效果。附图说明[0037]为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。[0038]图1为本发明提供的一种负载均衡的代码重构的方法的流程图;[0039]图2为本发明提供的一种负载均衡的代码重构的装置的结构示意图;[0040]图3为本发明提供的一种负载均衡的代码重构的设备的示意图。具体实施方式[0041]本发明的核心是提供一种负载均衡的重构方法,通过将原连接数收集发送进程与连接数接收进程在功能不变的前提下以线程的方式在域名解析进程中启动,使多进程的负载均衡程序服务优化为单进程的负载均衡服务,提高了程序的稳定性,使代码维护容易、方便。本发明的另一核心是提供一种负载均衡的装置、设备及计算机可读存储介质。[0042]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0043]请参照图1,图1为本发明所提供的一种负载均衡的代码重构的方法的流程图,包括:[0044]S100:在PDNSPowerDomainNameSystem,开源域名系统组件配置文件中配置启动负载均衡进程数量的参数、取消监听TCPTransmissionControlProtocol,传输控制协议请求的参数以及请求信息丢失最大个数的参数;[0045]具体的,可以在ectpdnspdns.conf文件中配置如下参数:[0046]distributor-threads=1启动负载均衡进程数量[0047]disable-tcp=yes取消监听TCP请求[0048]max-queue-length=50请求信息丢失最大个数[0049]S2〇0:根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;其中,域名解析进程的个数为一个;[0050]其中,启动域名解析进程后,利用while函数循环从PDNS获取域名解析请求信息,并对域名解析请求信息进行验证及解析。[0051]S300:在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。[0052]优选的,创建连接数收集发送线程包括:[0053]创建连接数收集发送主程序线程;[0054]对连接数配置文件进行预处理;[0055]在连接数收集发送主程序线程中创建连接数收集线程、连接数发送线程以及循环更新虚拟IPInternetProtocol,网络协议线程。[0056]具体的,创建连接数收集发送主程序线程可以为创建main_process线程;对连接数配置文件进行预处理可以为。116。1^_?3186_11111;^16加载处理1;[111^.\1111配置文件。[0057]其中,连接数收集线程、连接数发送线程及循环更新虚拟IP线程分别根据预设时间间隔循环执行。利用连接数发送线程将连接数发送至指定IP节点;利用循环更新虚拟IP线程更新物理IP虚拟IP对照表。[0058]优选的,创建连接数接收线程包括:[0059]创建SNMPSimpleNetworkManagementProtocol,简单网络管理协议)接收线程;[0060]加载负载均衡配置文件信息。[0061]具体的,创建SNMP接收线程可以为创建snmpreceive线程;加载负载均衡配置文件可以为加载loadbalance•xml配置文件。[0062]进一步,连接数接收线程创建完成后,可利用该连接数接收线程通过SNMP协议循环接收trap信息,并将NFSNetworkFileSystem,网络文件系统)连接数、CIFSCommonInternetFileSystem,通用网络文件系统连接数保存至内存。[0063]综上所述,本发明所提供的负载均衡的代码重构的方法,在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;根据启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数,启动域名解析进程;在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。[0064]可见,相对于原多进程的负载均衡服务,本发明根据负载均衡的配置参数,启动1个域名解析进程,而不再是启动5个域名解析进程;将原连接数收集发送进程以及原连接数接收进程在保持功能不变的前提下以线程的方式在域名解析进程中启动,而不再是启动原来的3个连接数收集发送进程以及启动1个连接数接收进程。启动1个域名解析进程,在所述域名解析进程中启动连接数收集发送线程和连接数接收线程以执行相关的操作的方法提高了程序的稳定性,使代码维护更加容易、方便,并且使负载均衡服务的启动、重启、关闭等管理更加简单。[0065]作为一种优选的实施例,该方法还包括:[0066]设置全局变量,利用全局变量分别存储负载均衡配置文件及连接数配置文件。[0067]具体的,在上述启动一个域名解析进程,在该域名解析进程中创建连接数收集线程、连接数发送线程、循环更新虚拟IP线程及连接数接收线程的基础上,设置2个全局变量,分别存储负载均衡配置文件与连接数配置文件;此外,还可以再设置2个全局变量,分别存储各节点连接数信息及物理IP虚拟IP对照表。[0068]该优选实施例,域名解析进程及各线程均可以直接访问全局变量,无需进行数据共享通讯与同步,从而避免了出现共享内存死锁等现象的发生。[0069]优选的,该方法还包括:[0070]对全局变量进行读和或写操作时,对全局变量进行加锁处理。[0071]具体的,域名解析进程及各线程对全局变量进行读和或写操作时,对全局变量进行加锁处理,可以保证数据的准确性。[0072]本发明还提供了一种负载均衡的代码重构的装置,下面对本发明提供的负载均衡的代码重构的装置进行介绍,下文描述的该装置可以与上文描述的负载均衡的代码重构的方法相互对应参照。如图2所示,该装置包括:[0073]配置单元1,用于在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;[0074]启动单元2,用于根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;[0075]创建单元3,用于在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。[0076]优选的,创建单元3包括:[0077]第一创建子单元,用于创建连接数收集发送主程序线程;[0078]处理子单元,用于对连接数配置文件进行预处理;[0079]第二创建子单元,用于在连接数收集发送主程序线程中创建连接数收集线程、连接数发送线程以及循环更新虚拟IP线程;[0080]优选的,该装置还包括:[0081]设置单兀,用于设置全局变量,利用所述全局变量分别存储所述连接数配置文件及所述负载均衡配置文件。[0082]本发明还提供了一种负载均衡的代码重构的设备,下文描述的该设备可与上文描述的负载均衡的代码重构的方法对应参照。如图3所示,该设备包括:[0083]存储器4,用于存储计算机程序;[0084]处理器5,用于执行所述计算机程序时实现如下步骤:[0085]在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;根据所述启动负载均衡进程[0086]数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。[0087]本发明还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如下步骤:[0088]在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。[0089]说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、计算机可读存储介质及车辆而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。[0090]专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功阮九兒以使件还疋软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。[0091]结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器RAM、内存、只读存储器ROM、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。[0092]以上对本发明所提供的负载均衡的代码重构的方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

权利要求:1.一种负载均衡的代码重构的方法,其特征在于,包括:在PDNS配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述丨青求信息丢失最大个数的参数,启动域名解析进程;其中所述域名解析进程的个数为一个;在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。2.根据权利要求1所述的方法,其特征在于,所述创建连接数收集发送线程包括:创建连接数收集发送主程序线程;对连接数配置文件进行预处理;在所述连接数收集发送主程序线程中创建连接数收集线程、连接数发送线程以及循环更新虚拟IP线程。3.根据权利要求2所述的方法,其特征在于,所述创建连接数接收线程包括:创建SNMP接收线程;加载负载均衡配置文件。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:设置全局变量,利用所述全局变量分别存储所述连接数配置文件及所述负载均衡配置文件。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:对所述全局变量进行读和或写操作时,对所述全局变量进行加锁处理。6.—种负载均衡的代码重构的装置,其特征在于,包括:配置单元,用于在PDNS的配置文件中配置启动负载均衡进程数量的参数、取消监听TCP请求的参数以及请求信息丢失最大个数的参数;启动单元,用于根据所述启动负载均衡进程数量的参数、所述取消监听TCP请求的参数以及所述请求信息丢失最大个数的参数,启动域名解析进程;创建单元,用于在所述域名解析进程中创建连接数收集发送线程及连接数接收线程。7.根据权利要求6所述的装置,其特征在于,所述创建单元包括:第一创建子单元,用于创建连接数收集发送主程序线程;处理子单元,用于对连接数配置文件进行预处理;第二创建子单元,用于在所述连接数收集发送主程序线程中创建连接数收集线程、连接数发送线程以及循环更新虚拟IP线程。8.根据权利要求7所述的装置,其特征在于,所述装置还包括:设置单兀,用于设置全局变量,利用所述全局变量分别存储所述连接数配置文件的信息、所述负载均衡配置文件的信息、各节点连接数信息及物理IP虚拟IP对照表。9.一种负载均衡的代码重构的设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的负载均衡的代码重构的方法的步骤。10.—种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的负载均衡的代码重构的方法的步骤。

百度查询: 苏州浪潮智能科技有限公司 一种负载均衡的代码重构的方法、装置及设备

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

相关技术
相关技术
相关技术