CN113890879A - 数据访问的负载均衡方法、装置、计算机设备及介质 - Google Patents
数据访问的负载均衡方法、装置、计算机设备及介质 Download PDFInfo
- Publication number
- CN113890879A CN113890879A CN202111063653.0A CN202111063653A CN113890879A CN 113890879 A CN113890879 A CN 113890879A CN 202111063653 A CN202111063653 A CN 202111063653A CN 113890879 A CN113890879 A CN 113890879A
- Authority
- CN
- China
- Prior art keywords
- address
- network request
- request
- type
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000001514 detection method Methods 0.000 claims abstract description 47
- 238000006243 chemical reaction Methods 0.000 claims abstract description 35
- 238000013519 translation Methods 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9014—Indexing; Data structures therefor; Storage structures hash tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/251—Translation of Internet protocol [IP] addresses between different IP versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种数据访问的负载均衡方法、装置、计算机设备及存储介质,所述方法包括:通过接收客户端通过外网发送的第一网络请求,对第一网络请求进行地址转换,得到第二网络请求,对第二网络请求中的URL进行哈希调度,得到第二网络请求中每个请求对应的节点服务器,作为候选服务器,对每个候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器,采用每个目标服务器,对第二网络请求中的每个请求进行响应,采用本发明提高了数据访问负载均衡的精准性,有利于提高数据访问的效率。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种数据访问的负载均衡方法、装置、计算机设备及介质。
背景技术
随着计算机技术的快速发展,越来越多的人通过互联网进行工作、学习、购物、办理业务和获取信息等,一些大型的互联网企业或机构,涉及较多子业务,在一些高峰时段,会面临较高流量,如何快速进行数据访问的响应,是一个比较关注的行业问题。
目前,一些方式是通过增加硬件配置、增加第三方机房托管等方式,来优化数据访问的响应,但这种往往成本较高,在低峰期会产生资源浪费,还有一些方式是通过分片轮询的方式,进行数据访问响应,这种整体上能确保数据访问的正常响应,但在高峰期,会导致数据部分访问延迟过高。
发明内容
本发明实施例提供一种数据访问的负载均衡方法、装置、计算机设备和存储介质,以数据访问的效率。
为了解决上述技术问题,本申请实施例提供一种数据访问的负载均衡方法,包括:
接收客户端通过外网发送的第一网络请求;
对所述第一网络请求进行地址转换,得到第二网络请求;
对所述第二网络请求中的URL进行哈希调度,得到所述第二网络请求中每个请求对应的节点服务器,作为候选服务器;
对每个所述候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器;
采用每个所述目标服务器,对所述第二网络请求中的每个请求进行响应。
可选地,对所述第一网络请求进行地址转换,得到第二网络请求包括:
获取所述第一网络请求对应的源地址和目标地址;
识别所述源地址和所述目标地址的地址类型;
基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求。
可选地,所述预设类型为IPv6类型,所述源地址和所述目标地址的地址类型中存在至少一种不为IPv6类型,所述基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求:
将所述地址类型不为IPv6类型的源地址和/或目标地址作为待转换地址;
将所述待转换地址进行十六进制转换,得到转换地址,所述转换地址包括四个分组;
将所述转换地址的第一组和第二组进行合并,作为更新后的第一组,将所述转换地址的第三组和第四组进行合并,得到更新后的第二组,并将所述更新后的第一组和所述更新后的第二组依序组合,得到更新后的转换地址;
在所述更新后的转换地址前96位进行补零处理,得到所述预设类型的源地址和/或预设类型的目标地址,并基于所述预设类型的源地址和/或预设类型的目标地址和所述第一网络请求,生成所述第二网络请求。
可选地,对所述第二网络请求中的URL进行哈希调度,得到所述第二网络请求中每个请求对应的节点服务器,作为候选服务器包括:
对所述第二网络请求中的每个URL进行哈希计算,得到哈希结果;
获取预设的哈希映射表,并基于所述哈希结果和所述预设的映射关系表,确定每个URL对应的节点服务器,并将每个URL对应的节点服务器均作为所述候选服务器。
可选地,所述对每个所述候选服务器进行可用性检测包括:
基于集群通信,向每个所述候选服务器发送心跳包检测指令;
根据每个所述候选服务器针对所述心跳包检测指令的反馈结果,确定每个所述候选服务器对应的节点状态,作为所述可用性检测的检测结果。
为了解决上述技术问题,本申请实施例还提供一种数据访问的负载均衡装置,包括:
请求接收模块,用于接收客户端通过外网发送的第一网络请求;
地址转化模块,用于对所述第一网络请求进行地址转换,得到第二网络请求;
请求调度模块,用于对所述第二网络请求中的URL进行哈希调度,得到所述第二网络请求中每个请求对应的节点服务器,作为候选服务器;
性能监测模块,用于对每个所述候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器;
请求响应模块,用于采用每个所述目标服务器,对所述第二网络请求中的每个请求进行响应。
可选地,所述地址转化模块包括:
地址获取单元,用于获取所述第一网络请求对应的源地址和目标地址;
类型识别单元,用于识别所述源地址和所述目标地址的地址类型;
地址转换单元,用于基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求。
可选地,所述预设类型为IPv6类型,所述源地址和所述目标地址的地址类型中存在至少一种不为IPv6类型,所述地址转换单元包括:
待转换地址确定子单元,用于将所述地址类型不为IPv6类型的源地址和/或目标地址作为待转换地址;
进制转换子单元,用于将所述待转换地址进行十六进制转换,得到转换地址,所述转换地址包括四个分组;
合并子单元,用于将所述转换地址的第一组和第二组进行合并,作为更新后的第一组,将所述转换地址的第三组和第四组进行合并,得到更新后的第二组,并将所述更新后的第一组和所述更新后的第二组依序组合,得到更新后的转换地址;
地址补全子单元,用于在所述更新后的转换地址前96位进行补零处理,得到所述预设类型的源地址和/或预设类型的目标地址,并基于所述预设类型的源地址和/或预设类型的目标地址和所述第一网络请求,生成所述第二网络请求。
可选地,所述请求调度模块包括:
哈希计算单元,用于对所述第二网络请求中的每个URL进行哈希计算,得到哈希结果;
候选服务器确定单元,用于获取预设的哈希映射表,并基于所述哈希结果和所述预设的映射关系表,确定每个URL对应的节点服务器,并将每个URL对应的节点服务器均作为所述候选服务器。
可选地,所述性能监测模块包括:
心跳检测单元,用于基于集群通信,向每个所述候选服务器发送心跳包检测指令;
结果确定单元,用于根据每个所述候选服务器针对所述心跳包检测指令的反馈结果,确定每个所述候选服务器对应的节点状态,作为所述可用性检测的检测结果。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据访问的负载均衡方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述数据访问的负载均衡方法的步骤。
本发明实施例提供的数据访问的负载均衡方法、装置、计算机设备及存储介质,通过接收客户端通过外网发送的第一网络请求,对第一网络请求进行地址转换,得到第二网络请求,对第二网络请求中的URL进行哈希调度,得到第二网络请求中每个请求对应的节点服务器,作为候选服务器,对每个候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器,采用每个目标服务器,对第二网络请求中的每个请求进行响应,提高了数据访问负载均衡的精准性,有利于提高数据访问的效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的应用环境示意图;
图2是本申请的数据访问的负载均衡方法的一个实施例的流程图;
图3是根据本申请的数据访问的负载均衡装置的一个实施例的结构示意图;
图4是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本实施例数据数据访问请求的处理的应用环境示意图。
请参阅图2,图2示出本发明实施例提供的一种数据访问的负载均衡方法,详述如下:
S201:接收客户端通过外网发送的第一网络请求。
其中,第一网络请求中至少包含两个访问请求。
S202:对第一网络请求进行地址转换,得到第二网络请求。
具体地,对第一网络请求中访问请求的地址进行转换,并根据转换后的地址,生成第二网络请求。
在一具体可选实施方式中,步骤S202中,对第一网络请求进行地址转换,得到第二网络请求包括:
获取第一网络请求对应的源地址和目标地址;
识别源地址和目标地址的地址类型;
基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求。
其中,地址类型包括但不限于IPv4类型和IPv6类型。
优选的,预设类型为IPv6类型。
在一具体可选实施方式中,步骤S202中,预设类型为IPv6类型,源地址和目标地址的地址类型中存在至少一种不为IPv6类型,基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求还包括:
将地址类型不为IPv6类型的源地址和/或目标地址作为待转换地址;
将待转换地址进行十六进制转换,得到转换地址,转换地址包括四个分组;
将转换地址的第一组和第二组进行合并,作为更新后的第一组,将转换地址的第三组和第四组进行合并,得到更新后的第二组,并将更新后的第一组和更新后的第二组依序组合,得到更新后的转换地址;
在更新后的转换地址前96位进行补零处理,得到预设类型的源地址和/或预设类型的目标地址,并基于预设类型的源地址和/或预设类型的目标地址和第一网络请求,生成第二网络请求。
在一具体示例中,一目标地址的地址类型为IPv4类型,具体为135.75.43.52,对该目标地址进行十六进制转换,得到转换地址为87.4B.2B.34,得到的该转化地址87.4B.2B.34串地址一组还是8位,所以需要两组合成,将转换地址的第一组和第二组进行合并,得到874B,将转换地址的第三组和第四组进行合并,得到2B34,并依序组合,得到更新后的转换地址874B.2B34,进而进行前96位补零处理,得到0000:0000:0000:0000:0000:0000:874B:2B34或者::874B:2B34。
S203:对第二网络请求中的URL进行哈希调度,得到第二网络请求中每个请求对应的节点服务器,作为候选服务器。
本实施例中,通过哈希结果找到对应的服务器,因为针对单一个URL的哈希结果是一样的,所以理论上这个URL会被永久分配到固定的一台节点服务器上,另外因为经过了哈希计算,所以分配URL就很均匀,同时访问量也可以达到均衡。
在一具体可选实施方式中,步骤S203中,对第二网络请求中的URL进行哈希调度,得到第二网络请求中每个请求对应的节点服务器,作为候选服务器包括:
对第二网络请求中的每个URL进行哈希计算,得到哈希结果;
获取预设的哈希映射表,并基于哈希结果和预设的映射关系表,确定每个URL对应的节点服务器,并将每个URL对应的节点服务器均作为候选服务器。
其中,哈希映射表就是一种以键-值(key-indexed)存储数据的结构,通过输入待查找的值即key,即可查找到其对应的值,本实施例中,提前预设好每个节点服务器对应的哈希映射表,在得到哈希结果后,根据哈希结果的值,即可确定对应的节点服务器。
S204:对每个候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器。
其中,可用性检测是指对候选服务器的性能状态进行监控,判断是否可以正常使用。
在一具体可选实施方式中,步骤S204中,对每个候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器包括:
基于集群通信,向每个候选服务器发送心跳包检测指令;
根据每个候选服务器针对心跳包检测指令的反馈结果,确定每个候选服务器对应的节点状态,作为可用性检测的检测结果。
在确定候选服务器后,对每个候选服务器进行活性探测,以便确定候选服务器的节点状态。
需要说明的是,在集群中存在多个节点(节点服务器),由于节点自身的一些管控策略和性能等因素,会进行动态的上线下线,因而,为确保后续数据访问请求分发和处理的有效,需要先对节点的状态进行判断。
其中,检测结果包括激活、宕机和未激活。
具体地,通过向每个候选服务器发送心跳包检测指令,判断与该心跳包对应的候选服务器的网络连接端口的链接状态是否正常,并在链接状态处于正常时,候选服务器的节点将根据心跳包检测指令,与服务端进行交互响应。
应理解,通过心跳监控能够及时发现异常,例如在一段时间内没有收到节点服务器对心跳包的反馈,则确认该节点的链接状态存在异常,此时,将该节点从有效节点的列表中移除,避免后续将数据访问请求分发到该节点,同时,及时将该异常情况显示在服务端的交互界面上,以便维护人员及时分析和处理对应的集群节点上出现的相关异常问题。
其中,心跳包就是在目标主机和服务器间定时通知对方自己状态的一个自己定义的命令字,按照一定的时间间隔发送,类似于心跳,所以叫做心跳包。心跳包用于监控SOCKET的可用性,确保服务端与目标主机之间交互的稳定性。
本实施例中,通过心跳检测的方式,快速判断每个候选服务器的状态,筛选出有效的候选服务器,作为目标服务器,确保目标服务器的可用性。
S205:采用每个目标服务器,对第二网络请求中的每个请求进行响应。
本实施例中,通过接收客户端通过外网发送的第一网络请求,对第一网络请求进行地址转换,得到第二网络请求,对第二网络请求中的URL进行哈希调度,得到第二网络请求中每个请求对应的节点服务器,作为候选服务器,对每个候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器,采用每个目标服务器,对第二网络请求中的每个请求进行响应,提高了数据访问负载均衡的精准性,有利于提高数据访问的效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图3示出与上述实施例数据访问的负载均衡方法一一对应的数据访问的负载均衡装置的原理框图。如图3所示,该数据访问的负载均衡装置包括请求接收模块31、地址转化模块32、请求调度模块33、性能监测模块34和请求响应模块35。各功能模块详细说明如下:
请求接收模块31,用于接收客户端通过外网发送的第一网络请求;
地址转化模块32,用于对第一网络请求进行地址转换,得到第二网络请求;
请求调度模块33,用于对第二网络请求中的URL进行哈希调度,得到第二网络请求中每个请求对应的节点服务器,作为候选服务器;
性能监测模块34,用于对每个候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器;
请求响应模块35,用于采用每个目标服务器,对第二网络请求中的每个请求进行响应。
可选地,地址转化模块32包括:
地址获取单元,用于获取第一网络请求对应的源地址和目标地址;
类型识别单元,用于识别源地址和目标地址的地址类型;
地址转换单元,用于基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求。
可选地,预设类型为IPv6类型,源地址和目标地址的地址类型中存在至少一种不为IPv6类型,地址转换单元包括:
待转换地址确定子单元,用于将地址类型不为IPv6类型的源地址和/或目标地址作为待转换地址;
进制转换子单元,用于将待转换地址进行十六进制转换,得到转换地址,转换地址包括四个分组;
合并子单元,用于将转换地址的第一组和第二组进行合并,作为更新后的第一组,将转换地址的第三组和第四组进行合并,得到更新后的第二组,并将更新后的第一组和更新后的第二组依序组合,得到更新后的转换地址;
地址补全子单元,用于在更新后的转换地址前96位进行补零处理,得到预设类型的源地址和/或预设类型的目标地址,并基于预设类型的源地址和/或预设类型的目标地址和第一网络请求,生成第二网络请求。
可选地,请求调度模块33包括:
哈希计算单元,用于对第二网络请求中的每个URL进行哈希计算,得到哈希结果;
候选服务器确定单元,用于获取预设的哈希映射表,并基于哈希结果和预设的映射关系表,确定每个URL对应的节点服务器,并将每个URL对应的节点服务器均作为候选服务器。
可选地,性能监测模块34包括:
心跳检测单元,用于基于集群通信,向每个候选服务器发送心跳包检测指令;
结果确定单元,用于根据每个候选服务器针对心跳包检测指令的反馈结果,确定每个候选服务器对应的节点状态,作为可用性检测的检测结果。
关于数据访问的负载均衡装置的具体限定可以参见上文中对于数据访问的负载均衡方法的限定,在此不再赘述。上述数据访问的负载均衡装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
所述计算机设备4包括通过***总线相互通信连接存储器41、处理器42、网络接口43。需要指出的是,图中仅示出了具有组件连接存储器41、处理器42、网络接口43的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或D界面显示存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器41可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器41也可以是所述计算机设备4的外部存储设备,例如该计算机设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器41通常用于存储安装于所述计算机设备4的操作***和各类应用软件,例如电子文件的控制的程序代码等。此外,所述存储器41还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器42在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器42通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器42用于运行所述存储器41中存储的程序代码或者处理数据,例如运行数据访问的程序代码。
所述网络接口43可包括无线网络接口或有线网络接口,该网络接口43通常用于在所述计算机设备4与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有数据访问程序,所述数据访问程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的数据访问的负载均衡方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (10)
1.一种数据访问的负载均衡方法,应用于集群服务器中,其特征在于,所述数据访问的负载均衡方法包括:
接收客户端通过外网发送的第一网络请求;
对所述第一网络请求进行地址转换,得到第二网络请求;
对所述第二网络请求中的URL进行哈希调度,得到所述第二网络请求中每个请求对应的节点服务器,作为候选服务器;
对每个所述候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器;
采用每个所述目标服务器,对所述第二网络请求中的每个请求进行响应。
2.如权利要求1所述的数据访问的负载均衡方法,其特征在于,对所述第一网络请求进行地址转换,得到第二网络请求包括:
获取所述第一网络请求对应的源地址和目标地址;
识别所述源地址和所述目标地址的地址类型;
基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求。
3.如权利要求2所述的数据访问的负载均衡方法,其特征在于,所述预设类型为IPv6类型,所述源地址和所述目标地址的地址类型中存在至少一种不为IPv6类型,所述基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求包括:
将所述地址类型不为IPv6类型的源地址和/或目标地址作为待转换地址;
将所述待转换地址进行十六进制转换,得到转换地址,所述转换地址包括四个分组;
将所述转换地址的第一组和第二组进行合并,作为更新后的第一组,将所述转换地址的第三组和第四组进行合并,得到更新后的第二组,并将所述更新后的第一组和所述更新后的第二组依序组合,得到更新后的转换地址;
在所述更新后的转换地址前96位进行补零处理,得到所述预设类型的源地址和/或预设类型的目标地址,并基于所述预设类型的源地址和/或预设类型的目标地址和所述第一网络请求,生成所述第二网络请求。
4.如权利要求1所述的数据访问的负载均衡方法,其特征在于,对所述第二网络请求中的URL进行哈希调度,得到所述第二网络请求中每个请求对应的节点服务器,作为候选服务器包括:
对所述第二网络请求中的每个URL进行哈希计算,得到哈希结果;
获取预设的哈希映射表,并基于所述哈希结果和所述预设的映射关系表,确定每个URL对应的节点服务器,并将每个URL对应的节点服务器均作为所述候选服务器。
5.如权利要求1所述的数据访问的负载均衡方法,其特征在于,所述对每个所述候选服务器进行可用性检测包括:
基于集群通信,向每个所述候选服务器发送心跳包检测指令;
根据每个所述候选服务器针对所述心跳包检测指令的反馈结果,确定每个所述候选服务器对应的节点状态,作为所述可用性检测的检测结果。
6.一种数据访问的负载均衡装置,其特征在于,所述数据访问的负载均衡装置包括:
请求接收模块,用于接收客户端通过外网发送的第一网络请求;
地址转化模块,用于对所述第一网络请求进行地址转换,得到第二网络请求;
请求调度模块,用于对所述第二网络请求中的URL进行哈希调度,得到所述第二网络请求中每个请求对应的节点服务器,作为候选服务器;
性能监测模块,用于对每个所述候选服务器进行可用性检测,并基于得到的检测结果,确定目标服务器;
请求响应模块,用于采用每个所述目标服务器,对所述第二网络请求中的每个请求进行响应。
7.如权利要求6所述的数据访问的负载均衡装置,其特征在于,所述地址转化模块包括:
地址获取单元,用于获取所述第一网络请求对应的源地址和目标地址;
类型识别单元,用于识别所述源地址和所述目标地址的地址类型;
地址转换单元,用于基于预设的类型转换方式,转换为预设类型的源地址和预设类型的目标地址,得到第二网络请求。
8.如权利要求7所述的数据访问的负载均衡装置,其特征在于,所述预设类型为IPv6类型,所述源地址和所述目标地址的地址类型中存在至少一种不为IPv6类型,所述地址转换单元包括:
待转换地址确定子单元,用于将所述地址类型不为IPv6类型的源地址和/或目标地址作为待转换地址;
进制转换子单元,用于将所述待转换地址进行十六进制转换,得到转换地址,所述转换地址包括四个分组;
合并子单元,用于将所述转换地址的第一组和第二组进行合并,作为更新后的第一组,将所述转换地址的第三组和第四组进行合并,得到更新后的第二组,并将所述更新后的第一组和所述更新后的第二组依序组合,得到更新后的转换地址;
地址补全子单元,用于在所述更新后的转换地址前96位进行补零处理,得到所述预设类型的源地址和/或预设类型的目标地址,并基于所述预设类型的源地址和/或预设类型的目标地址和所述第一网络请求,生成所述第二网络请求。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的数据访问的负载均衡方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的数据访问的负载均衡方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111063653.0A CN113890879B (zh) | 2021-09-10 | 2021-09-10 | 数据访问的负载均衡方法、装置、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111063653.0A CN113890879B (zh) | 2021-09-10 | 2021-09-10 | 数据访问的负载均衡方法、装置、计算机设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113890879A true CN113890879A (zh) | 2022-01-04 |
CN113890879B CN113890879B (zh) | 2023-12-29 |
Family
ID=79008800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111063653.0A Active CN113890879B (zh) | 2021-09-10 | 2021-09-10 | 数据访问的负载均衡方法、装置、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113890879B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114827163A (zh) * | 2022-05-07 | 2022-07-29 | 金腾科技信息(深圳)有限公司 | 服务器负载均衡的处理方法、装置、设备及存储介质 |
CN114978660A (zh) * | 2022-05-17 | 2022-08-30 | 阿里巴巴(中国)有限公司 | 带外网络的构建方法和基于带外网络的带外处理方法 |
CN116820787A (zh) * | 2023-08-31 | 2023-09-29 | 湖北芯擎科技有限公司 | 负载均衡方法、装置、电子设备及计算机可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006301769A (ja) * | 2005-04-18 | 2006-11-02 | Hitachi Information Technology Co Ltd | サーバ装置 |
CN103023797A (zh) * | 2011-09-23 | 2013-04-03 | 百度在线网络技术(北京)有限公司 | 数据中心***及装置和提供服务的方法 |
CN103428229A (zh) * | 2012-05-14 | 2013-12-04 | 百度在线网络技术(北京)有限公司 | 数据中心***、装置及提供服务的方法 |
US20150350155A1 (en) * | 2014-06-03 | 2015-12-03 | Manuel Diaz | Systems and methods for ip sharing across wide area networks |
CN109218219A (zh) * | 2018-10-15 | 2019-01-15 | 迈普通信技术股份有限公司 | 一种负载均衡方法、装置、网络设备及存储介质 |
CN109936635A (zh) * | 2019-03-12 | 2019-06-25 | 北京百度网讯科技有限公司 | 负载均衡方法和装置 |
CN112866433A (zh) * | 2021-01-22 | 2021-05-28 | 京东数字科技控股股份有限公司 | 报文的负载均衡处理方法、装置和计算机设备 |
CN113242331A (zh) * | 2021-05-11 | 2021-08-10 | 鸬鹚科技(深圳)有限公司 | 不同类型的地址转换方法、装置、计算机设备及存储介质 |
CN113259428A (zh) * | 2021-05-11 | 2021-08-13 | 鸬鹚科技(深圳)有限公司 | 数据访问请求的处理方法、装置、计算机设备及介质 |
-
2021
- 2021-09-10 CN CN202111063653.0A patent/CN113890879B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006301769A (ja) * | 2005-04-18 | 2006-11-02 | Hitachi Information Technology Co Ltd | サーバ装置 |
CN103023797A (zh) * | 2011-09-23 | 2013-04-03 | 百度在线网络技术(北京)有限公司 | 数据中心***及装置和提供服务的方法 |
CN103428229A (zh) * | 2012-05-14 | 2013-12-04 | 百度在线网络技术(北京)有限公司 | 数据中心***、装置及提供服务的方法 |
US20150350155A1 (en) * | 2014-06-03 | 2015-12-03 | Manuel Diaz | Systems and methods for ip sharing across wide area networks |
CN109218219A (zh) * | 2018-10-15 | 2019-01-15 | 迈普通信技术股份有限公司 | 一种负载均衡方法、装置、网络设备及存储介质 |
CN109936635A (zh) * | 2019-03-12 | 2019-06-25 | 北京百度网讯科技有限公司 | 负载均衡方法和装置 |
CN112866433A (zh) * | 2021-01-22 | 2021-05-28 | 京东数字科技控股股份有限公司 | 报文的负载均衡处理方法、装置和计算机设备 |
CN113242331A (zh) * | 2021-05-11 | 2021-08-10 | 鸬鹚科技(深圳)有限公司 | 不同类型的地址转换方法、装置、计算机设备及存储介质 |
CN113259428A (zh) * | 2021-05-11 | 2021-08-13 | 鸬鹚科技(深圳)有限公司 | 数据访问请求的处理方法、装置、计算机设备及介质 |
Non-Patent Citations (3)
Title |
---|
TIEN-THINH NGUYEN ET AL.: "Load balancing mechanism for proxy mobile IPV6 networks: An IP multicast perspective", 《2014 INTERNATIONAL CONFERENCE ON COMPUTING, NETWORKING AND COMMUNICATIONS(ICNC)》 * |
王靓宇: "IPv4和IPv6双域互通初探", 《中国新闻技术工作者联合会2020年学术年会论文集》 * |
肖辽亮: "NAT-PT簇负载均衡***的研究与实现", 《硕士学位论文》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114827163A (zh) * | 2022-05-07 | 2022-07-29 | 金腾科技信息(深圳)有限公司 | 服务器负载均衡的处理方法、装置、设备及存储介质 |
CN114978660A (zh) * | 2022-05-17 | 2022-08-30 | 阿里巴巴(中国)有限公司 | 带外网络的构建方法和基于带外网络的带外处理方法 |
CN114978660B (zh) * | 2022-05-17 | 2024-04-19 | 阿里巴巴(中国)有限公司 | 带外网络的构建方法和基于带外网络的带外处理方法 |
CN116820787A (zh) * | 2023-08-31 | 2023-09-29 | 湖北芯擎科技有限公司 | 负载均衡方法、装置、电子设备及计算机可读存储介质 |
CN116820787B (zh) * | 2023-08-31 | 2023-12-15 | 湖北芯擎科技有限公司 | 负载均衡方法、装置、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113890879B (zh) | 2023-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108427705B (zh) | 电子装置、分布式***日志查询方法及存储介质 | |
CN113890879A (zh) | 数据访问的负载均衡方法、装置、计算机设备及介质 | |
US11509505B2 (en) | Method and apparatus for operating smart network interface card | |
CN107547595B (zh) | 云资源调度***、方法及装置 | |
CN113259428A (zh) | 数据访问请求的处理方法、装置、计算机设备及介质 | |
CN110784515B (zh) | 基于分布式集群的数据存储方法、及其相关设备 | |
CN110908770A (zh) | 虚拟机的运行及创建方法、虚拟机及虚拟机化管理平台 | |
CN114095567B (zh) | 数据访问请求的处理方法、装置、计算机设备及介质 | |
CN115277566B (zh) | 数据访问的负载均衡方法、装置、计算机设备及介质 | |
CN111752770A (zh) | 服务请求的处理方法、***、计算机设备和存储介质 | |
CN113259479A (zh) | 一种数据处理方法以及设备 | |
CN113242331A (zh) | 不同类型的地址转换方法、装置、计算机设备及存储介质 | |
CN111224878B (zh) | 路由转发方法、装置、电子设备及存储介质 | |
CN113992382B (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
CN114827161A (zh) | 服务调用请求发送方法、装置、电子设备及可读存储介质 | |
CN113242299A (zh) | 多数据中心的容灾***、方法、计算机设备及介质 | |
CN110995542B (zh) | 一种网络状态检测方法、***及相关设备 | |
CN114124883B (zh) | 基于云存储地址的数据访问方法、装置、计算机设备及介质 | |
CN111767481A (zh) | 访问处理方法、装置、设备和存储介质 | |
CN113239396A (zh) | 数据访问***、方法、装置、计算机设备及介质 | |
CN114185804A (zh) | 一种接口测试方法、装置及终端设备 | |
CN109308288A (zh) | 数据处理方法及装置 | |
CN114281774A (zh) | 一种日志识别方法、装置、电子设备及存储介质 | |
CN114389969A (zh) | 客户端的测试方法、装置、电子设备和存储介质 | |
CN113242302A (zh) | 数据访问请求的处理方法、装置、计算机设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |