CN116260824A - 业务数据传输方法、系统及存储介质和相关设备 - Google Patents
业务数据传输方法、系统及存储介质和相关设备 Download PDFInfo
- Publication number
- CN116260824A CN116260824A CN202111506038.2A CN202111506038A CN116260824A CN 116260824 A CN116260824 A CN 116260824A CN 202111506038 A CN202111506038 A CN 202111506038A CN 116260824 A CN116260824 A CN 116260824A
- Authority
- CN
- China
- Prior art keywords
- service
- instance
- server
- service server
- service processing
- 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
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了业务数据传输方法、系统及存储介质和相关设备,应用于通信技术领域,比如自动驾驶和地图领域中的通信。通过业务服务器集群中各个业务服务器上设置业务处理实例,当业务终端发起业务连接请求时,信令服务器可以指定业务服务器集群中的某一个业务处理实例,并建立业务终端与指定的业务处理实例所属的业务服务器之间的连接,通过建立的连接传输业务渲染数据。这样通过对业务处理实例进行集中管理和分配,使得当业务终端发起业务连接请求时,信令服务器可以为业务终端分配一个空闲且状态较好的第一业务处理实例,保证业务终端与业务服务器之间的连接及之后的业务数据传输,同时提高了后台部署的业务处理实例的利用率。
Description
技术领域
本发明涉及通信技术领域,特别涉及业务数据传输方法、系统及存储介质和相关设备。
背景技术
随着图像数据处理技术的发展,出现很多基于图像处理的应用,比如地图应用等。在地图应用中,为了给用户提供更真实的地图信息,会给用户提供三维地图。
目前地图应用系统中,用户可以通过地图客户端直接访问地图服务器。而在地图服务器中设置有三维地图渲染功能。比如在地图服务器中储存一个用于提供渲染引擎服务的可执行程序。这样,地图服务器可以通过该三维地图渲染功能,直接将三维地图渲染结果传输给地图客户端进行显示。但是,现有的任一地图客户端为了获取三维地图渲染结果,都需要连接到固定的地图服务器,由固定的地图服务器来传输各个地图客户端的三维地图渲染结果,在网络差的情况下,三维地图渲染结果的传输不能得到保证。
发明内容
本发明实施例提供业务数据传输方法、系统及存储介质和相关设备,可以保证业务数据的传输。
本发明实施例一方面提供一种业务数据传输方法,包括:
接收业务终端发送的业务连接请求;
确定所述业务连接请求对应的第一业务处理实例;所述第一业务处理实例设置在业务服务器集群中,用于形成业务渲染数据,并向所述业务终端传输业务渲染数据;
确定所述第一业务处理实例所属的业务服务器及业务终端分别对应的网络传输接口;
根据所述业务服务器及业务终端分别对应的网络传输接口,在所述业务服务器与业务终端之间建立连接,以便所述第一业务处理实例向所述业务终端传输业务渲染数据。
本发明实施例另一方面提供一种业务数据传输系统,包括:
连接请求单元,用于接收业务终端发送的业务连接请求;
实例确定单元,用于确定所述业务连接请求对应的第一业务处理实例;所述第一业务处理实例设置在业务服务器集群中,用于形成业务渲染数据,并向所述业务终端传输业务渲染数据;
接口确定单元,用于确定所述第一业务处理实例所属的业务服务器及业务终端分别对应的网络传输接口;
连接传输单元,用于根据所述业务服务器及业务终端分别对应的网络传输接口,在所述业务服务器与业务终端之间建立连接,以便所述第一业务处理实例向所述业务终端传输业务渲染数据。
本发明实施例另一方面还提供一种计算机可读存储介质,所述计算机可读存储介质储存多个计算机程序,所述计算机程序适于由处理器加载并执行如本发明实施例一方面所述的业务数据传输方法。
本发明实施例另一方面还提供一种服务器,包括处理器和存储器;
所述存储器用于储存多个计算机程序,所述计算机程序用于由处理器加载并执行如本发明实施例一方面所述的业务数据传输方法;所述处理器,用于实现所述多个计算机程序中的各个计算机程序。
可见,在本实施例的方法中,通过业务服务器集群中各个业务服务器上设置业务处理实例,当业务终端发起业务连接请求时,信令服务器可以指定业务服务器集群中的某一个业务处理实例,并建立业务终端与指定的业务处理实例所属的业务服务器之间的连接,通过建立的连接传输业务渲染数据。这样通过信令服务器对服务器集群中设置的业务处理实例进行集中管理和分配,使得当业务终端发起业务连接请求时,信令服务器可以为业务终端分配一个空闲且状态较好的资源(即第一业务处理实例),从而可以保证业务终端与业务服务器之间的连接及之后的业务数据传输,同时提高了后台部署的业务处理实例的利用率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种业务数据传输方法所应用的业务系统的示意图;
图2是本发明实施例提供的一种业务数据传输方法的流程图;
图3是本发明一个应用实施例中的业务数据传输方法所应用的地图系统的示意图;
图4是本发明一个应用实施例中地图系统的交互示意图;
图5是本发明一个应用实施例中三维地球实例的状态变化示意图;
图6是本发明一个应用实施例提供的业务数据传输方法的流程图;
图7是本发明另一应用实施例中业务数据传输方法所应用于的分布式系统的示意图;
图8是本发明另一应用实施例中区块结构的示意图;
图9是本发明实施例提供的一种业务数据传输系统的逻辑结构示意图;
图10是本发明实施例提供的一种服务器的逻辑结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排它的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供一种业务数据传输方法,主要可以应用于如图1所示的业务系统中,该业务系统可以包括:业务终端10、信令服务器11和业务服务器集群,在业务服务器集群中可以包括多个业务服务器12(图中以n个业务服务器为例来说明),其中:
业务终端10,用于发起业务连接请求,当基于业务连接请求连接到业务服务器12后,还可以向业务服务器12发起业务数据请求,并显示业务服务器12基于业务数据请求返回的业务渲染数据。
在具体应用中业务终端10可以装载业务应用程序或者浏览器的手机、电脑、智能语音交互设备、智能家电、车载终端等。而业务终端10所涉及的业务可以包括但不限于如下业务:三维地图业务、图像业务等,对应的业务渲染数据也可以包括三维地图渲染数据、图像渲染数据等。
信令服务器11,用于管理业务服务器集群,及管理业务服务器集群中业务服务器12所设置的业务处理实例120。比如监控这些业务处理实例120的使用状态,比如业务处理实例120的个数、健康状况及网络连接质量等。当接收到业务终端10发起的业务连接请求,为业务终端10指定对应的业务处理实例120,并建立业务终端10与指定的业务处理实例120所属业务服务器12之间的连接。
在具体应用中信令服务器11可以是网页服务器或是其它服务器。
业务服务器12中可以设置至少一个业务处理实例120,当任一业务处理实例120启动后,可以与一业务终端10之间建立连接,并形成业务渲染数据,及向业务终端10传输业务渲染数据。
在具体应用中业务服务器12可以是物理机,也可以是虚拟化出来的虚拟机。业务处理实例120主要包括计算机可执行文件,在启动时可以将计算机可执行文件缓存到业务服务器12的内存中,且业务处理实例120可以在业务终端10发起业务连接请求之前就进行预启动。这样,当业务终端10发起业务连接请求时,即可省去业务处理实例120的启动时间,从而缩短与相应的业务处理实例120之间建立连接的时间。
在本发明实施例中,当业务处理实例120在启动后,可以将启动的业务处理实例120的信息加入到上述信令服务器11预置的实例池中,方便信令服务器11对业务处理实例120的管理。当业务处理实例120刚启动并加入到实例池时,该业务处理实例120的状态为空闲状态;而当业务处理实例120与某一业务终端10建立连接后,其状态即为非空间状态。
其中,实例池中主要包括业务服务器集群中设置的业务处理实例120的信息,通过将业务处理实例120加入到预置的实例池中,方便信令服务器11对业务服务器集群中业务处理实例120的统一管理。
如图2所示,业务系统中的信令服务器11可以通过如下步骤实现业务数据传输:步骤101,接收业务终端10发送的业务连接请求。
步骤102,确定业务连接请求对应的第一业务处理实例,第一业务处理实例用于形成业务渲染数据,并向业务终端10传输业务渲染数据。
具体地,若预置的实例池中有空闲状态的业务处理实例120,则信令服务器11可以将预置的实例池中处于空闲状态的一个业务处理实例确定为第一业务处理实例。
进一步地,若预置的实例池中没有空闲状态的业务处理实例120,则信令服务器11会检测业务服务器集群中是否有某一业务处理实例120正在启动,如果有,当业务服务器集群中一业务处理实例120的启动完成时,将启动完成的业务处理实例确定为第一业务处理实例。
进一步地,若预置的实例池中没有空闲状态的业务处理实例120,且业务服务器集群中没有任何业务处理实例120正在启动,则需要检测业务服务器集群的负载;当业务服务器集群的负载未达到预置的负载值,选择业务服务器集群中一业务服务器12启动新的业务处理实例120,将启动的新的业务处理实例120确定为第一业务处理实例。
其中,业务服务器集群的负载可以用如下参数的函数计算值来表示:业务服务器集群中所有已启动的业务处理实例120的个数N、所有业务服务器12的总数M,及单个业务服务器12可运行的业务处理实例120的最大值T;函数计算值可以比如N/M*T等。
步骤103,确定第一业务处理实例所属的业务服务器12及业务终端10分别对应的网络传输接口。
确定第一业务处理实例所属的业务服务器12对应的网络传输接口,及业务终端10对应的网络传输接口。
这里网络传输接口是指通过网络协议传输数据的接口,比如远程桌面协议(Remote Desktop Protocol,RDP)接口等。
步骤104,根据业务服务器12及业务终端10分别对应的网络传输接口,在业务服务器12与业务终端10之间建立连接,以便第一业务处理实例120向业务终端10传输业务渲染数据。
具体地,在一般情况下,信令服务器11可以将业务服务器12及业务终端10分别对应的网络传输接口的信息放入目标消息通道中。通过在目标消息通道中交换网络传输接口的信息,使得业务终端10获取到业务服务器12的网络传输接口的信息,而业务服务器12获取到业务终端10的网络传输接口的信息,以建立业务服务器12与业务终端10的直连。
另一方面,在有些网络情况下,若当前网络参数满足预置条件时,将业务服务器12与业务终端10分别对应的网络传输接口的信息传输至中继服务端,在中继服务端建立业务服务器12与业务终端10的连接。这种情况下业务服务器12与业务终端10的连接需要通过中继服务端,而不是直连。其中,预置条件可以包括但不限于如下的条件:网络状态为锥形网络地址转换(Network Address Translation,NAT)网络等。
需要说明的是,上述步骤101到104是通过信令服务器11建立业务终端10与业务服务器12之间的连接,并通过建立的连接传输业务渲染数据的过程。由于本发明实施例中使用业务服务器集群,需要对业务服务器集群进行管理和监控,从而可以有效地向业务终端提供业务数据,提高了用户体验。具体地信令服务器11主要可以采用但不限于如下几种方式的管理:
(1)管理预置的实例池中空闲的业务处理实例
当信令服务器11预置的实例池中处于空闲状态的业务处理实例的个数小于预置个数时,选择业务服务器集群中一业务服务器12以启动新的业务处理实例120,且当选择的业务服务器12启动新的业务处理实例120后,将新的业务处理实例120加入到预置的实例池中。
其中预置个数可以根据实际情况动态地调整。具体地,信令服务器11会采集预置时间段内多个时间点上预置的实例池中处于空闲状态的业务处理实例的个数;然后根据多个时间点上处于空闲状态的业务处理实例的个数,计算预置个数,比如预置个数可以为多个时间点上处于空闲状态的业务处理实例的个数中的最小个数。这样信令服务器11可以自动地动态调整预置个数,而不需要人工干预,使得系统更加智能化。
(2)对业务服务器集群进行扩容或缩容
当业务服务器集群的负载大于第一预置负载值时,在当前的业务服务器集群中增加新的业务服务器12及在新的业务服务器12上设置业务处理实例120;当业务服务器集群的负载小于或等于第二预置负载值时,释放预置的实例池中处于空闲状态的业务处理实例。可以理解,当业务服务器集群的负载在第二预置负载值与第一预置负载值之间时,不需要对业务服务器集群进行扩容或缩容。
其中,第一预置负载值和第二预置负载值可以根据实际情况动态地调整。具体地,一种情况下,信令服务器11会采集历史时间段内多个历史时间点上与业务服务器集群建立连接的业务终端10的个数,并根据多个历史时间点上业务终端的个数,计算第一预置负载值和第二预置负载值。比如第一预置负载值可以为多个历史时间点上业务终端的个数中的最大个数,第二预置负载值可以为多个历史时间点上业务终端的个数中的最小个数。
另一种情况下,信令服务器11可以采集当前时间点上与业务服务器集群建立连接的业务终端10的个数,并基于当前时间点的业务终端10的个数预测未来时间点的业务终端10的个数,从而根据未来时间点的业务终端10的个数确定一个范围,再根据该范围即可得到上述第一预置负载值和第二预置负载值。
这样,通过动态地调整第一预置负载值和第二预置负载值,可以进一步地提高业务服务器和网络的利用率,降低成本。
可见,在本实施例的方法中,通过业务服务器集群中各个业务服务器上设置业务处理实例,当业务终端发起业务连接请求时,信令服务器可以指定业务服务器集群中的某一个业务处理实例,并建立业务终端与指定的业务处理实例所属的业务服务器之间的连接,通过建立的连接传输业务渲染数据。这样通过信令服务器对服务器集群中设置的业务处理实例进行集中管理和分配,使得当业务终端发起业务连接请求时,信令服务器可以为业务终端分配一个空闲且状态较好的资源(即第一业务处理实例),从而可以保证业务终端与业务服务器之间的连接及之后的业务数据传输,同时提高了后台部署的业务处理实例的利用率。
以下以一个具体的应用实例来说明本发明实施例中的业务数据传输方法。本实施例的方法主要应用于地图渲染数据的传输,主要可以应用于如图3所示的地图系统包括:浏览器20、网页服务器21和业务服务器集群中的多个业务服务器22,其中:
浏览器20即为上述的业务终端,用于向网页服务器21发起业务连接请求,当与业务服务器22建立连接后可以发起业务数据请求。在本实施例中,业务连接请求具体可以为地图业务连接请求,则业务数据请求可以为地图数据请求。
本实施例中以业务终端为浏览器20为例说明,在其它实施例中业务终端可以采用业务应用程序,比如地图应用程序等,在此不进行赘述。
网页服务器21中集成上述信令服务器和中继服务端的功能,具体地,网页服务器21可以包括信令服务模块(Signal Server)210和中继服务模块211,其中:
信令服务模块210是整个系统的控制中枢,控制着业务服务器集群的状态以及业务处理实例的状态,对外提供了服务接口,包括两大类:渲染数据推送的接口以及业务服务器集群监控和控制的相关接口。中继服务模块211是一个集用户数据报协议(UserDatagram Protocol,UDP)打洞和渲染数据中继的中继服务,在某些网络状态(例如锥形NAT网络)下,对浏览器20与业务服务器22之间传输的地图渲染数据进行中继。
在实际应用中,中继服务模块211可以为简单的用UDP穿透NAT(Simple Traversalof UDP Through NATs,STUN)服务,或中继穿透NAT(Traversal Using Relays aroundNAT,TURN)服务等。
每个业务服务器22中可以设置至少一个业务处理实例,还可以设置监测结点(Monitor Node)221,在本实施例中,业务处理实例具体为三维地球实例(Tencent Earth),其中:
三维地球实例220为在三维游戏的渲染引擎(Unreal Engine 4,UE4)基础上开发的三维地球实例,加载了基础的底图数据以及行政区划界线、光照效果等,其运行环境为配置了显卡(显卡参数配置越高,可承载的三维地球实例以及渲染效果越好)的业务服务器22。业务服务器22可以是物理机、也可以是虚拟化出来的虚拟机,单台业务服务器22上可以运行多个三维地球实例220,每个三维地球实例220对应一个浏览器20。可以通过实时语音对话或视频对话(Web Real-Time Communication,webRTC)组件将三维地球实例220的地图渲染数据以视频流的方式传输给浏览器20。
监测结点221,用于与信令服务模块210建立WebSocket长连接,以进行实时通信,负责三维地球实例220的启动、销毁、以及上报当前业务服务器22的状态信息。
总体来说,如图4所示,本实施例的地图系统中,浏览器20会向网页服务器21的信令服务模块210发起地图业务连接请求。通过信令服务模块210可以建立浏览器20与业务服务器22中某一三维地球实例220之间的直连,或建立浏览器20通过中继服务模块211与三维地球实例220之间的连接,进而传输地图渲染数据。且业务服务器22中的监测结点221会监控各个三维地球实例220的使用状态,并将监控的使用状态上报给信令服务模块210,由信令服务模块210根据该使用状态对业务服务器集群中的各个三维地球实例220进行统一管理。
在本实施例中,网页服务器21中的信令服务模块210可以通过如下的几种方式对业务服务器集群进行管理:
(1)对三维地球实例220的启动进行管理
本实施例中,信令服务模块210通过将业务服务器22中设置的三维地球实例220加入到预置的实例池中,实现对三维地球实例220的统一管理。实例池中可以包括已经与浏览器20建立了连接的三维地球实例220,处于非空闲状态;也可以包括已经启动但未分配给浏览器20的三维地球实例220,处于空闲状态。
在实际应用中,为了实现更快的地图渲染目的,业务服务器22可以预启动三维地球实例220,并将预启动的三维地球实例220加入到预置的实例池中,设置其状态为空闲状态。这样,当浏览器20发起地图业务连接请求时,省去了三维地球实例220的启动时间,通过上述信令服务模块210直接分配空闲的三维地球实例220给浏览器20以建立连接,加快了地图渲染数据的传输。一般情况下,浏览器20与三维地球实例220之间建立连接所需的时间可以从之前的几十秒降低到几秒,效率提高了一个数量级。
进一步地,信令服务模块210会采用一个单独的线程监控三维地球实例220的状态,当预置的实例池中处于空闲状态的三维地球实例220的个数小于预置个数时,可以通过一个负载均衡算法选择一个当前资源占用率最低的业务服务器22,由选择的业务服务器22启动一个新的三维地球实例220,并将该三维地球实例220放入预置的实例池中。
如图5所示,信令服务模块210在监控业务服务器集群中任一三维地球实例220的过程中,三维地球实例220的状态的变化如下:业务服务器22从开始启动三维地球实例220到启动完成的过程中,三维地球实例220的状态为正启动状态;当三维地球实例220启动完成加入到实例池后,三维地球实例220的状态为空闲状态;当三维地球实例220被分配给一个浏览器20,并与浏览器20建立连接后,三维地球实例220的状态为非空闲状态或连接中;当三维地球实例220与浏览器20断开连接后,业务服务器22可以释放三维地球实例220,其状态为释放中或销毁中。
(2)对业务服务器集群进行自动地扩容或缩容,有效控制了业务服务器22的成本。
信令服务模块210可以采用一个单独的线程实时地监控业务服务器集群的负载。具体地,当业务服务器集群的负载大于第一预置负载值时,在业务服务器集群中增加新的业务服务器22及在新的业务服务器22上设置业务处理实例。当业务服务器集群的负载小于或等于第二预置负载值时,释放预置的实例池中处于空闲状态的业务处理实例。
(3)信令服务模块210会将当前业务服务器集群的状态及业务服务器22中各个三维地球实例220的状态提供给用户。
需要说明的是,为了实现本实施例的方法,地图系统中可以设置如下两类的服务接口:
(1)一类接口是通过浏览器20实现地图渲染数据传输过程中使用的后端服务接口,负责浏览器端到三维地球实例220的连接建立,包括三维地球实例220的启动、三维地球实例220到网络服务器21中信令服务模块210的连接建立、三维地球实例220到浏览器20的连接建立以及在特殊网络环境下的中继服务等。用户可以通过浏览器20发起业务连接请求,从而触发调用这类服务接口,并在这类服务接口中传入用户身份信息,就可以完成业务连接及业务数据传输的整个过程。在这个过程中,浏览器20无需关心三维地球实例220到底运行在哪台业务服务器22上,如何启动,怎样建立连接等。
(2)另一类接口是给服务运维和监控人员使用的,用户可以通过这类接口查看网页服务器21中信令服务模块210监控的业务服务器集群和三维地球实例220的使用状态,且还可以对业务服务器22中的三维地球实例220进行扩容或缩容等。
这样,通过将上述两类接口封装在地图系统中,可以将复杂的云端渲染推送和云端服务管理过程简化,让使用人员可以通过简单的接口进行操作和管理,提高了生产效率和资源利用率,降低了复杂度。
如图6所示,本发明实施例中可以通过如下步骤实现地图渲染数据的传输:
步骤201,用户可以操作浏览器20,使得浏览器20调用网页服务器21中信令服务模块210的连接接口,发起地图业务连接请求。
步骤202,信令服务模块210在接收到地图业务连接请求后,会先确定预置的实例池中是否有处于空闲状态的三维地球实例220,如果有,则可以将一个空闲的三维地球实例220分配给浏览器20,并执行步骤203;如果没有处于空闲状态的三维地球实例220,信令服务模块210继续执行步骤204。
步骤203,信令服务模块210会将分配的三维地球实例220和浏览器20分别对应的网络传输接口的信息放入目标消息通道中,通过在目标消息通道中交换网络传输接口的信息,以建立三维地球实例220所属的业务服务器22与浏览器20的直连。
其中,若在某些网络状态下,比如在锥形NAT网络下,信令服务模块210会将三维地球实例220所属的业务服务器22与浏览器20分别对应的网络传输接口的信息传入中继服务模块211,通过中继服务模块211建立业务服务器22与浏览器20之间的连接。
当业务服务器22中一三维地球实例220与浏览器20之间建立连接后,当用户通过浏览器20发起地图数据请求时,三维地球实例220会形成地图渲染数据,且通过上述建立的连接传输给浏览器20。
步骤204,信令服务模块210检测当前业务服务器集群中是否有正在启动的三维地球实例220,如果有,可以将浏览器20的地图业务连接请求放入一个等待队列中,当三维地球实例220启动完成,并建立了到信令服务模块210之间的连接,可以将该三维地球实例220分配给浏览器20,并返回执行步骤203;如果没有正在启动的三维地球实例220,信令服务模块210继续执行步骤205。
步骤205,信令服务模块210检测业务服务器集群的负载是否达到预置的负载值,如果达到,则不能启动新的三维地球实例220,可以向浏览器20返回失败信号;如果未达到,信令服务模块210也可以将浏览器20的地图业务连接请求放入一个等待队列中,并继续执行步骤206。
步骤206,可以通过均衡算法,从业务服务器集群中选择一个业务服务器22,通过与该业务服务器22中的监测结点221进行通信,通知该业务服务器22启动一个新的三维地球实例220,并将该新的三维地球实例220分配给浏览器20,并返回执行上述步骤203。
以下以另一具体的应用实例来说明本发明中业务数据传输方法,本发明实施例中的业务数据传输系统主要为分布式系统100,该分布式系统可以包括客户端300及多个节点200(接入网络中的任意形式的计算设备,如服务器、用户终端),客户端300与节点200之间通过网络通信的形式连接。
以分布式系统为区块链系统为例,参见图7是本发明实施例提供的分布式系统100应用于区块链系统的一个可选的结构示意图,由多个节点200(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端300形成,节点之间形成点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。在分布式系统中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
参见图7示出的区块链系统中各节点的功能,涉及的功能可以包括:
1)路由,节点具有的基本功能,用于支持节点之间的通信。
节点除具有路由功能外,还可以具有以下功能:
2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其它节点,供其它节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
例如,应用实现的业务包括实现业务数据传输功能的代码,该业务数据传输功能主要包括:
接收业务终端发送的业务连接请求;确定所述业务连接请求对应的第一业务处理实例;所述第一业务处理实例设置在业务服务器集群中,用于形成业务渲染数据,并向所述业务终端传输业务渲染数据;确定所述第一业务处理实例所属的业务服务器及业务终端分别对应的网络传输接口;根据所述业务服务器及业务终端分别对应的网络传输接口,在所述业务服务器与业务终端之间建立连接,以便所述第一业务处理实例向所述业务终端传输业务渲染数据。
3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(Block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。
参见图8为本发明实施例提供的区块结构(Block Structure)一个可选的示意图,每个区块中包括本区块存储交易记录的哈希值(图中本区块哈希所示)、以及前一区块的哈希值(图中前一区块哈希所示),各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
本发明实施例还提供一种业务数据传输系统,比如上述的信令服务器等,其结构示意图如图9所示,具体可以包括:
连接请求单元30,用于接收业务终端发送的业务连接请求。
实例确定单元31,用于确定所述连接请求单元30接收的业务连接请求对应的第一业务处理实例;所述第一业务处理实例设置在业务服务器集群中,用于形成业务渲染数据,并向所述业务终端传输业务渲染数据。
该实例确定单元31,具体用于将预置的实例池中处于空闲状态的一个业务处理实例确定为所述第一业务处理实例;或者,当业务服务器集群中一业务处理实例的启动完成时,将所述启动完成的业务处理实例确定为所述第一业务处理实例;或者,当所述业务服务器集群的负载未达到预置的负载值时,选择所述业务服务器集群中一业务服务器,通过启动新的业务处理实例,将所述新的业务处理实例确定为所述第一业务处理实例。
接口确定单元32,用于确定所述实例确定单元31确定的第一业务处理实例所属的业务服务器及业务终端分别对应的网络传输接口。
连接传输单元33,用于根据所述接口确定单元32确定的业务服务器及业务终端分别对应的网络传输接口,在所述业务服务器与业务终端之间建立连接,以便所述第一业务处理实例向所述业务终端传输业务渲染数据。
该连接传输单元33,具体用于将所述业务服务器及业务终端分别对应的网络传输接口的信息放入目标消息通道中,通过在所述目标消息通道中交换所述网络传输接口的信息,以建立所述业务服务器与业务终端的直连;或者,若当前网络参数满足预置条件时,将所述业务服务器与业务终端分别对应的网络传输接口的信息传入中继服务端,在所述中继服务端建立所述业务服务器与业务终端的连接。
进一步地,本实施例的业务数据传输系统还可以包括:
管理单元34,用于当预置的实例池中处于空闲状态的业务处理实例的个数小于预置个数,选择业务服务器集群中一业务服务器以启动新的业务处理实例;当所述选择的业务服务器启动新的业务处理实例后,将所述新的业务处理实例加入到所述预置的实例池中。
设置单元35,用于采集预置时间段内多个时间点上所述预置的实例池中处于空闲状态的业务处理实例的个数;根据所述多个时间点上处于空闲状态的业务处理实例的个数,计算所述管理单元34所使用的预置个数。
进一步地,管理单元34,还用于当业务服务器集群的负载大于第一预置负载值时,在所述业务服务器集群中增加新的业务服务器及在所述新的业务服务器上设置业务处理实例;当所述业务服务器集群的负载小于或等于第二预置负载值时,释放预置的实例池中处于空闲状态的业务处理实例。
其中,业务服务器集群的负载为如下参数的函数计算值:所述业务服务器集群中所有已启动的业务处理实例的个数、所述业务服务器集群中所有业务服务器的总数及单个业务服务器运行的业务处理实例的最大值。
设置单元35,还用于采集历史时间段内多个历史时间点上与所述业务服务器集群建立连接的业务终端的个数;根据所述多个历史时间点上业务终端的个数,计算所述第一预置负载值和第二预置负载值。
可见,在本发明实施例中通过业务服务器集群中各个业务服务器上设置业务处理实例,当本实施例的业务数据传输系统中连接请求单元30接收到业务连接请求时,实例确定单元31会指定业务服务器集群中的某一个业务处理实例,并由连接传输单元33建立业务终端与指定的业务处理实例所属的业务服务器之间的连接,通过建立的连接传输业务渲染数据。这样通过本实施例的业务数据传输系统对服务器集群中设置的业务处理实例进行集中管理和分配,使得当业务终端发起业务连接请求时,业务数据传输系统可以为业务终端分配一个空闲且状态较好的资源(即第一业务处理实例),从而可以保证业务终端与业务服务器之间的连接及之后的业务数据传输,同时提高了后台部署的业务处理实例的利用率。
本发明实施例还提供一种服务器,其结构示意图如图10所示,该服务器可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)40(例如,一个或一个以上处理器)和存储器41,一个或一个以上存储应用程序421或数据422的存储介质42(例如一个或一个以上海量存储设备)。其中,存储器41和存储介质42可以是短暂存储或持久存储。存储在存储介质42的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器40可以设置为与存储介质42通信,在服务器上执行存储介质42中的一系列指令操作。
具体地,在存储介质42中储存的应用程序421包括业务数据传输的应用程序,且该程序可以包括上述业务数据传输系统中的连接请求单元30,实例确定单元31,接口确定单元32,连接传输单元33,管理单元34和设置单元35,在此不进行赘述。更进一步地,中央处理器40可以设置为与存储介质42通信,在服务器上执行存储介质42中储存的列表处理的应用程序对应的一系列操作。
服务器还可以包括一个或一个以上电源43,一个或一个以上有线或无线网络接口44,一个或一个以上输入输出接口45,和/或,一个或一个以上操作系统423,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述方法实施例中所述的由上述信令服务器所执行的步骤可以基于该图10所示的服务器的结构。
进一步地,本发明实施例另一方面还提供一种计算机可读存储介质,所述计算机可读存储介质储存多个计算机程序,所述计算机程序适于由处理器加载并执行如上述信令服务器所执行的业务数据传输方法。
本发明实施例另一方面还提供一种服务器,包括处理器和存储器;
所述存储器用于储存多个计算机程序,所述计算机程序用于由处理器加载并执行如上述信令服务器所执行的业务数据传输方法;所述处理器,用于实现所述多个计算机程序中的各个计算机程序。
另外,根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的业务数据传输方法。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM)、随机存取存储器(RAM)、磁盘或光盘等。
以上对本发明实施例所提供的一种业务数据传输方法、系统及存储介质和相关设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种业务数据传输方法,其特征在于,包括:
接收业务终端发送的业务连接请求;
确定所述业务连接请求对应的第一业务处理实例;所述第一业务处理实例设置在业务服务器集群中,用于形成业务渲染数据,并向所述业务终端传输业务渲染数据;
确定所述第一业务处理实例所属的业务服务器及业务终端分别对应的网络传输接口;
根据所述业务服务器及业务终端分别对应的网络传输接口,在所述业务服务器与业务终端之间建立连接,以便所述第一业务处理实例向所述业务终端传输业务渲染数据。
2.如权利要求1所述的方法,其特征在于,所述确定所述业务连接请求对应的第一业务处理实例,包括:
将预置的实例池中处于空闲状态的一个业务处理实例确定为所述第一业务处理实例;
或者,当所述业务服务器集群中一业务处理实例的启动完成时,将所述启动完成的业务处理实例确定为所述第一业务处理实例;
或者,当所述业务服务器集群的负载未达到预置的负载值时,选择所述业务服务器集群中一业务服务器,通过启动新的业务处理实例,将所述新的业务处理实例确定为所述第一业务处理实例。
3.如权利要求1所述的方法,其特征在于,所述根据所述业务服务器及业务终端分别对应的网络传输接口,在所述业务服务器与业务终端之间建立连接,包括:
将所述业务服务器及业务终端分别对应的网络传输接口的信息放入目标消息通道中,通过在所述目标消息通道中交换所述网络传输接口的信息,以建立所述业务服务器与所述业务终端的直连;
或者,若当前网络参数满足预置条件时,将所述业务服务器与业务终端分别对应的网络传输接口的信息传入中继服务端,在所述中继服务端建立所述业务服务器与所述业务终端的连接。
4.如权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
当预置的实例池中处于空闲状态的业务处理实例的个数小于预置个数,选择所述业务服务器集群中一业务服务器以启动新的业务处理实例;
当所述选择的业务服务器启动新的业务处理实例后,将所述新的业务处理实例加入到所述预置的实例池中。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
采集预置时间段内多个时间点上所述预置的实例池中处于空闲状态的业务处理实例的个数;
根据所述多个时间点上处于空闲状态的业务处理实例的个数,计算所述预置个数。
6.如权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
当业务服务器集群的负载大于第一预置负载值时,在所述业务服务器集群中增加新的业务服务器及在所述新的业务服务器上设置业务处理实例;
当所述业务服务器集群的负载小于或等于第二预置负载值时,释放预置的实例池中处于空闲状态的业务处理实例。
7.如权利要求6所述的方法,其特征在于,所述业务服务器集群的负载为如下参数的函数计算值:
所述业务服务器集群中所有已启动的业务处理实例的个数、所述业务服务器集群中所有业务服务器的总数及单个业务服务器运行的业务处理实例的最大值。
8.如权利要求6所述的方法,其特征在于,所述方法还包括:
采集历史时间段内多个历史时间点上与所述业务服务器集群建立连接的业务终端的个数;
根据所述多个历史时间点上业务终端的个数,计算所述第一预置负载值和第二预置负载值。
9.一种业务数据传输系统,其特征在于,包括:
连接请求单元,用于接收业务终端发送的业务连接请求;
实例确定单元,用于确定所述业务连接请求对应的第一业务处理实例;所述第一业务处理实例设置在业务服务器集群中,用于形成业务渲染数据,并向所述业务终端传输业务渲染数据;
接口确定单元,用于确定所述第一业务处理实例所属的业务服务器及业务终端分别对应的网络传输接口;
连接传输单元,用于根据所述业务服务器及业务终端分别对应的网络传输接口,在所述业务服务器与业务终端之间建立连接,以便所述第一业务处理实例向所述业务终端传输业务渲染数据。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质储存多个计算机程序,所述计算机程序适于由处理器加载并执行如权利要求1至8任一项所述的业务数据传输方法。
11.一种服务器,其特征在于,包括处理器和存储器;
所述存储器用于储存多个计算机程序,所述计算机程序用于由处理器加载并执行如权利要求1至8任一项所述的业务数据传输方法;所述处理器,用于实现所述多个计算机程序中的各个计算机程序。
12.一种计算机程序产品,其特征在于,包括:计算机指令,所述计算机指令存储在计算机可读存储介质中,所述计算机指令适于由处理器加载并执行如权利要求1至8任一项所述的业务数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111506038.2A CN116260824A (zh) | 2021-12-10 | 2021-12-10 | 业务数据传输方法、系统及存储介质和相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111506038.2A CN116260824A (zh) | 2021-12-10 | 2021-12-10 | 业务数据传输方法、系统及存储介质和相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116260824A true CN116260824A (zh) | 2023-06-13 |
Family
ID=86686719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111506038.2A Pending CN116260824A (zh) | 2021-12-10 | 2021-12-10 | 业务数据传输方法、系统及存储介质和相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116260824A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758201A (zh) * | 2023-08-16 | 2023-09-15 | 淘宝(中国)软件有限公司 | 三维场景的渲染处理方法、设备、系统及计算机存储介质 |
-
2021
- 2021-12-10 CN CN202111506038.2A patent/CN116260824A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758201A (zh) * | 2023-08-16 | 2023-09-15 | 淘宝(中国)软件有限公司 | 三维场景的渲染处理方法、设备、系统及计算机存储介质 |
CN116758201B (zh) * | 2023-08-16 | 2024-01-12 | 淘宝(中国)软件有限公司 | 三维场景的渲染处理方法、设备、系统及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100621092B1 (ko) | P2p 프로토콜을 이용하여 어플리케이션을 공유하는 방법및 장치 | |
US10523748B2 (en) | Managing health status of network devices in a distributed global server load balancing system | |
CN102045270B (zh) | 聊天服务器系统、构建聊天服务器系统的方法以及聊天系统 | |
CN113596191A (zh) | 一种数据处理方法、网元设备以及可读存储介质 | |
CN111447185A (zh) | 一种推送信息的处理方法及相关设备 | |
CN112532751B (zh) | 城市大脑ai计算中心分布式异构算力的调度方法及系统 | |
US10314091B2 (en) | Observation assisted bandwidth management | |
CN113037819B (zh) | 一种边缘算力资源共享方法、装置及设备 | |
CN112417001B (zh) | 基于区块链网络的数据处理方法及相关设备 | |
KR20090053532A (ko) | 단말의 능력을 기초로 역할을 설정하는 장치 및 그 방법 | |
CN112350973A (zh) | 远程过程调用负载均衡方法、装置及数据处理系统 | |
CN116633934A (zh) | 负载均衡方法、装置、节点及存储介质 | |
CN109194993B (zh) | 媒体文件分发方法及文件分发平台 | |
CN116260824A (zh) | 业务数据传输方法、系统及存储介质和相关设备 | |
CN113821342B (zh) | 一种集群websocket服务负载均衡的方法、装置、设备及可读介质 | |
JP2012108685A (ja) | 負荷分散システム | |
RU2522995C2 (ru) | Способ и устройство создания одноранговой группы в одноранговом приложении и способ применения одноранговой группы | |
CN110971669B (zh) | 消息通知方法、装置、服务器、电子设备及可读存储介质 | |
WO2016177135A1 (zh) | 资源管理方法、装置及控制终端 | |
CN113535402A (zh) | 基于5g mec的负载均衡处理方法、装置及电子设备 | |
CN113542198A (zh) | 一种基于互联网的高可用数据交互系统及方法 | |
Chang et al. | An M2M computing model for improving the performance among devices | |
Nir et al. | Centralized management of scalable cyber foraging systems | |
CN118175202B (zh) | 代理连接方法、装置及相关设备 | |
CN109587189A (zh) | 节点管理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40086919 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |