CN113596139A - 一种集群通信系统及方法 - Google Patents
一种集群通信系统及方法 Download PDFInfo
- Publication number
- CN113596139A CN113596139A CN202110843922.9A CN202110843922A CN113596139A CN 113596139 A CN113596139 A CN 113596139A CN 202110843922 A CN202110843922 A CN 202110843922A CN 113596139 A CN113596139 A CN 113596139A
- Authority
- CN
- China
- Prior art keywords
- service
- target
- application
- server
- calling
- 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.)
- Pending
Links
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1073—Registration or de-registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
- H04L65/1104—Session initiation protocol [SIP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
-
- 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/133—Protocols for remote procedure calls [RPC]
-
- 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/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明实施例公开了一种集群通信系统及方法。其中,系统包括:至少一个通信终端、应用服务器和至少一个业务服务器;其中:通信终端用于向应用服务器发送目标业务发起请求,并接收应用服务器转发的目标业务响应数据,实现目标业务;应用服务器用于接收目标业务发起请求,并转发至业务服务器;接收业务服务器发送的目标业务响应数据,并转发至与目标业务关联的通信终端;业务服务器用于在接收到目标业务发起请求时,调用目标业务对应的目标业务发起方法,得到目标业务响应数据并反馈至应用服务器。本发明实施例可以降低业务耦合度,提高业务处理效率和用户请求响应速度,优化服务体验。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种集群通信系统及方法。
背景技术
集群通信业务是指利用具有信道共用和动态分配等技术特点的集群通信系统组成的集群通信共网,为多个部门、单位等集团用户提供的会议、指挥调度等通信业务。由于同一集群通信业务中关联到多个用户,集群通信业务的发起过程、参数等均与各用户状态紧密关联。
图1为现有技术中的一种集群通信业务服务进程的示意图。如图1所示,在现有技术中,集群通信业务的实现方案是通过一个应用服务进程实现用户状态业务与通信业务。用户状态业务可以收集用户上线、下线状态,并将状态变化通知到会议、指挥等通信业务;当用户发起会议、指挥等业务时,相应的通信业务可以引用状态数据,来确定会议、指挥成员在线状态,从而确定业务状态并向用户进行通知。因此,用户状态业务输出的数据作为通信业务的输入数据,用户状态变化可以直接影响到通信业务。
但在上述现有技术提供的实现方案中,由于多个业务之间数据相互引用,且通过一个服务进程处理所有业务,导致业务耦合度太高。进一步的,若用户需要的业务越来越多,则会造成服务进程过于庞大。
发明内容
本发明实施例提供一种集群通信系统及方法,以降低业务耦合度,提高业务处理效率和用户请求响应速度,优化服务体验。
第一方面,本发明实施例提供了一种集群通信系统,包括:至少一个通信终端、应用服务器和至少一个业务服务器;其中:
所述通信终端与所述应用服务器保持通信连接,用于向所述应用服务器发送目标业务发起请求,并接收所述应用服务器转发的目标业务响应数据,实现目标业务;
所述应用服务器与所述通信终端、所述业务服务器保持通信连接,用于接收所述目标业务发起请求,并转发至所述目标业务匹配的所述业务服务器;接收所述业务服务器发送的目标业务响应数据,并转发至与所述目标业务关联的所述通信终端;
所述业务服务器与所述应用服务器保持通信连接,用于在接收到所述应用服务器发送的所述目标业务发起请求时,调用所述目标业务对应的目标业务发起方法,得到所述目标业务响应数据并反馈至所述应用服务器。
第二方面,本发明实施例还提供了一种集群通信方法,应用于集群通信系统,包括:
通过通信终端向应用服务器发送目标业务发起请求;
通过所述应用服务器接收所述目标业务发起请求,并转发至所述目标业务匹配的业务服务器;
通过所述业务服务器调用所述目标业务对应的目标业务发起方法,得到目标业务响应数据并反馈至所述应用服务器;
通过所述应用服务器接收所述目标业务响应数据,并转发至与所述目标业务关联的所述通信终端;
通过所述通信终端接收所述目标业务响应数据,实现所述目标业务。
本发明实施例通过在集群通信系统中部署至少一个通信终端、应用服务器和至少一个业务服务器。其中,通过应用服务器接收通信终端发送的目标业务发起请求,并转发至业务服务器,从而通过业务服务器调用对应的目标业务发起方法,并得到目标业务响应数据,反馈至应用服务器,进而应用服务器可以将目标业务响应数据转发至与目标业务关联的通信终端,实现目标业务。本发明实施例解决了现有技术中业务耦合度过高、服务进程过于庞大的问题,实现多业务之间服务进程的拆分与集群部署,降低业务耦合度,提高业务处理效率和用户请求响应速度,优化服务体验。
附图说明
图1为现有技术中的一种集群通信业务服务进程的示意图。
图2为本发明实施例一提供的一种集群通信系统的示意图。
图3为本发明实施例一提供的一种集群通信系统架构的示意图。
图4为本发明实施例一提供的一种集群部署场景的示意图。
图5为本发明实施例一提供的一种集群通信系统的交互流程示意图。
图6为本发明实施例一提供的又一种集群通信系统的交互流程示意图。
图7为本发明实施例二提供的一种集群通信系统的示意图。
图8为本发明实施例二提供的一种服务器进程架构的示意图。
图9为本发明实施例二提供的一种进程间调用的流程示意图。
图10为现有技术中的服务器进程架构的示意图。
图11为本发明实施例三提供的一种集群通信系统的示意图。
图12为本发明实施例三提供的一种服务器程序架构的示意图。
图13为本发明实施例四提供的一种集群通信方法的流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。
另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图2是本发明实施例一提供的一种集群通信系统的示意图。本实施例提供的集群通信系统可适用于对集群通信业务之间的服务进程进行拆分与集群部署的情况。如图2所示,所述集群通信系统,包括:至少一个通信终端110、应用服务器120和至少一个业务服务器130。
其中,通信终端110与应用服务器120保持通信连接,用于向应用服务器120发送目标业务发起请求,并接收应用服务器120转发的目标业务响应数据,实现目标业务。
应用服务器120与通信终端110、业务服务器130保持通信连接,用于接收目标业务发起请求,并转发至目标业务匹配的业务服务器130;接收业务服务器130发送的目标业务响应数据,并转发至与目标业务关联的通信终端110。
业务服务器130与应用服务器120保持通信连接,用于在接收到应用服务器120发送的所述目标业务发起请求时,调用目标业务对应的目标业务发起方法,得到目标业务响应数据并反馈至应用服务器120。
可选的,所述系统可以采用SIP(Session Initiation Protocol,会话启动协议)进行通信。
具体的,通信终端110可以是用户所使用的任意具有通信功能的终端,可以用于进行集群通信业务。应用服务器120可以是用于联通任意集群通信业务所关联的通信终端110和该业务对应的业务服务器130的服务器。业务服务器130可以是用于为集群通信业务提供服务的服务器。
可选的,所述系统可以包括一个或多个类型的集群通信业务对应的业务服务器130,各类型集群通信业务对应的业务服务器130的数量均可以是一个或多个。
相应的,目标业务可以是任意类型的集群通信业务,例如可以是线上会议业务和线上指挥业务等。目标业务发起请求可以是用于请求服务以发起目标业务的数据,其中可以包括用于标识目标业务的数据,例如可以包括需要访问的业务服务器130的IP(InternetProtocol,互联网协议)地址和端口,以及所请求服务的类、方法和参数对象等。
具体的,当用户需要发起目标业务时,可以通过其使用的通信终端110发送目标业务发起请求,该目标业务发起请求中可以包括可以标识目标业务的数据。进一步的,应用服务器120接收到目标业务发起请求时,可以根据目标业务发起请求确定通信终端110所请求发起的目标业务,以及发起目标业务需要访问的业务服务器130,则可以将目标业务发起请求转发至需要访问的业务服务器130。
相应的,目标业务响应数据可以是业务服务器130调用目标业务对应的服务方法所生成的数据,可以用于向通信终端110通知目标业务发起状态,以使通信终端110实现目标业务。目标业务发起方法可以是与目标业务对应的服务方法,可以用于提供目标业务。
具体的,应用服务器120向目标业务需要访问的业务服务器130发送目标业务发起请求后,该业务服务器130可以调用目标业务对应的目标业务发起方法,从而发起目标业务、得到目标业务响应数据并反馈至应用服务器120。进一步的,当应用服务器120接收到业务服务器130反馈的目标业务响应数据时,可以将其转发至与目标业务关联的通信终端110,则全部与目标业务关联的通信终端110可以接收目标业务响应数据,从而得知目标业务的发起状态,并加入目标业务中进行集群通信。
在本发明的一个可选实施例中,应用服务器120,具体可以用于:接收所述目标业务发起请求,并确定与所述目标业务发起请求匹配的至少两个目标业务服务器;对所述目标业务服务器进行负载均衡,将所述目标业务发起请求转发至各所述目标业务服务器。
其中,目标业务服务器可以是可以调用目标业务发起方法的任意业务服务器130。
相应的,当可以调用目标业务发起方法的的业务服务器130的数量为多个时,可以确定出多个目标业务服务器,并在该多个目标业务服务器之间进行负载均衡,从而可以将目标业务发起请求分发至不同的目标业务服务器,实现业务服务器的集群部署,缓解单个服务器的负载压力,提高业务处理效率。
在本发明的一个可选实施例中,通信终端110,还用于:向应用服务器120发送目标业务订阅请求;接收应用服务器120发送的目标业务通知数据,从而根据所述目标业务通知数据向应用服务器120发送所述目标业务发起请求;应用服务器120,还用于:响应于所述目标业务订阅请求,完成通信终端110对所述目标业务的订阅;在确定所述目标业务已注册的情况下,向已订阅所述目标业务的通信终端110发送所述目标业务通知数据。
其中,目标业务订阅请求可以是用于请求服务以订阅目标业务的数据。目标业务通知数据可以是用于通知目标业务已注册状态的数据。
相应的,通信终端110上线后,例如可以是用户在通信终端110成功登录后,可以根据用户需要的目标业务,向应用服务器120发送目标业务订阅请求,从而应用服务器120可以响应于目标业务订阅请求,确认该通信终端110的在线状态以及其订阅的目标业务。在应用服务器120确定目标业务已注册的情况下,即确定目标业务需要调用的服务为可提供状态的情况下,可以向已订阅目标业务的通信终端110发送目标业务通知数据,则通信业务110接收到目标业务通知数据后,可以确定当前可以进行目标业务,从而向应用服务器120发送目标业务发起请求。
可选的,应用服务器120在响应于所述目标业务订阅请求,完成通信终端110对所述目标业务的订阅之后,还可以向通信终端110回复订阅响应,以使通信终端110确定对目标业务订阅成功。
在本发明的一个可选实施例中,业务服务器130,还用于:向应用服务器120发送目标业务注册请求;应用服务器120,还用于:响应于所述目标业务注册请求,对所述目标业务进行注册;根据所述目标业务的注册结果,确定所述目标业务已注册。
其中,目标业务注册请求可以是用于请求服务以注册目标业务的数据。
相应的,业务服务器130上线后,例如可以是启动并配置完成后,可以向应用服务器120发送目标业务注册请求。可选的,目标业务注册请求中可以包括业务服务器130自身的服务IP地址、端口和业务等数据。
进一步的,应用服务器120可以响应于目标业务注册请求,确定该业务服务器130可以提供目标业务需要的服务,并在完成目标业务的注册后确定目标业务已注册。
可选的,目标业务通知数据中可以包括目标业务的标识数据,例如可以包括对应的业务服务器130的IP地址、端口和业务等数据,将其提供给通信终端110,以使通信终端110可以确定需要调用的服务方法。
可选的,应用服务器120在响应于所述目标业务注册请求,完成所述目标业务的注册之后,还可以向业务服务器130回复注册响应,以使业务服务器130确定对目标业务注册成功。
可选的,图3为本发明实施例提供的一种集群通信系统架构的示意图。如图3所示,所述系统包括通信终端、应用服务器和业务服务器。其中,通信终端可以作为服务消费方,通过subscribe(订阅)接口向服务注册中心订阅数据,用于动态获取服务提供方信息。业务服务器可以作为服务提供方,通过publish(注册)接口向服务注册中心注册,描述自身服务IP地址、端口、业务等。应用服务器可以作为服务注册中心,通过publish接口收集服务提供方的IP地址、端口、业务等数据,将数据通知给订阅者服务消费方。基于如图3所示的架构,通信终端作为服务消费方,可以识别作为服务提供方的业务服务器,从而选择合适的业务服务器完成指定的业务功能。具体可选的,可以基于RPC(Remote Procedure Call,远程过程调用)方法选择合适的业务服务器完成指定的业务功能。
可选的,本发明实施例提供的集群通信系统可以是集群部署的。其中,通信终端的数量可以是多个;业务服务器可以包括不同通信业务分别对应的业务服务器,且各类型通信业务对应的业务服务器的数量也可以是多个。
示例性的,图4为本发明实施例提供的一种集群部署场景的示意图。如图4所示,在一个具体的例子中,通信终端的数量为两台,包括终端1和终端2;业务服务器包括至少两台会议服务器和至少两台指挥服务器。其中,终端1和终端2可以作为服务消费方,应用服务器作为服务注册中心,会议服务器可以作为会议服务提供方,指挥服务器可以作为指挥服务提供方。
相应的,示例性的,图5为本发明实施例提供的一种集群通信系统的交互流程示意图。如图5所示,在一个具体的例子中,业务服务器可以是会议服务器。具体的,终端软件上线后,可以向应用服务器订阅会议服务,从而应用服务器收到订阅会议服务请求后,可以完成订阅并回复订阅响应。会议服务器上线后,可以向应用服务器注册会议服务,从而会议服务器收到注册会议业务请求后,可以完成注册并回复注册响应。
进一步的,应用服务器可以向已订阅的终端软件通知已注册的会议服务器,终端软件识别到会议服务器上线后,向应用服务器发起会议业务请求,如开启会议、结束会议等。应用服务器收到发起会议业务请求后,转发请求到会议服务器,转发原则为会议从开启到结束过程中,选择相同的会议服务器,多个会议业务由应用服务器做负载均衡,分发到不同的会议服务器。相应的,会议服务器收到发起会议业务请求后,回复会议业务响应,从而应用服务器收到会议业务响应后,转发到发起会议业务终端和会议业务相关的其他终端。
相应的,示例性的,图6为本发明实施例提供的一种集群通信系统的交互流程示意图。如图6所示,在一个具体的例子中,业务服务器可以是指挥服务器。具体的,终端软件上线后,可以向应用服务器订阅指挥服务,从而应用服务器收到订阅指挥服务请求后,可以完成订阅并回复订阅响应。指挥服务器上线后,可以向应用服务器注册指挥服务,从而应用服务器收到注册指挥业务请求后,可以完成注册并回复注册响应。
进一步的,应用服务器可以向已订阅的终端软件通知已注册的指挥服务器,终端软件识别到指挥服务器上线后,向应用服务器发起指挥业务请求,如开启指挥、结束指挥等。应用服务器收到发起指挥业务请求后,转发请求到指挥服务器,转发原则为指挥从开启到结束过程中,选择相同的指挥服务器,多个指挥业务由应用服务器做负载均衡,分发到不同的指挥服务器。相应的,指挥服务器收到发起指挥业务请求后,回复指挥业务响应,从而应用服务器收到指挥业务响应后,转发到发起指挥业务终端和指挥业务相关的其他终端。
本发明实施例提供了一种集群通信系统,通过在集群通信系统中部署至少一个通信终端、应用服务器和至少一个业务服务器。其中,通过应用服务器接收通信终端发送的目标业务发起请求,并转发至业务服务器,从而通过业务服务器调用对应的目标业务发起方法,并得到目标业务响应数据,反馈至应用服务器,进而应用服务器可以将目标业务响应数据转发至与目标业务关联的通信终端,实现目标业务。本发明实施例解决了现有技术中业务耦合度过高、服务进程过于庞大的问题,实现多业务之间服务进程的拆分与集群部署,降低业务耦合度,提高业务处理效率和用户请求响应速度,优化服务体验。
实施例二
图7是本发明实施例二提供的一种集群通信系统的示意图。如图7所示,在上述实施例的基础上,本实施例对应用服务器的内部架构进行具体化,将应用服务器120的进一步细化为应用服务应用层模块1201、应用服务存根模块1202、应用服务运行时层模块1203和应用服务协议层模块1204。
其中,应用服务应用层模块1201,用于根据目标业务关联请求,确定目标调用方法并调用应用服务存根模块1202。
应用服务存根模块1202,用于获取所述目标调用方法的方法调用参数,并对所述方法调用参数进行封装处理,得到目标调用消息并调用应用服务运行时层模块1203。
应用服务运行时层模块1203,用于对所述目标调用消息进行编码处理,得到目标调用通信数据并调用应用服务协议层模块1204。
应用服务协议层模块1204,用于根据应用服务通信协议,将所述目标调用通信数据发送至与所述目标调用方法匹配的目标服务端进程;还用于根据所述应用服务通信协议接收所述目标服务器端进程反馈的所述目标调用方法的调用返回值。
可选的,应用服务应用层模块1201、应用服务存根模块1202、应用服务运行时层模块1203和应用服务协议层模块1204可以是根据任意计算机语言编写的代码块,也可以是基于硬件搭建的逻辑电路,也可以是其他任意形式的可以实现相应功能的模块,本实施例对此不做限定。
具体的,目标业务关联请求可以包括任意用于向应用服务器请求与目标业务相关的服务的数据,例如可以包括目标业务订阅请求或目标业务注册请求。目标调用方法可以是用于实现目标业务关联请求所请求的服务的方法。方法调用参数可以是用于描述方法的调用路径的参数。封装处理可以是将方法调用参数封装为固定格式消息的操作。目标调用消息可以是对方法调用参数进行封装处理所生成的固定格式消息。编码处理可以是将目标调用消息转换为二进制数据的操作。目标调用通信数据可以是对目标调用消息进行编码处理所生成的二进制数据。应用服务通信协议可以是应用服务器120的进程间通信所采用的通信协议。目标服务端进程可以是用于执行方法的进程。调用返回值可以是目标服务端进程执行方法所生成的数据。
相应的,应用服务器120在接收到目标业务关联请求后可以开启用于响应该请求的目标客户端进程,该进程可以根据接收到的请求数据调用应用服务应用层模块1201、应用服务存根模块1202、应用服务运行时层模块1203和应用服务协议层模块1204中的一个或多个。具体的,目标客户端进程可以是响应于任意请求并调用该请求需要的方法进程的进程。
基于目标客户端进程的调用,应用服务应用层模块1201可以根据目标业务关联请求中用于标识目标业务的数据,确定出需要调用的目标调用方法,并根据目标调用方法调用应用服务存根模块1202。应用服务存根模块1202中可以存放有目标调用方法的方法调用参数,例如可以包括目标调用方法的地址数据,从而将方法调用参数进行封装处理,打包为固定格式消息,得到目标调用消息。
进一步的,应用服务存根模块1202可以进一步调用应用服务运行时层模块1203对目标调用消息进行编码处理,则通过应用服务运行时层模块1203可以将固定格式消息转换为可以传输的二进制数据,得到目标调用通信数据,并调用应用服务协议层模块1204。应用服务协议层模块1204可以将目标调用通信数据通过应用服务通信协议发送到目标服务端进程,以根据应用服务通信协议调用目标服务端进程执行目标调用方法。
相应的,目标服务端进程可以根据接收到的目标调用通信数据调用并执行目标调用方法,从而得到目标调用方法的调用返回值,并将该调用返回值进行反馈至发送该目标调用通信数据的目标客户端进程。因此,该进程可以调用应用服务协议层模块1204接收该调用返回值。
可选的,应用服务协议层模块1204在接收到调用返回值后,可以将调用返回值回传至应用服务应用层模块1201。具体可选的,应用服务协议层模块1204可以将接收到的调用返回值发送至应用服务运行时层模块1203;继而应用服务运行时层模块1203接收到该调用返回值,并将其发送至应用服务存根模块1202;应用服务存根模块1202接收到该调用返回值后,则可以将其发送至应用服务应用层模块1201,以使应用服务应用层模块1201最终接收到目标调用方法的调用返回值,根据调用返回值完成响应于目标业务关联请求的业务逻辑。
在本发明的一个可选实施例中,应用服务协议层模块1204,还用于根据所述应用服务通信协议,接收目标客户端进程发送的所述目标调用通信数据,并调用应用服务运行时层模块1203;还用于根据所述应用服务通信协议,将所述调用返回值反馈至所述目标客户端进程。
应用服务运行时层模块1203,还用于对所述目标调用通信数据进行解码处理,得到目标调用消息并调用应用服务存根模块1202。
应用服务存根模块1202,还用于对所述目标调用消息进行解析处理,得到解析结果数据并调用所述目标调用方法,得到所述目标调用方法的所述调用返回值。
应用服务应用层模块1201,还用于执行所述目标调用方法,生成所述目标调用方法的所述调用返回值。
具体的,目标客户端进程可以是用于响应请求并调用该请求需要的方法进程的进程。解码处理可以是将目标调用通信数据转换为固定格式消息的操作,可以于编码处理的过程相对应。解析处理可以是获取目标调用消息中的内容数据的操作。解析结果数据可以是对目标调用消息进行解析处理所得到的内容数据,例如可以包括方法的标识数据或方法调用参数。
相应的,目标服务端进程也可以根据接收到的任意通信数据调用应用服务应用层模块1201、应用服务存根模块1202、应用服务运行时层模块1203和应用服务协议层模块1204中的一个或多个,以响应于接收到的通信数据。
基于目标服务端进程的调用,应用服务协议层模块1204可以通过应用服务通信协议,接收目标客户端进程发送的目标调用通信数据,以使目标服务端进程可以根据目标调用通信数据执行目标调用方法。应用服务协议层模块1204根据接收到的目标调用通信数据,调用应用服务运行时层模块1203,以使应用服务运行时层模块1203可以采用与编码处理方法对应的解码处理方法,对目标调用通信数据进行解码处理,从而将二进制数据转换为固定格式消息,得到目标调用消息,并调用应用服务存根模块1202。
进一步的,应用服务存根模块1202对目标调用消息进行解析处理,以根据目标调用消息的解析结果数据确定目标调用方法,并调用目标调用方法。应用服务应用层模块1201则可以执行目标调用方法的业务逻辑,生成目标调用方法的调用返回值,从而使应用服务存根模块1202得到该调用返回值。
相应的,应用服务存根模块1202得到调用返回值之后,可以通过应用服务协议层模块1204将调用返回值反馈至目标客户端进程。
可选的,应用服务存根模块1202可以将得到的调用返回值发送至应用服务运行时层模块1203;继而应用服务运行时层模块1203接收到该调用返回值,并将其发送至应用服务协议层模块1204;应用服务协议层模块1204接收到该调用返回值后,则可以通过应用服务通信协议,将调用返回值发送至目标客户端进程,以使目标客户端进程可以调用应用服务协议层模块1204接收该调用返回值并逐层回传至应用服务应用层模块1201,并通过应用服务应用层模块1201根据调用返回值完成响应于目标业务关联请求的业务逻辑。
示例性的,图8为本发明实施例提供的一种服务器进程架构的示意图。如图8所示,在一个具体的例子中,目标服务端进程架构可以包括应用业务层Application、客户端存根/服务端存根Client Stub/Server Stub、运行时层Runtime Library以及协议层Transport。其中,应用业务层可以处理业务逻辑,确定调用的方法。客户端存根可以存放服务端地址信息,将业务对象信息打包成网络消息。服务端存根可以将网络消息转为业务对象,分发到应用层处理。运行时层可以将网络消息编码为字节流或将字节流解码为网络消息。协议层可以按照通信协议发送字节流和接收字节流。
示例性的,图9为本发明实施例提供的一种进程间调用的流程示意图。如图9所示,在一个具体的例子中,服务器中包括两个进程Client和Server,其中,Client端调用Server端A类的a方法,A类的Client Stub和Server Stub由RPC接口工具生成。相应的,Client端的业务层伪代码可以包括main(){B b=new B();c=A.a(b);},Server端的业务层伪代码可以包括Class A{a(B b){return xx;}}。
相应的,在如图9所示的调用流程中,Client端应用层调用A类的Client Stub的a方法,希望执行A类的Server Stub的a方法;Client端Client Stub将要执行的目标server的IP、端口、A类、a方法和参数对象b封装为固定格式消息,调用Runtime方法;Client端Runtime层将固定格式消息转换为二进制数据,调用Transport方法;Client端Transport层将二进制数据通过指定协议发送出去。从而,Server端Transport收到二进制数据后,调用Server端Runtime方法;Server端Runtime层将二进制数据转换为固定格式消息,调用Server端Server Stub方法;Server端Server Stub找到类A的对象,执行a方法;Server端的a方法return(返回)后,将返回值逐层返给Server Stub、Runtime Library和Transport,由Server端的Transport层通过协议发送给Client端,Client端Transport层收到二进制数据后,逐层经过Runtime Library和Client Stub,将返回值赋值给变量c,完成调用。
相应的,图10为现有技术中的服务器进程架构的示意图。如图10所示,现有技术提供的服务器进程架构包括应用层Application和协议层Transport。其中,应用层负责处理用户业务,协议层负责收发协议消息,则在进程中应用层与协议层进行直接交互,应用层需要直接基于通信协议,发送、处理并应答请求,然后从采用通信协议的消息中提取业务对象,再处理用户业务。因此,在现有技术提供的进程架构中,应用层和协议层与通信协议紧密结合,如果切换为其他类型协议,则需要分别修改应用层和协议层的代码,造成开发过程繁琐,易导致进程出现错误。
因此,上述实施方式提供了应用服务器的内部架构及进程架构,将现有技术中提供的进程架构中的应用层与协议层分离,使应用层不再与协议层产生直接依赖,当通信协议切换时,其代码无需进行修改,便于开发与维护。
本发明实施例提供了一种集群通信系统,通过在集群通信系统中部署至少一个通信终端、应用服务器和至少一个业务服务器。其中,通过应用服务器接收通信终端发送的目标业务发起请求,并转发至业务服务器,从而通过业务服务器调用对应的目标业务发起方法,并得到目标业务响应数据,反馈至应用服务器,进而应用服务器可以将目标业务响应数据转发至与目标业务关联的通信终端,实现目标业务。本发明实施例解决了现有技术中业务耦合度过高、服务进程过于庞大的问题,实现多业务之间服务进程的拆分与集群部署,降低业务耦合度,提高业务处理效率和用户请求响应速度,优化服务体验;进一步的,还通过在应用服务器中部署应用服务应用层模块、应用服务存根模块、应用服务运行时层模块和应用服务协议层模块,降低应用服务器中应用层与协议层之间的依赖性,简化服务器的开发、维护与更新过程。
实施例三
图11是本发明实施例三提供的一种集群通信系统的示意图。如图11所示,在上述实施例的基础上,本实施例对业务服务器的内部架构进行具体化,将应用服务器130的进一步细化为业务服务应用层模块1301、业务服务存根模块1302、业务服务运行时层模块1303和业务服务协议层模块1304。
其中,业务服务应用层模块1301,用于根据所述目标业务发起请求,确定所述目标业务发起方法并调用业务服务存根模块1302。
业务服务存根模块1302,用于获取所述目标业务发起方法的方法调用参数,并对所述方法调用参数进行封装处理,得到目标调用消息并调用业务服务运行时层模块1303。
业务服务运行时层模块1303,用于对所述目标调用消息进行编码处理,得到目标调用通信数据并调用业务服务协议层模块1304。
业务服务协议层模块1304,用于根据业务服务通信协议,将所述目标调用通信数据发送至与所述目标业务发起方法匹配的目标服务端进程;还用于根据所述业务服务通信协议接收所述目标服务器端进程反馈的所述目标业务发起方法的调用返回值。
可选的,业务服务应用层模块1301、业务服务存根模块1302、业务服务运行时层模块1303和业务服务协议层模块1304可以是根据任意计算机语言编写的代码块,也可以是基于硬件搭建的逻辑电路,也可以是其他任意形式的可以实现相应功能的模块,本实施例对此不做限定。
具体的,业务服务通信协议可以是业务服务器130的进程间通信所采用的通信协议。
相应的,业务服务器130在接收到目标业务发起请求后可以开启用于响应该请求的目标客户端进程,该进程可以根据接收到的请求调用业务服务应用层模块1301、业务服务存根模块1302、业务服务运行时层模块1303和业务服务协议层模块1304中的一个或多个。
基于目标客户端进程的调用,业务服务应用层模块1301可以根据目标业务发起请求中用于标识目标业务的数据,确定出需要调用的目标业务发起方法,并根据目标业务发起方法调用业务服务存根模块1302。业务服务存根模块1302中可以存放有目标业务发起方法的方法调用参数,例如可以包括目标业务发起方法的地址数据,从而将方法调用参数进行封装处理,打包为固定格式消息,得到目标调用消息。
进一步的,业务服务存根模块1302可以进一步调用业务服务运行时层模块1303对目标调用消息进行编码处理,则通过业务服务运行时层模块1303可以将固定格式消息转换为可以传输的二进制数据,得到目标调用通信数据,并调用业务服务协议层模块1304。业务服务协议层模块1304可以将目标调用通信数据通过业务服务通信协议发送到目标服务端进程,以根据业务服务通信协议调用目标服务端进程执行目标业务发起方法。
相应的,目标服务端进程可以根据接收到的目标调用通信数据调用并执行目标业务发起方法,从而得到目标业务发起方法的调用返回值,并将该调用返回值进行反馈至发送该目标调用通信数据的目标客户端进程。因此,该进程可以调用业务服务协议层模块1304接收该调用返回值。
可选的,业务服务协议层模块1304在接收到调用返回值后,可以将调用返回值回传至业务服务应用层模块1301。具体可选的,业务服务协议层模块1304可以将接收到的调用返回值发送至业务服务运行时层模块1303;继而业务服务运行时层模块1303接收到该调用返回值,并将其发送至业务服务存根模块1302;业务服务存根模块1302接收到该调用返回值后,则可以将其发送至业务服务应用层模块1301,以使业务服务应用层模块1301最终接收到目标业务发起方法的调用返回值,根据调用返回值完成响应于目标业务发起请求的业务逻辑,即目标业务的业务逻辑。
在本发明的一个可选实施例中,业务服务协议层模块1304,还用于根据所述业务服务通信协议,接收目标客户端进程发送的所述目标调用通信数据,并调用业务服务运行时层模块1303;还用于根据所述业务服务通信协议,将所述调用返回值反馈至所述目标客户端进程。
业务服务运行时层模块1303,还用于对所述目标调用通信数据进行解码处理,得到目标调用消息并调用业务服务存根模块1302。
业务服务存根模块1302,还用于对所述目标调用消息进行解析处理,得到解析结果数据并调用所述目标业务发起方法,得到所述目标业务发起方法的所述调用返回值。
业务服务应用层模块1301,还用于执行所述目标业务发起方法,生成所述目标业务发起方法的所述调用返回值。
相应的,目标服务端进程也可以根据接收到的任意通信数据调用业务服务应用层模块1301、业务服务存根模块1302、业务服务运行时层模块1303和业务服务协议层模块1304中的一个或多个,以响应于接收到的通信数据。
基于目标服务端进程的调用,业务服务协议层模块1304可以通过业务服务通信协议,接收目标客户端进程发送的目标调用通信数据,以使目标服务端进程可以根据目标调用通信数据执行目标业务发起方法。业务服务协议层模块1304根据接收到的目标调用通信数据,调用业务服务运行时层模块1303,以使业务服务运行时层模块1303可以采用与编码处理方法对应的解码处理方法,对目标调用通信数据进行解码处理,从而将二进制数据转换为固定格式消息,得到目标调用消息,并调用业务服务存根模块1302。
进一步的,业务服务存根模块1302对目标调用消息进行解析处理,以根据目标调用消息的解析结果数据确定目标业务发起方法,并调用目标业务发起方法。业务服务应用层模块1301则可以执行目标业务发起方法的业务逻辑,生成目标业务发起方法的调用返回值,从而使业务服务存根模块1302得到该调用返回值。
相应的,业务服务存根模块1302得到调用返回值之后,可以通过业务服务协议层模块1304将调用返回值反馈至目标客户端进程。
可选的,业务服务存根模块1302可以将得到的调用返回值发送至业务服务运行时层模块1303;继而业务服务运行时层模块1303接收到该调用返回值,并将其发送至业务服务协议层模块1304;业务服务协议层模块1304接收到该调用返回值后,则可以通过业务服务通信协议,将调用返回值发送至目标客户端进程,以使目标客户端进程可以调用业务服务协议层模块1304接收该调用返回值并逐层回传至业务服务应用层模块1301,并通过业务服务应用层模块1301根据调用返回值完成响应于目标业务发起请求的业务逻辑,即目标业务的业务逻辑。
上述实施方式提供了业务服务器的内部架构及进程架构,将现有技术中提供的进程架构中的应用层与协议层分离,使应用层不再与协议层产生直接依赖,当通信协议切换时,其代码无需进行修改,便于开发与维护。
可选的,针对应用服务器120和业务服务器130,可以采用Java语言编写运行时层模块和协议层模块,并打包为jar文件,以便于进程使用。其中,运行时层模块可以是应用服务运行时层模块,也可以是业务服务运行时层模块;协议层模块可以是应用服务协议层模块,也可以是业务服务协议层模块。
相应可选的,应用服务存根模块和业务服务存根模块均可以包括客户端存根模块和服务端存根模块,客户端存根模块和服务端存根模块可以是针对业务RPC接口的存根,由RPC接口工具生成。具体的,RPC接口工具的功能,可以包括根据服务端存根模块代码生成客户端存根模块代码,以及根据客户端存根模块代码生成服务端存根模块代码。
进一步可选的,RPC接口工具可以采用Java语言作为IDL(Interface DescriptionLanguage,接口定义语言)语法。
在现有技术中,开源的RPC框架有gRPC、thrift等,其均采用IDL,但IDL语法各不相同,而且语法解析也要花费大量工作。因此,本发明实施例中的RPC接口生成工具采用Java语言作为IDL语法,其与现有技术相比,一是Java语法为强类型,支持定义多种数据类型,二是服务端软件多为Java开发,定义的接口可直接拿来用,只需要生成客户端代码即可。
示例性的,图12为本发明实施例提供的一种服务器程序架构的示意图。如图12所示,在一个具体的例子中,名称为Runtime.jar的文件为本发明实施例提供的运行时层模块和协议层模块的打包文件。相应的,应用服务器程序Applicationserve可以部署于应用服务器,其中可以引入Runtime.jar文件,并通过RPC接口工具实现与终端的交互接口;业务服务器可以包括会议服务器和指挥服务器,其中,会议服务器程序Cnfserver可以部署于一个或多个会议服务器,其中可以引入Runtime.jar文件,并通过RPC接口工具实现业务注册接口和会议业务接口等;指挥服务器程序Cmdserver可以部署于一个或多个指挥服务器,其中可以引入Runtime.jar文件,并通过RPC接口工具实现业务注册接口和指挥业务接口等。
在本发明的一个可选实施例中,所述业务服务通信协议为会话启动协议SIP。
其中,SIP(Session Initiation Protocol,会话启动协议)是一个基于文本的应用层控制协议,用于创建、修改和释放一个或多个参与者的会话。
在现有技术中,开源RPC框架不支持SIP协议。开源的RPC框架有gRPC、thrift等,底层为REST、HTTP2等协议,不方便扩展为SIP协议。本发明上述实施方式提供了基于SIP的进程架构,实现基于SIP的集群通信平台。
本发明实施例提供了一种集群通信系统,通过在集群通信系统中部署至少一个通信终端、应用服务器和至少一个业务服务器。其中,通过应用服务器接收通信终端发送的目标业务发起请求,并转发至业务服务器,从而通过业务服务器调用对应的目标业务发起方法,并得到目标业务响应数据,反馈至应用服务器,进而应用服务器可以将目标业务响应数据转发至与目标业务关联的通信终端,实现目标业务。本发明实施例解决了现有技术中业务耦合度过高、服务进程过于庞大的问题,实现多业务之间服务进程的拆分与集群部署,降低业务耦合度,提高业务处理效率和用户请求响应速度,优化服务体验;进一步的,还通过在业务服务器中部署业务服务应用层模块、业务服务存根模块、业务服务运行时层模块和业务服务协议层模块,降低业务服务器中应用层与协议层之间的依赖性,简化服务器的开发、维护与更新过程。
实施例四
图13为本发明实施例四提供的一种集群通信方法的流程图,本实施例可适用于对集群通信业务之间的服务进程进行拆分与集群部署的情况,该方法可以由本发明实施例提供的集群通信系统来执行,该系统可以由软件和/或硬件的方式来实现。相应的,如图13所示,该方法包括如下操作:
S410、通过通信终端向应用服务器发送目标业务发起请求。
S420、通过所述应用服务器接收所述目标业务发起请求,并转发至所述目标业务匹配的业务服务器。
S430、通过所述业务服务器调用所述目标业务对应的目标业务发起方法,得到目标业务响应数据并反馈至所述应用服务器。
S440、通过所述应用服务器接收所述目标业务响应数据,并转发至与所述目标业务关联的所述通信终端。
S450、通过所述通信终端接收所述目标业务响应数据,实现所述目标业务。
在本发明的一个可选实施例中,所述方法,还可以包括:通过通信终端向所述应用服务器发送目标业务订阅请求;通过应用服务器响应于所述目标业务订阅请求,完成所述通信终端对所述目标业务的订阅;通过应用服务器在确定所述目标业务已注册的情况下,向已订阅所述目标业务的所述通信终端发送所述目标业务通知数据;通过通信终端接收所述应用服务器发送的目标业务通知数据,从而根据所述目标业务通知数据向所述应用服务器发送所述目标业务发起请求。
在本发明的一个可选实施例中,所述方法,还可以包括:通过业务服务器向所述应用服务器发送目标业务注册请求;通过应用服务器响应于所述目标业务注册请求,对所述目标业务进行注册;通过应用服务器根据所述目标业务的注册结果,确定所述目标业务已注册。
在本发明的一个可选实施例中,所述方法,具体可以包括:通过所述应用服务器的应用服务应用层模块根据目标业务关联请求,确定目标调用方法并调用所述应用服务器的应用服务存根模块;通过所述应用服务存根模块获取所述目标调用方法的方法调用参数,并对所述方法调用参数进行封装处理,得到目标调用消息并调用所述应用服务器的应用服务运行时层模块;通过所述应用服务运行时层模块对所述目标调用消息进行编码处理,得到目标调用通信数据并调用所述应用服务器的应用服务协议层模块;通过所述应用服务协议层模块根据应用服务通信协议,将所述目标调用通信数据发送至与所述目标调用方法匹配的目标服务端进程;通过所述应用服务协议层模块根据所述应用服务通信协议接收所述目标服务器端进程反馈的所述目标调用方法的调用返回值。
在本发明的一个可选实施例中,所述方法,具体可以包括:通过所述应用服务协议层模块根据所述应用服务通信协议,接收目标客户端进程发送的所述目标调用通信数据,并调用所述应用服务运行时层模块;通过所述应用服务运行时层模块对所述目标调用通信数据进行解码处理,得到目标调用消息并调用所述应用服务存根模块;通过所述应用服务存根模块对所述目标调用消息进行解析处理,得到解析结果数据并调用所述目标调用方法,得到所述目标调用方法的所述调用返回值;通过所述应用服务应用层模块执行所述目标调用方法,生成所述目标调用方法的所述调用返回值;通过所述应用服务协议层模块根据所述应用服务通信协议,将所述调用返回值反馈至所述目标客户端进程。
在本发明的一个可选实施例中,所述通过所述业务服务器调用所述目标业务对应的目标业务发起方法,得到目标业务响应数据并反馈至所述应用服务器,可以包括:通过所述业务服务器的业务服务应用层模块根据所述目标业务发起请求,确定所述目标业务发起方法并调用所述业务服务器的业务服务存根模块;通过所述业务服务存根模块获取所述目标业务发起方法的方法调用参数,并对所述方法调用参数进行封装处理,得到目标调用消息并调用所述业务服务器的业务服务运行时层模块;通过所述业务服务运行时层模块对所述目标调用消息进行编码处理,得到目标调用通信数据并调用所述业务服务器的业务服务协议层模块;通过所述业务服务协议层模块根据业务服务通信协议,将所述目标调用通信数据发送至与所述目标业务发起方法匹配的目标服务端进程;通过所述业务服务协议层模块根据所述业务服务通信协议接收所述目标服务器端进程反馈的所述目标业务发起方法的调用返回值。
在本发明的一个可选实施例中,所述通过所述业务服务器调用所述目标业务对应的目标业务发起方法,得到目标业务响应数据并反馈至所述应用服务器,还可以包括:通过所述业务服务协议层模块根据所述业务服务通信协议,接收目标客户端进程发送的所述目标调用通信数据,并调用所述业务服务运行时层模块;通过所述业务服务运行时层模块对所述目标调用通信数据进行解码处理,得到目标调用消息并调用所述业务服务存根模块;通过所述业务服务存根模块对所述目标调用消息进行解析处理,得到解析结果数据并调用所述目标业务发起方法,得到所述目标业务发起方法的所述调用返回值;通过所述业务服务应用层模块执行所述目标业务发起方法,生成所述目标业务发起方法的所述调用返回值;通过所述业务服务协议层模块根据所述业务服务通信协议,将所述调用返回值反馈至所述目标客户端进程。
在本发明的一个可选实施例中,所述业务服务通信协议可以为会话启动协议SIP。
在本发明的一个可选实施例中,所述通过所述应用服务器接收所述目标业务响应数据,并转发至与所述目标业务关联的所述通信终端,可以包括:通过所述应用服务器接收所述目标业务发起请求,并确定与所述目标业务发起请求匹配的至少两个目标业务服务器;通过所述应用服务器对所述目标业务服务器进行负载均衡,将所述目标业务发起请求转发至各所述目标业务服务器。
本发明实施例提供了一种集群通信方法,通过在集群通信系统中部署至少一个通信终端、应用服务器和至少一个业务服务器。其中,通过应用服务器接收通信终端发送的目标业务发起请求,并转发至业务服务器,从而通过业务服务器调用对应的目标业务发起方法,并得到目标业务响应数据,反馈至应用服务器,进而应用服务器可以将目标业务响应数据转发至与目标业务关联的通信终端,实现目标业务。本发明实施例解决了现有技术中业务耦合度过高、服务进程过于庞大的问题,实现多业务之间服务进程的拆分与集群部署,降低业务耦合度,提高业务处理效率和用户请求响应速度,优化服务体验。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种集群通信系统,其特征在于,包括:至少一个通信终端、应用服务器和至少一个业务服务器;其中:
所述通信终端与所述应用服务器保持通信连接,用于向所述应用服务器发送目标业务发起请求,并接收所述应用服务器转发的目标业务响应数据,实现目标业务;
所述应用服务器与所述通信终端、所述业务服务器保持通信连接,用于接收所述目标业务发起请求,并转发至所述目标业务匹配的所述业务服务器;接收所述业务服务器发送的目标业务响应数据,并转发至与所述目标业务关联的所述通信终端;
所述业务服务器与所述应用服务器保持通信连接,用于在接收到所述应用服务器发送的所述目标业务发起请求时,调用所述目标业务对应的目标业务发起方法,得到所述目标业务响应数据并反馈至所述应用服务器。
2.根据权利要求1所述的系统,其特征在于,所述通信终端,还用于:
向所述应用服务器发送目标业务订阅请求;
接收所述应用服务器发送的目标业务通知数据,从而根据所述目标业务通知数据向所述应用服务器发送所述目标业务发起请求;
所述应用服务器,还用于:
响应于所述目标业务订阅请求,完成所述通信终端对所述目标业务的订阅;
在确定所述目标业务已注册的情况下,向已订阅所述目标业务的所述通信终端发送所述目标业务通知数据。
3.根据权利要求2所述的系统,其特征在于,所述业务服务器,还用于:
向所述应用服务器发送目标业务注册请求;
所述应用服务器,还用于:
响应于所述目标业务注册请求,对所述目标业务进行注册;
根据所述目标业务的注册结果,确定所述目标业务已注册。
4.根据权利要求1-3任一所述的系统,其特征在于,所述应用服务器包括应用服务应用层模块、应用服务存根模块、应用服务运行时层模块和应用服务协议层模块;其中:
所述应用服务应用层模块,用于根据目标业务关联请求,确定目标调用方法并调用所述应用服务存根模块;
所述应用服务存根模块,用于获取所述目标调用方法的方法调用参数,并对所述方法调用参数进行封装处理,得到目标调用消息并调用所述应用服务运行时层模块;
所述应用服务运行时层模块,用于对所述目标调用消息进行编码处理,得到目标调用通信数据并调用所述应用服务协议层模块;
所述应用服务协议层模块,用于根据应用服务通信协议,将所述目标调用通信数据发送至与所述目标调用方法匹配的目标服务端进程;还用于根据所述应用服务通信协议接收所述目标服务器端进程反馈的所述目标调用方法的调用返回值。
5.根据权利要求4所述的系统,其特征在于,所述应用服务协议层模块,还用于根据所述应用服务通信协议,接收目标客户端进程发送的所述目标调用通信数据,并调用所述应用服务运行时层模块;还用于根据所述应用服务通信协议,将所述调用返回值反馈至所述目标客户端进程;
所述应用服务运行时层模块,还用于对所述目标调用通信数据进行解码处理,得到目标调用消息并调用所述应用服务存根模块;
所述应用服务存根模块,还用于对所述目标调用消息进行解析处理,得到解析结果数据并调用所述目标调用方法,得到所述目标调用方法的所述调用返回值;
所述应用服务应用层模块,还用于执行所述目标调用方法,生成所述目标调用方法的所述调用返回值。
6.根据权利要求1所述的系统,其特征在于,所述业务服务器包括业务服务应用层模块、业务服务存根模块、业务服务运行时层模块和业务服务协议层模块;其中:
所述业务服务应用层模块,用于根据所述目标业务发起请求,确定所述目标业务发起方法并调用所述业务服务存根模块;
所述业务服务存根模块,用于获取所述目标业务发起方法的方法调用参数,并对所述方法调用参数进行封装处理,得到目标调用消息并调用所述业务服务运行时层模块;
所述业务服务运行时层模块,用于对所述目标调用消息进行编码处理,得到目标调用通信数据并调用所述业务服务协议层模块;
所述业务服务协议层模块,用于根据业务服务通信协议,将所述目标调用通信数据发送至与所述目标业务发起方法匹配的目标服务端进程;还用于根据所述业务服务通信协议接收所述目标服务器端进程反馈的所述目标业务发起方法的调用返回值。
7.根据权利要求6所述的系统,其特征在于,所述业务服务协议层模块,还用于根据所述业务服务通信协议,接收目标客户端进程发送的所述目标调用通信数据,并调用所述业务服务运行时层模块;还用于根据所述业务服务通信协议,将所述调用返回值反馈至所述目标客户端进程;
所述业务服务运行时层模块,还用于对所述目标调用通信数据进行解码处理,得到目标调用消息并调用所述业务服务存根模块;
所述业务服务存根模块,还用于对所述目标调用消息进行解析处理,得到解析结果数据并调用所述目标业务发起方法,得到所述目标业务发起方法的所述调用返回值;
所述业务服务应用层模块,还用于执行所述目标业务发起方法,生成所述目标业务发起方法的所述调用返回值。
8.根据权利要求6所述的系统,其特征在于,所述业务服务通信协议为会话启动协议SIP。
9.根据权利要求1所述的系统,其特征在于,所述应用服务器,具体用于:
接收所述目标业务发起请求,并确定与所述目标业务发起请求匹配的至少两个目标业务服务器;
对所述目标业务服务器进行负载均衡,将所述目标业务发起请求转发至各所述目标业务服务器。
10.一种集群通信方法,其特征在于,应用于集群通信系统,包括:
通过通信终端向应用服务器发送目标业务发起请求;
通过所述应用服务器接收所述目标业务发起请求,并转发至所述目标业务匹配的业务服务器;
通过所述业务服务器调用所述目标业务对应的目标业务发起方法,得到目标业务响应数据并反馈至所述应用服务器;
通过所述应用服务器接收所述目标业务响应数据,并转发至与所述目标业务关联的所述通信终端;
通过所述通信终端接收所述目标业务响应数据,实现所述目标业务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110843922.9A CN113596139A (zh) | 2021-07-26 | 2021-07-26 | 一种集群通信系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110843922.9A CN113596139A (zh) | 2021-07-26 | 2021-07-26 | 一种集群通信系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113596139A true CN113596139A (zh) | 2021-11-02 |
Family
ID=78249918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110843922.9A Pending CN113596139A (zh) | 2021-07-26 | 2021-07-26 | 一种集群通信系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113596139A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050220207A1 (en) * | 2004-04-02 | 2005-10-06 | Perlman Stephen G | System and method for enhancing near vertical incidence skywave ("NVIS") communication using space-time coding |
CN101043478A (zh) * | 2007-04-20 | 2007-09-26 | 北京航空航天大学 | 实现消息安全处理的服务网关及方法 |
US20090216897A1 (en) * | 2007-04-13 | 2009-08-27 | Huawei Technologies Co., Ltd. | Method and system for controlling streaming rates |
US20100306349A1 (en) * | 2007-05-15 | 2010-12-02 | Min Shen | Method and System for Configuring Service on Terminal |
CN102647437A (zh) * | 2011-02-22 | 2012-08-22 | 铁道部运输局 | 调度集中方法及系统 |
US20160212222A1 (en) * | 2013-10-08 | 2016-07-21 | Accenture Global Services Limited | Service provider network migration |
US20180109608A1 (en) * | 2015-06-10 | 2018-04-19 | Alibaba Group Holding Limited | Communication tool for data transfer |
CN110351342A (zh) * | 2019-06-20 | 2019-10-18 | 平安科技(深圳)有限公司 | 业务指令处理方法、装置、计算机设备和存储介质 |
CN111510476A (zh) * | 2020-04-03 | 2020-08-07 | 金蝶软件(中国)有限公司 | 通信方法、装置、计算机设备和计算机可读存储介质 |
US20210126840A1 (en) * | 2019-10-25 | 2021-04-29 | Verizon Patent And Licensing Inc. | Method and system for selection and orchestration of multi-access edge computing resources |
-
2021
- 2021-07-26 CN CN202110843922.9A patent/CN113596139A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050220207A1 (en) * | 2004-04-02 | 2005-10-06 | Perlman Stephen G | System and method for enhancing near vertical incidence skywave ("NVIS") communication using space-time coding |
US20090216897A1 (en) * | 2007-04-13 | 2009-08-27 | Huawei Technologies Co., Ltd. | Method and system for controlling streaming rates |
CN101043478A (zh) * | 2007-04-20 | 2007-09-26 | 北京航空航天大学 | 实现消息安全处理的服务网关及方法 |
US20100306349A1 (en) * | 2007-05-15 | 2010-12-02 | Min Shen | Method and System for Configuring Service on Terminal |
CN102647437A (zh) * | 2011-02-22 | 2012-08-22 | 铁道部运输局 | 调度集中方法及系统 |
US20160212222A1 (en) * | 2013-10-08 | 2016-07-21 | Accenture Global Services Limited | Service provider network migration |
US20180109608A1 (en) * | 2015-06-10 | 2018-04-19 | Alibaba Group Holding Limited | Communication tool for data transfer |
CN110351342A (zh) * | 2019-06-20 | 2019-10-18 | 平安科技(深圳)有限公司 | 业务指令处理方法、装置、计算机设备和存储介质 |
US20210126840A1 (en) * | 2019-10-25 | 2021-04-29 | Verizon Patent And Licensing Inc. | Method and system for selection and orchestration of multi-access edge computing resources |
CN111510476A (zh) * | 2020-04-03 | 2020-08-07 | 金蝶软件(中国)有限公司 | 通信方法、装置、计算机设备和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109815025B (zh) | 一种业务模型调用方法、装置及存储介质 | |
EP2237516B1 (en) | Systems and/or methods for standards-based messaging | |
CN111294399B (zh) | 一种数据传输方法和装置 | |
US8612932B2 (en) | Unified framework and method for call control and media control | |
US20070118842A1 (en) | DDS-assisted CORBA discovery | |
US20040054722A1 (en) | Meta service selector, meta service selector protocol, method, client, service, network access server, distributed system, and a computer software product for deploying services over a plurality of networks | |
CN113301166A (zh) | 服务的调用方法及装置、存储介质、电子装置 | |
CN111082904A (zh) | 一种基于rtos的rpc通信方法 | |
CN113472889A (zh) | 微服务的调度系统及方法 | |
CN107295003B (zh) | 一种数据传输方法、装置及系统 | |
US11929933B2 (en) | Ephemeral data stream routing service | |
CN110971639B (zh) | 消息分发方法、消息管理系统、服务器及计算机存储介质 | |
CN113596139A (zh) | 一种集群通信系统及方法 | |
US20100262702A1 (en) | Service enhancement method, proxy server and communication system | |
CN109525539B (zh) | 一种能力调用方法、调用回执方法、信息处理方法及系统 | |
CN111193941B (zh) | 一种媒体数据的传输方法、装置、设备及存储介质 | |
CN115550468A (zh) | 业务请求处理方法、装置、设备及介质 | |
CN113992644A (zh) | 一种基于无服务技术的物联网关系统及其数据处理方法 | |
EP1202176B1 (en) | Message-based software system | |
CN112448952B (zh) | 解决远程接收并存储智能设备参数的方法及装置 | |
CN115567616A (zh) | 服务协议转换方法及装置 | |
CN114172929B (zh) | 通信方法、装置以及网关 | |
CN118118495A (zh) | 一种车端请求云端服务的实现方法、系统及车端 | |
CN104104663A (zh) | 一种分布式调用框架、设备及其数据传输方法 | |
CN115914377A (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 |