CN114268615A - 基于tcp连接的业务处理方法和系统 - Google Patents
基于tcp连接的业务处理方法和系统 Download PDFInfo
- Publication number
- CN114268615A CN114268615A CN202111598848.5A CN202111598848A CN114268615A CN 114268615 A CN114268615 A CN 114268615A CN 202111598848 A CN202111598848 A CN 202111598848A CN 114268615 A CN114268615 A CN 114268615A
- Authority
- CN
- China
- Prior art keywords
- tcp
- server
- web server
- service
- information
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种基于TCP连接的业务处理方法和系统,该系统包括多个WEB服务器,各WEB服务器上连接有多个TCP服务器,WEB服务器在获取客户端发送的业务请求的业务报文后,查询各TCP服务器的设备信息,并基于设备信息将业务报文分发至多个TCP服务器中的至少一个。而接收到业务报文的TCP服务器,基于业务报文执行业务请求对应的业务处理,并且,在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至WEB服务器。本申请中,WEB服务器可随时拉取TCP服务器的设备信息、了解TCP服务器的状态,在实现有效的负载均衡的基础上,可以实现TCP服务器的水平扩展且不会带来人力资源上的过多消耗。
Description
技术领域
本申请涉及通信技术领域,具体而言,涉及一种基于TCP连接的业务处理方法和系统。
背景技术
TCP是一种面向连接的、可靠的、基于字节流的、应用于网络层的传输层通信协议,因特网上大部分数据流都是使用TCP协议。客户端在与服务端之间基于TCP连接时,默认使用的是短连接。也即,在客户端与服务端每进行一次HTTP操作就建立一次连接,但任务结束后就中断连接。
在现有的业务处理系统中,一般是通过反向代理服务器将客户端的业务请求发送到由多台WEB服务器构成的集群中进行处理。但是,这种系统架构中,由于WEB服务器无法实时返回自身的信息,例如运行信息、设备信息、业务执行信息等,并且反向代理服务器也无法主动拉取各个WEB服务器的信息。因此,导致反向代理服务器无法获知各个WEB服务器是否可用。因此,在这种系统架构下,同一个客户端的请求往往固定映射至一个WEB服务器进行处理,难以达到有效实现负载均衡的目的。并且,由于WEB服务器无法主动反馈自身信息,在维护时往往需要工作人员人工维护,若是对WEB服务器进行大量的水平扩展,则将导致工作人员的维护困难,使得该系统架构下进行服务端的水平扩展受限,进而影响到业务处理效率。
发明内容
本申请的目的包括,例如,提供了一种基于TCP连接的业务处理方法和系统,其能够有效实现负载均衡的基础上,实现TCP服务器的水平扩展且不会带来过多的人力资源消耗。
本申请的实施例可以这样实现:
第一方面,本申请提供一种基于TCP连接的业务处理方法,应用于业务处理系统,所述业务处理系统包括多个WEB服务器,各所述WEB服务器上连接有多个TCP服务器,所述方法包括:
针对各所述WEB服务器,所述WEB服务器获取客户端发送的业务请求的业务报文,其中,所述客户端与所述WEB服务器之间的连接方式为TCP连接;
所述WEB服务器查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个;
接收到所述业务报文的TCP服务器,基于所述业务报文执行所述业务请求对应的业务处理,并在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至所述WEB服务器。
在可选的实施方式中,所述设备信息包括设备配置信息,不同的设备配置信息关联有对应的负载权重;
所述WEB服务器查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个的步骤,包括:
所述WEB服务器查询与其连接的各所述TCP服务器的设备配置信息,并基于所述设备配置信息确定各所述TCP服务器的负载权重;
所述WEB服务器基于各所述TCP服务器的负载权重将所述业务报文按对应权重进行拆分,并将拆分得到的占不同权重的业务子报文分别发送至对应的TCP服务器。
在可选的实施方式中,所述设备信息包括设备运行信息,所述设备运行信息包括处理资源运行信息和存储资源运行信息;
所述WEB服务器查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个的步骤,包括:
所述WEB服务器查询与其连接的各所述TCP服务器的设备运行信息,根据各所述TCP服务器的设备运行信息确定各所述TCP服务器的运行繁忙程度,基于运行繁忙程度将多个TCP服务器按从高到低的顺序进行排序;
所述WEB服务器将所述业务报文分发至繁忙程度排列在后端的预设数量的TCP服务器。
在可选的实施方式中,所述WEB服务器查询与其连接的各所述TCP服务器的设备运行信息的步骤,包括:
所述WEB服务器通过轮询、随机或基于TCP服务器的IP进行哈希的方式对各TCP服务器的设备运行信息进行查询。
在可选的实施方式中,各所述WEB服务器之间可建立通信连接;
所述WEB服务器查询与其连接的各所述TCP服务器的设备信息的步骤之后,所述方法还包括:
所述WEB服务器基于所述业务报文和与其连接的各所述TCP服务器的设备信息判断是否需要进行业务拆分;
若判定需要进行业务拆分,则将所述业务报文进行拆分,并将拆分后的部分业务报文转发至其他任意一个或多个WEB服务器,以使所述其他任意一个或多个WEB服务器对接收到的业务报文进行处理。
在可选的实施方式中,所述系统还包括域名服务器,所述方法还包括:
所述域名服务器获取客户端发送的访问请求,并获取所述访问请求中的访问地址,将所述访问地址解析为外网IP,将所述外网IP反馈至所述客户端,以使所述客户端基于所述外网IP向对应的WEB服务器发起业务请求。
在可选的实施方式中,各所述WEB服务器与其连接的各所述TCP服务器之间具有调用接口,所述WEB服务器可通过所述调用接口拉取各所述TCP服务器的设备信息。
第二方面,本申请提供一种基于TCP连接的业务处理系统,所述业务处理系统包括多个WEB服务器,各所述WEB服务器上连接有多个TCP服务器;
针对各所述WEB服务器,所述WEB服务器用于获取客户端发送的业务请求的业务报文,其中,所述客户端与所述WEB服务器之间的连接方式为TCP连接;
所述WEB服务器用于查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个;
接收到所述业务报文的TCP服务器,用于基于所述业务报文执行所述业务请求对应的业务处理,并在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至所述WEB服务器。
在可选的实施方式中,所述设备信息包括设备配置信息,不同的设备配置信息关联有对应的负载权重;
所述WEB服务器用于查询与其连接的各所述TCP服务器的设备配置信息,并基于所述设备配置信息确定各所述TCP服务器的负载权重;
所述WEB服务器还用于基于各所述TCP服务器的负载权重将所述业务报文按对应权重进行拆分,并将拆分得到的占不同权重的业务子报文分别发送至对应的TCP服务器。
在可选的实施方式中,所述设备信息包括设备运行信息,所述设备运行信息包括处理资源运行信息和存储资源运行信息;
所述WEB服务器用于查询与其连接的各所述TCP服务器的设备运行信息,基于所述设备运行信息将多个TCP服务器按运行繁忙程度按从高到低的顺序进行排序;
所述WEB服务器还用于将所述业务报文分发至繁忙程度排列在后端的预设数量的TCP服务器。
本申请实施例的有益效果包括,例如:
本申请提供一种基于TCP连接的业务处理方法和系统,该系统包括多个WEB服务器,各WEB服务器上连接有多个TCP服务器,WEB服务器在获取客户端发送的业务请求的业务报文后,查询与其连接的各TCP服务器的设备信息,并基于获取的各TCP服务器的设备信息将业务报文分发至多个TCP服务器中的至少一个。而接收到业务报文的TCP服务器,基于业务报文执行业务请求对应的业务处理,并且,在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至WEB服务器。本申请中,在WEB服务器上增加连接有多个TCP服务器,WEB服务器可随时拉取TCP服务器的设备信息,进而随时了解TCP服务器的状态,从而在可实现有效的负载均衡的基础上,可以实现TCP服务器的水平扩展且不会带来人力资源上的过多消耗。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的基于TCP连接的业务处理系统的结构框图;
图2为本申请实施例提供的基于TCP连接的业务处理方法的流程图;
图3为本申请实施例提供的基于TCP连接的业务处理系统中各设备之间的交互示意图;
图4为本申请实施例提供的基于TCP连接的业务处理方法中,拆分方法的流程图;
图5为图2中步骤S102包含的子步骤的流程图;
图6为图2中步骤S102包含的子步骤的另一流程图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请的描述中,需要说明的是,在不冲突的情况下,本申请的实施例中的特征可以相互结合。
请参阅图1,为本申请实施例提供的基于TCP连接的业务处理系统,该业务处理系统包括多个WEB服务器(图中仅示出一个),各WEB服务器上连接有多个TCP服务器。其中,各个WEB服务器均可与多个客户端通信连接,以与客户端之间进行信息、数据的交互。各个客户端与WEB服务器之间的连接方式为TCP连接。
WEB服务器又称为网页服务器,WEB服务器可以解析HTTP协议,当WEB服务器接收到一个HTTP请求,会返回一个HTTP响应,例如送回一个HTML页面。TCP服务器可提供TCP服务,包括如面向连接的传输、端到端的通信等。
本实施例所提供的业务处理系统中,客户端可发送业务请求至任意一个WEB服务器,而WEB服务器可将业务请求下发至与其连接的其中一个或多个TCP服务器进行处理。并且,WEB服务器可随时拉取与其连接的各个TCP服务器的状态,以获取各个TCP服务器的如设备信息等。从而在下发业务请求至TCP服务器时,可以实现有效的负载均衡。
图2示出了本申请实施例提供的基于TCP连接的业务处理方法的流程示意图,该基于TCP连接的业务处理方法可以应用于上述业务处理系统。应当理解,在其它实施例中,本实施例的业务处理方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该业务处理方法的详细步骤介绍如下。
S101,针对各所述WEB服务器,所述WEB服务器获取客户端发送的业务请求的业务报文。
S102,所述WEB服务器查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个。
S103,接收到所述业务报文的TCP服务器,基于所述业务报文执行所述业务请求对应的业务处理,并在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至所述WEB服务器。
本实施例中,客户端的用户可以通过客户端发送相关的业务请求至业务处理系统中的任意一个WEB服务器。其中,该业务请求可以是业务处理系统支持的任意处理业务的处理请求,而客户端可以是如个人计算机、平板电脑、智能手机等终端设备。
接收到客户端发送的业务请求的WEB服务器,可以将该业务请求下发至与其连接的TCP进行处理。
为了实现业务请求的高效处理,WEB服务器可以在与其连接的多个TCP服务器之间进行负载均衡处理,从而使得业务请求在多个TCP服务器之间能够得到快速、高效的处理。
本实施例中,WEB服务器在接收到业务请求的情况下,可以查询与其连接的各个TCP服务器的设备信息。获取的各TCP服务器的设备信息可以作为进行负载分配时的依据。例如,各个TCP服务器的设备信息可以体现出各TCP服务器的繁忙程度,或者可以体现出所设置的关于各个TCP服务器的负载分配策略等。
如此,WEB服务器则可以基于各TCP服务器的设备信息从而将业务请求的业务报文分发给与其连接的一个或多个TCP服务器。
接收到WEB服务器分发的业务报文的TCP服务器,则可以执行相应的业务处理。而由于WEB服务器可随时拉取各TCP服务器的状态,因此,TCP服务器可在WEB服务器拉取信息时实时反馈自身的设备信息,并且,在业务处理完成后,将业务处理结果反馈至WEB服务器,进而通过WEB服务器反馈至客户端。
本实施例所提供的业务处理方法,基于在WEB服务器上增设的多个TCP服务器进行业务处理,WEB服务器可随时拉取TCP服务器的设备信息,进而随时了解TCP服务器的状态,从而可实现有效的负载均衡。并且,使得TCP服务器的水平扩展成为可能,并且在扩展时不会带来人力资源上的过多消耗。
并且,在本实施例中,WEB服务器通过拉取的方式获取各个TCP服务器的设备信息。而现有技术中,往往采用的是各个TCP服务器通过主动推送的方式上报自己的设备信息的方式。现有技术中的方式使得TCP服务器要依赖于一个与本身业务无关的WEB服务器,存在反向依赖的耦合错误。而本实施例中,通过WEB服务器拉取各个TCP服务器的状态,符合服务设计的单一职责原则。
如此,各个TCP服务器可独立与解耦,各TCP服务器只需专注于自身的TCP业务即可,例如,TCP服务器只需关注于自身的一些工作,如完成对数据包的确认、流量控制和网络拥塞处理,自动检测数据包并提供错误重发的功能,将多条路径传送的数据包按照原本的顺序进行排列,以及控制超时重发、自动调整超时值等。本实施例中所提供的WEB服务器拉取的方式,大大地提升了架构设计的科学性。
本实施例中,在上述业务处理系统中还包括域名服务器,该域名服务器可与各个客户端通信连接。在客户端需要向WEB服务器发送业务请求时,首先需要确定对应的外网地址。在本实施例中,客户端可向域名服务器发送访问请求。
域名服务器获取客户端发送的访问请求时,获取访问请求中的访问地址,将访问地址解析为外网IP,将该外网IP反馈至客户端,以使客户端基于该外网IP向对应的WEB服务器发起业务请求。
例如,请结合参阅图3,客户端可发送包含访问地址www.emall.com的访问请求至域名服务器,域名服务器可将该访问地址解析为外网IP,10.0.0.11。域名服务器将该外网IP反馈给客户端。客户端再通过该外网IP,10.0.0.11向WEB服务器发起业务请求。
而各WEB服务器与其连接的各TCP服务器之间具有调用接口,get-tcp-ip,WEB服务器可通过该调用接口拉取各TCP服务器的设备信息。从而作为负载分配的依据。
本实施例中,各WEB服务器中维护有一个列表,该列表中包含有各个TCP服务器的状态信息,该状态信息可表征对应的TCP服务器是否状态可用。WEB服务器可以通过getStatus方法监控各个TCP服务器是否可用,并且,基于实时监测到的结果对该列表中的状态信息进行更新。在TCP服务器状态可用的情况下,WEB服务器可以通过上述拉取的方式获取TCP服务器的设备信息,进而进行负载均衡处理。
由上述可知,本实施例的业务处理系统中包含多个WEB服务器,该多个WEB服务器之间可建立通信连接。客户端的业务请求可以指向其中一个WEB服务器。接收到业务请求的WEB服务器可以将业务请求分发至与其连接的多个TCP服务器处理,在TCP服务器之间实现负载均衡。
此外,考虑到系统中存在多个WEB服务器,为了进一步高效地对业务请求进行处理,还可在多个WEB服务器之间实现负载均衡。因此,在接收到客户端的业务请求的WEB服务器查询到与其连接的各个TCP服务器的设备信息之后,业务处理方法还可包括以下步骤,请结合参阅图4:
S201,所述WEB服务器基于所述业务报文和与其连接的各所述TCP服务器的设备信息判断是否需要进行业务拆分,若判定需要进行业务拆分,则执行以下步骤S202,若判定不需要进行业务拆分,则直接执行上述步骤S102中的基于获取的各所述TCP服务器的设备信息将业务报文分发至所述多个TCP服务器中的至少一个。
S202,将所述业务报文进行拆分,并将拆分后的部分业务报文转发至其他任意一个或多个WEB服务器,以使所述其他任意一个或多个WEB服务器对接收到的业务报文进行处理。
本实施例中,接收到客户端的业务请求的WEB服务器可以基于查询到的TCP服务器的设备信息以及业务请求的业务报文的处理量,以判断是否需要进行业务拆分。例如,根据业务报文的处理量以及设备信息,若仅由与其连接的TCP服务器进行业务报文的处理,所需的时间是否过长、业务报文处理等待的时间是否过长等。
若仅由与其连接的TCP服务器进行业务报文的处理所需时间过长、等待时间过长等,可以判定需要进行业务拆分,也即,可将部分业务报文均衡到其他WEB服务器进行处理。
本实施例中,在进行业务报文的拆分时,拆分的具体方式并不作限制,只要能够实现将其中部分业务报文转发至其他WEB服务器进行处理,以缓解当前的WEB服务器下的TCP服务器的处理压力即可。此外,将拆分后的部分业务报文所转发至的WEB服务器可以是一个也可以是多个,具体转发至哪一个或哪几个WEB服务器本实施例不作限制,例如,可以转发至与当前WEB服务器最近的WEB服务器,也可以基于其余各个WEB服务器的繁忙程度,将拆分的业务报文转发至繁忙程度较低的其他WEB服务器。
而接收到拆分后的业务报文的WEB服务器,同样地,将获取的业务报文均衡至与其连接的多个TCP服务器进行处理,也即各个WEB服务器执行上述的获取与其连接的各个TCP服务器的设备信息,并基于获取的各个TCP服务器的设备信息将获取的业务报文分发至多个TCP服务器中的至少一个。
本实施例中,通过上述方式,不仅可以在TCP服务器的层面上实现负载均衡,还可在WEB服务器的层面上执行负载均衡策略。可以有效地实现对于业务请求的高效、快速地处理。
各个WEB服务器在与其连接的多个TCP服务器之间执行负载均衡时,作为一种可能的实现方式,查询获得的各个TCP服务器的设备信息可包含设备配置信息,例如,处理器配置信息、存储器配置信息等,不同的配置信息关联有对应的负载权重。例如,与WEB服务器连接的TCP服务器为三个,其中,基于各个TCP服务器的处理器配置信息,可以为各个TCP服务器配置不同的负载权重,如处理器配置越高的TCP服务器,则可配置越高的负载权重,反之,处理器配置越低的TCP服务器可以配置越低的负载权重。
如此,配置信息越高的TCP服务器在进行负载均衡时,则可以分配较多的处理量,而配置越低的TCP服务器可以分配越低的处理量,合理地实现负载的分配。
具体地,请参阅图5,上述步骤S102中,在实现业务报文的分发时,可以通过以下方式实现:
S1021A,所述WEB服务器查询与其连接的各所述TCP服务器的设备配置信息,并基于所述设备配置信息确定各所述TCP服务器的负载权重。
S1022A,所述WEB服务器基于各所述TCP服务器的负载权重将所述业务报文按对应权重进行拆分,并将拆分得到的占不同权重的业务子报文分别发送至对应的TCP服务器。
本实施例中,预先基于各个TCP服务器的设备配置信息关联有对应的负载权重,其中,设备配置越高的其负载权重可越高,而设备配置越低的其负载权重可越低。
WEB服务器在接收到客户端的业务请求后,可查询各个TCP服务器的设备配置信息,从而获得各个TCP服务器的负载权重。而获得的业务请求的业务报文可以包含多条报文数据,WEB服务器可以按照与各个TCP服务器对应的负载权重对应的权重对业务报文中的报文数据进行拆分,以得到多个业务子报文。从而可以将得到的各个业务子报文分别发送至对应的TCP服务器。
如此,则设备配置较低的,也即负载权重较小的TCP服务器,将分配到较小的业务子报文,而设备配置较高的,也即负载权重较大的TCP服务器,将分配到较大的业务子报文。可以针对性地基于各个TCP服务器的配置进行业务报文的分发,从而适应于各个TCP服务器的处理能力,使得业务报文能够得到合理、高效地处理。
此外,在另一种可能的实现方式中,WEB服务器查询得到的TCP服务器的设备信息可以包括设备运行信息,如处理资源运行信息、存储资源运行信息等。设备运行信息体现了TCP服务器当前的繁忙程度,请参阅图6,WEB服务器在进行业务报文的分发时,可以通过以下方式实现:
S1021B,所述WEB服务器查询与其连接的各所述TCP服务器的设备运行信息,根据各所述TCP服务器的设备运行信息确定各所述TCP服务器的运行繁忙程度,基于运行繁忙程度将多个TCP服务器按从高到低的顺序进行排序。
S1022B,所述WEB服务器将所述业务报文分发至繁忙程度排列在后端的预设数量的TCP服务器。
本实施例中,WEB服务器可以随时拉取各个TCP服务器的运行信息,其中,而TCP服务器的设备运行信息可以体现出TCP服务器的运行繁忙程度,例如,设备运行信息中可包括CPU当前占用比例、存储资源占用量等。TCP服务器的运行繁忙程度越高,表明在处理分配的业务报文时,业务报文处理等待时间越长。
因此,WEB服务器可以将业务报文分发至运行繁忙程度较低的TCP服务器进行处理,从而避免业务报文处理等待时间过长的问题。
本实施例中,WEB服务器在查询各个TCP服务器的运行设备信息时,可以通过轮询、随机或基于TCP服务器的IP进行哈希的方式对各个TCP服务器的设备运行信息进行查询。
本实施例所提供的业务处理方法,基于与WEB服务器上增设多个TCP服务器,通过WEB服务器实现负载在多个TCP服务器中的均衡,并且,WEB服务器可以随时拉取各个TCP服务器的状态,WEB服务器通过get-tcp-ip拉取TCP服务器的状态,保障服务的高可用,使得TCP服务器的水平扩展不受限制。而各个TCP服务器以单机的形式进行配置,可保障请求的一致性。
基于上述的业务处理方法,本申请实施例所提供的业务处理系统中,针对各个WEB服务器,WEB服务器用于获取客户端发送的业务请求的业务报文,其中,客户端与所述WEB服务器之间的连接方式为TCP连接。
WEB服务器用于查询与其连接的各TCP服务器的设备信息,并基于获取的各TCP服务器的设备信息将业务报文分发至多个TCP服务器中的至少一。
接收到业务报文的TCP服务器,用于基于业务报文执行业务请求对应的业务处理,并在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至WEB服务器。
在一种可能的实现方式中,所述设备信息包括设备配置信息,不同的设备配置信息关联有对应的负载权重。
所述WEB服务器用于查询与其连接的各所述TCP服务器的设备配置信息,并基于所述设备配置信息确定各所述TCP服务器的负载权重;
所述WEB服务器还用于基于各所述TCP服务器的负载权重将所述业务报文按对应权重进行拆分,并将拆分得到的占不同权重的业务子报文分别发送至对应的TCP服务器。
在一种可能的实现方式中,所述设备信息包括设备运行信息,所述设备运行信息包括处理资源运行信息和存储资源运行信息。
所述WEB服务器查询与其连接的各所述TCP服务器的设备运行信息,根据各所述TCP服务器的设备运行信息确定各所述TCP服务器的运行繁忙程度,基于运行繁忙程度将多个TCP服务器按从高到低的顺序进行排序。
所述WEB服务器还用于将所述业务报文分发至繁忙程度排列在后端的预设数量的TCP服务器。
本申请实施例所提供的业务处理系统具有与上述业务处理方法相同、相似或相应的技术特征,本实施例未详尽之处,可参见上述实施例对于业务处理方法的相关描述,本实施例在此不作赘述。
综上所述,本申请实施例提供的基于TCP连接的业务处理方法和系统,该系统包括多个WEB服务器,各WEB服务器上连接有多个TCP服务器,WEB服务器在获取客户端发送的业务请求的业务报文后,查询与其连接的各TCP服务器的设备信息,并基于获取的各TCP服务器的设备信息将业务报文分发至多个TCP服务器中的至少一个。而接收到业务报文的TCP服务器,基于业务报文执行业务请求对应的业务处理,并且,在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至WEB服务器。本申请中,在WEB服务器上增加连接有多个TCP服务器,WEB服务器可随时拉取TCP服务器的设备信息,进而随时了解TCP服务器的状态,从而在可实现有效的负载均衡的基础上,可以实现TCP服务器的水平扩展且不会带来人力资源上的过多消耗。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种基于TCP连接的业务处理方法,其特征在于,应用于业务处理系统,所述业务处理系统包括多个WEB服务器,各所述WEB服务器上连接有多个TCP服务器,所述方法包括:
针对各所述WEB服务器,所述WEB服务器获取客户端发送的业务请求的业务报文,其中,所述客户端与所述WEB服务器之间的连接方式为TCP连接;
所述WEB服务器查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个;
接收到所述业务报文的TCP服务器,基于所述业务报文执行所述业务请求对应的业务处理,并在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至所述WEB服务器。
2.根据权利要求1所述的基于TCP连接的业务处理方法,其特征在于,所述设备信息包括设备配置信息,不同的设备配置信息关联有对应的负载权重;
所述WEB服务器查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个的步骤,包括:
所述WEB服务器查询与其连接的各所述TCP服务器的设备配置信息,并基于所述设备配置信息确定各所述TCP服务器的负载权重;
所述WEB服务器基于各所述TCP服务器的负载权重将所述业务报文按对应权重进行拆分,并将拆分得到的占不同权重的业务子报文分别发送至对应的TCP服务器。
3.根据权利要求1所述的基于TCP连接的业务处理方法,其特征在于,所述设备信息包括设备运行信息,所述设备运行信息包括处理资源运行信息和存储资源运行信息;
所述WEB服务器查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个的步骤,包括:
所述WEB服务器查询与其连接的各所述TCP服务器的设备运行信息,根据各所述TCP服务器的设备运行信息确定各所述TCP服务器的运行繁忙程度,基于运行繁忙程度将多个TCP服务器按从高到低的顺序进行排序;
所述WEB服务器将所述业务报文分发至繁忙程度排列在后端的预设数量的TCP服务器。
4.根据权利要求3所述的基于TCP连接的业务处理方法,其特征在于,所述WEB服务器查询与其连接的各所述TCP服务器的设备运行信息的步骤,包括:
所述WEB服务器通过轮询、随机或基于TCP服务器的IP进行哈希的方式对各TCP服务器的设备运行信息进行查询。
5.根据权利要求1所述的基于TCP连接的业务处理方法,其特征在于,各所述WEB服务器之间可建立通信连接;
所述WEB服务器查询与其连接的各所述TCP服务器的设备信息的步骤之后,所述方法还包括:
所述WEB服务器基于所述业务报文和与其连接的各所述TCP服务器的设备信息判断是否需要进行业务拆分;
若判定需要进行业务拆分,则将所述业务报文进行拆分,并将拆分后的部分业务报文转发至其他任意一个或多个WEB服务器,以使所述其他任意一个或多个WEB服务器对接收到的业务报文进行处理。
6.根据权利要求1所述的基于TCP连接的业务处理方法,其特征在于,所述系统还包括域名服务器,所述方法还包括:
所述域名服务器获取客户端发送的访问请求,并获取所述访问请求中的访问地址,将所述访问地址解析为外网IP,将所述外网IP反馈至所述客户端,以使所述客户端基于所述外网IP向对应的WEB服务器发起业务请求。
7.根据权利要求1所述的基于TCP连接的业务处理方法,其特征在于,各所述WEB服务器与其连接的各所述TCP服务器之间具有调用接口,所述WEB服务器可通过所述调用接口拉取各所述TCP服务器的设备信息。
8.一种基于TCP连接的业务处理系统,其特征在于,所述业务处理系统包括多个WEB服务器,各所述WEB服务器上连接有多个TCP服务器;
针对各所述WEB服务器,所述WEB服务器用于获取客户端发送的业务请求的业务报文,其中,所述客户端与所述WEB服务器之间的连接方式为TCP连接;
所述WEB服务器用于查询与其连接的各所述TCP服务器的设备信息,并基于获取的各所述TCP服务器的设备信息将所述业务报文分发至所述多个TCP服务器中的至少一个;
接收到所述业务报文的TCP服务器,用于基于所述业务报文执行所述业务请求对应的业务处理,并在获取到WEB服务器的信息拉取请求时实时反馈自身的设备信息和业务处理结果至所述WEB服务器。
9.根据权利要求8所述的基于TCP连接的业务处理系统,其特征在于,所述设备信息包括设备配置信息,不同的设备配置信息关联有对应的负载权重;
所述WEB服务器用于查询与其连接的各所述TCP服务器的设备配置信息,并基于所述设备配置信息确定各所述TCP服务器的负载权重;
所述WEB服务器还用于基于各所述TCP服务器的负载权重将所述业务报文按对应权重进行拆分,并将拆分得到的占不同权重的业务子报文分别发送至对应的TCP服务器。
10.根据权利要求8所述的基于TCP连接的业务处理系统,其特征在于,所述设备信息包括设备运行信息,所述设备运行信息包括处理资源运行信息和存储资源运行信息;
所述WEB服务器查询与其连接的各所述TCP服务器的设备运行信息,根据各所述TCP服务器的设备运行信息确定各所述TCP服务器的运行繁忙程度,基于运行繁忙程度将多个TCP服务器按从高到低的顺序进行排序;
所述WEB服务器还用于将所述业务报文分发至繁忙程度排列在后端的预设数量的TCP服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111598848.5A CN114268615B (zh) | 2021-12-24 | 2021-12-24 | 基于tcp连接的业务处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111598848.5A CN114268615B (zh) | 2021-12-24 | 2021-12-24 | 基于tcp连接的业务处理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114268615A true CN114268615A (zh) | 2022-04-01 |
CN114268615B CN114268615B (zh) | 2023-08-08 |
Family
ID=80829780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111598848.5A Active CN114268615B (zh) | 2021-12-24 | 2021-12-24 | 基于tcp连接的业务处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114268615B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442030A (zh) * | 2013-07-31 | 2013-12-11 | 北京京东尚科信息技术有限公司 | 发送和处理业务请求信息的方法和系统以及客户端装置 |
CN103713956A (zh) * | 2014-01-06 | 2014-04-09 | 山东大学 | 应用于云计算虚拟化管理环境中的智能加权负载均衡方法 |
CN106161120A (zh) * | 2016-10-08 | 2016-11-23 | 电子科技大学 | 动态均衡负载的分布式元数据管理方法 |
CN106453669A (zh) * | 2016-12-27 | 2017-02-22 | Tcl集团股份有限公司 | 一种负载均衡方法及一种服务器 |
CN107070983A (zh) * | 2017-01-23 | 2017-08-18 | 天地融科技股份有限公司 | 一种基于地址转发的负载均衡方法、设备和系统 |
US20170346886A1 (en) * | 2016-05-26 | 2017-11-30 | Fujitsu Limited | Information processing apparatus and load distribution control method |
CN108667882A (zh) * | 2017-04-01 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 基于动态权重调整的负载均衡方法、装置和电子设备 |
CN108965381A (zh) * | 2018-05-31 | 2018-12-07 | 康键信息技术(深圳)有限公司 | 基于Nginx的负载均衡实现方法、装置、计算机设备和介质 |
CN110166570A (zh) * | 2019-06-04 | 2019-08-23 | 杭州迪普科技股份有限公司 | 业务会话管理方法、装置、电子设备 |
CN111193778A (zh) * | 2019-12-16 | 2020-05-22 | 武汉思为同飞网络技术股份有限公司 | 一种web服务负载均衡的方法、装置、设备及介质 |
CN111324462A (zh) * | 2020-02-20 | 2020-06-23 | 杭州梦视网络科技有限公司 | 一种具有Web负载均衡技术的系统及方法 |
CN112749009A (zh) * | 2020-12-30 | 2021-05-04 | 杭州迪普科技股份有限公司 | 一种服务器调度方法及装置 |
US11025710B1 (en) * | 2020-10-26 | 2021-06-01 | Verizon Digital Media Services Inc. | Systems and methods for dynamic load balancing based on server utilization and content popularity |
-
2021
- 2021-12-24 CN CN202111598848.5A patent/CN114268615B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442030A (zh) * | 2013-07-31 | 2013-12-11 | 北京京东尚科信息技术有限公司 | 发送和处理业务请求信息的方法和系统以及客户端装置 |
CN103713956A (zh) * | 2014-01-06 | 2014-04-09 | 山东大学 | 应用于云计算虚拟化管理环境中的智能加权负载均衡方法 |
US20170346886A1 (en) * | 2016-05-26 | 2017-11-30 | Fujitsu Limited | Information processing apparatus and load distribution control method |
CN106161120A (zh) * | 2016-10-08 | 2016-11-23 | 电子科技大学 | 动态均衡负载的分布式元数据管理方法 |
CN106453669A (zh) * | 2016-12-27 | 2017-02-22 | Tcl集团股份有限公司 | 一种负载均衡方法及一种服务器 |
CN107070983A (zh) * | 2017-01-23 | 2017-08-18 | 天地融科技股份有限公司 | 一种基于地址转发的负载均衡方法、设备和系统 |
CN108667882A (zh) * | 2017-04-01 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 基于动态权重调整的负载均衡方法、装置和电子设备 |
CN108965381A (zh) * | 2018-05-31 | 2018-12-07 | 康键信息技术(深圳)有限公司 | 基于Nginx的负载均衡实现方法、装置、计算机设备和介质 |
CN110166570A (zh) * | 2019-06-04 | 2019-08-23 | 杭州迪普科技股份有限公司 | 业务会话管理方法、装置、电子设备 |
CN111193778A (zh) * | 2019-12-16 | 2020-05-22 | 武汉思为同飞网络技术股份有限公司 | 一种web服务负载均衡的方法、装置、设备及介质 |
CN111324462A (zh) * | 2020-02-20 | 2020-06-23 | 杭州梦视网络科技有限公司 | 一种具有Web负载均衡技术的系统及方法 |
US11025710B1 (en) * | 2020-10-26 | 2021-06-01 | Verizon Digital Media Services Inc. | Systems and methods for dynamic load balancing based on server utilization and content popularity |
CN112749009A (zh) * | 2020-12-30 | 2021-05-04 | 杭州迪普科技股份有限公司 | 一种服务器调度方法及装置 |
Non-Patent Citations (1)
Title |
---|
王春娟;: "Web集群负载均衡算法的分析与研究", 电脑知识与技术, no. 26 * |
Also Published As
Publication number | Publication date |
---|---|
CN114268615B (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11418620B2 (en) | Service request management | |
CN109274707B (zh) | 一种负载调度方法及装置 | |
EP1320237B1 (en) | System and method for controlling congestion in networks | |
US9065831B2 (en) | Active load distribution for control plane traffic using a messaging and presence protocol | |
JP2000276432A (ja) | トランザクション・メッセージの動的負荷分散方式 | |
US20020059170A1 (en) | Load balancing between multiple web servers | |
CN111787079B (zh) | 基于通信群组的通信方法、装置、服务器、系统及介质 | |
CA2395444C (en) | Method and apparatus for anonymous subject-based addressing | |
CN114900526A (zh) | 负载均衡方法及系统、计算机存储介质、电子设备 | |
US7007087B1 (en) | System and method for rejecting services in a information service system | |
US10938993B2 (en) | Workload balancing technique for a telephone communication system | |
US20060069777A1 (en) | Request message control method for using service and service providing system | |
WO2002025463A1 (en) | Method and apparatus for dynamic determination of optimum connection of a client to content servers | |
CN114268615B (zh) | 基于tcp连接的业务处理方法和系统 | |
CN107438098A (zh) | 一种动态内容分发方法及其系统 | |
CN111737029A (zh) | 一种服务端、数据推送方法、数据推送系统 | |
CN108650286A (zh) | 一种基于Socket和WebSocket混合模式的服务器系统的实现方法 | |
KR100450605B1 (ko) | 웹-어플리케이션 서버 및 그의 동적 컨텐츠 제공 방법 | |
Yang et al. | Random early detection web servers for dynamic load balancing | |
KR100599103B1 (ko) | 메시지 패킷 유실 방지 시스템 | |
CN117176782A (zh) | 数据交互方法、装置及系统 | |
CN118093155A (zh) | 集群系统的控制方法、集群系统及存储介质 | |
CN115658164A (zh) | 一种分布式串行编排服务执行方法及系统 | |
CN117692458A (zh) | 一种基于标签的分布式负载均衡实现方法及系统 | |
CN115002041A (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 |