CN117061524A - 负载均衡方法、装置、电子设备及存储介质 - Google Patents
负载均衡方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117061524A CN117061524A CN202311234482.2A CN202311234482A CN117061524A CN 117061524 A CN117061524 A CN 117061524A CN 202311234482 A CN202311234482 A CN 202311234482A CN 117061524 A CN117061524 A CN 117061524A
- Authority
- CN
- China
- Prior art keywords
- camera
- service
- target
- target server
- transcoding service
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000012544 monitoring process Methods 0.000 claims abstract description 65
- 238000004590 computer program Methods 0.000 claims description 17
- 238000005065 mining Methods 0.000 claims description 14
- 239000003245 coal Substances 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- 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/1108—Web based protocols, e.g. webRTC
-
- 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/1029—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234309—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
本发明提供了一种负载均衡方法、装置、电子设备及存储介质,涉及煤矿技术领域。方法可包括:接收视频监控客户端发送的摄像头转码服务请求,摄像头转码服务请求中携带有单例模式窗口的唯一标识;对安装WebRTC服务的多个服务器进行负载均衡分析,确定与唯一标识匹配的目标服务器;向视频监控客户端发送目标服务器对应的目标摄像头转码服务地址,以使视频监控客户端基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务。本发明可在多个服务器中进行摄像头转码服务的均衡分配,使各个服务器维持在正常负载状态,进而能够保证服务器的运行速度,使其可以支持视频的稳定播放。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及到一种负载均衡方法、装置、电子设备及存储介质。
背景技术
随着智慧矿山业务的高速发展,越来越多的矿山开始建设自动化、无人化,引入综采自动化系统,同时井下环境的实时情况、设备的运行状态信息需要实时传输到地面,视频监控是综采自动化系统中十分重要的一个功能。
由于各个矿山使用的摄像头种类不同,还需要对摄像头画面进行二次开发,比如视频跟机、云台跟机功能,所以使用一种通用的、延迟低的摄像头转码方式(Web Real-TimeCommunication,WebRTC),支持标准视频流的转码。
目前,主要在一个固定的服务器上进行视频流的转码处理,然而RTC服务所需中央处理器(Central Processing Unit,CPU)资源较高,此种转码方式将会导致服务器的负载压力过大、运行速度降低,且无法支持视频的稳定播放。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明提供一种负载均衡方法、装置、电子设备及存储介质,能够通过负载均衡处理,在CPU资源较高情况下,在多个服务器中进行摄像头转码服务的均衡分配,使各个服务器维持在正常负载状态,进而能够保证服务器的运行速度,使其可以支持视频的稳定播放。
根据本发明第一方面实施例的一种负载均衡方法,所述方法应用于综采自动化系统的后端服务,所述方法包括:
接收视频监控客户端发送的摄像头转码服务请求,所述摄像头转码服务请求中携带有单例模式窗口的唯一标识;
对安装WebRTC服务的多个服务器进行负载均衡分析,确定与所述唯一标识匹配的目标服务器;
向所述视频监控客户端发送所述目标服务器对应的目标摄像头转码服务地址,以使所述视频监控客户端基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务。
根据本发明第二方面实施例的一种负载均衡方法,所述方法应用于综采自动化系统的视频监控客户端,所述方法包括:
向后端服务发送摄像头转码服务请求,所述摄像头转码服务请求中携带有单例模式窗口的唯一标识;
接收所述后端服务发送的与所述唯一标识匹配的目标服务器,以及所述目标服务器对应的目标摄像头转码服务地址,其中,所述目标服务器为所述后端服务对安装WebRTC服务的多个服务器进行负载均衡分析得到的;
基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务。
根据本发明第三方面实施例的一种负载均衡装置,所述装置应用于综采自动化系统的后端服务,所述装置包括:
接收模块,用于接收视频监控客户端发送的摄像头转码服务请求,所述摄像头转码服务请求中携带有单例模式窗口的唯一标识;
分析模块,用于对安装WebRTC服务的多个服务器进行负载均衡分析,确定与所述唯一标识匹配的目标服务器;
发送模块,用于向所述视频监控客户端发送所述目标服务器对应的目标摄像头转码服务地址,以使所述视频监控客户端基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务。
根据本发明第四方面实施例的一种负载均衡装置,所述装置应用于综采自动化系统的视频监控客户端,所述装置包括:
发送模块,用于向后端服务发送摄像头转码服务请求,所述摄像头转码服务请求中携带有单例模式窗口的唯一标识;
接收模块,用于接收所述后端服务发送的与所述唯一标识匹配的目标服务器,以及所述目标服务器对应的目标摄像头转码服务地址,其中,所述目标服务器为所述后端服务对安装WebRTC服务的多个服务器进行负载均衡分析得到的;
调用模块,用于基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务。
根据本发明第五方面实施例的一种电子设备,包括:处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,执行如第一方面或其各实现方式中的方法。
根据本发明第六方面实施例的一种计算机可读存储介质,用于存储计算机程序,计算机程序使得计算机执行如第一方面或其各实现方式中的方法。
通过本发明提供的技术方案,综采自动化系统的后端服务可在接收视频监控客户端发送的摄像头转码服务请求后,对安装WebRTC服务的多个服务器进行负载均衡分析,确定匹配的目标服务器;之后向视频监控客户端发送目标服务器对应的目标摄像头转码服务地址,以使视频监控客户端基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务。本发明中的技术方案,可同时利用多个服务器执行摄像头转码服务,并且通过负载均衡处理,在CPU资源较高情况下,可在多个服务器中进行摄像头转码服务的均衡分配,使各个服务器维持在正常负载状态,进而能够保证服务器的运行速度,使其可以支持视频的稳定播放。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。本发明的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明提供的一个实施例的一种负载均衡方法的流程示意图;
图2示出了本发明提供的一个实施例的一种负载均衡的原理流程示意图;
图3示出了本发明提供的另一个实施例的一种负载均衡方法的流程示意图;
图4示出了本发明提供的一个实施例的一种负载均衡装置的结构示意图;
图5示出了本发明提供的另一个实施例的一种负载均衡装置的结构示意图;
图6出了本发明提供的一个实施例的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
由于各个矿山使用的摄像头种类不同,还需要对摄像头画面进行二次开发,比如视频跟机、云台跟机功能,所以使用一种通用的、延迟低的摄像头转码方式(Web Real-TimeCommunication,WebRTC),支持标准视频流的转码。
目前,主要在一个固定的服务器上进行视频流的转码处理,然而RTC服务所需中央处理器(Central Processing Unit,CPU)资源较高,此种转码方式将会导致服务器的负载压力过大、运行速度降低,且无法支持视频的稳定播放。
为了解决上述技术问题,本发明的发明构思是:将自研的负载均衡功能集成到综采自动化系统视频监控中,无需额外的部署,用户及部署综采自动化系统人员无感知。使用单例模式,后端服务启动时,负载信息加载到内存中,视频监控客户端请求时,不再读取数据库,内存中算法进行计算返回服务地址,单开线程更新负载信息,减少与数据库的交互。视频监控客户端,视频播放成功后发送心跳,以保持连接数的准确性。同时,客户端添加视频监听事件,一旦视频播放不正常(停止、黑屏、卡住)自动断开当前连接,重新发起连接请求,自动重新连接,无需人为还原。
对于本发明,针对同一种外设或硬件,当故障判定发生变化时,可以通过修改配置文件的方式进行修改,不需要再重复修改软件程序,以此可降低研发人员的工作量,提高电液控制器故障处理的效率。
需要说明的是,本公开中的技术方案除了应用于综采自动化系统中的摄像头转码服务之外,还可同样适用于任何行业的具备后端服务、客户端、服务器的设备当中。在本公开中的下述实施例步骤中,以对摄像头转码服务进行负载均衡为例,对本公开中的技术方案进行说明,在此不进行具体的限定。
下面将对本发明技术方案进行详细阐述:
图1为本发明实施例提供的一种负载均衡方法的流程图,该方法可以由综采自动化系统的后端服务执行,但不限于此。如图1所示,该方法可以包括如下步骤:
步骤110、接收视频监控客户端发送的摄像头转码服务请求,摄像头转码服务请求中携带有单例模式窗口的唯一标识。
在具体的应用场景中,如图2所示,综采自动化系统可配置后端服务(如WebAp i服务)、视频监控客户端(如Web客户端)、地面调度室和井下集控仓,地面调度室及井下集控仓中每台服务器均安装WebRTC服务,跟随综采自动化系统安装包自动安装,无需配置。后端服务与数据库(DB)连接,后端服务启动时,将负载信息加载到后端服务分配的内存中,并单开线程更新负载信息。后端服务可进一步基于内存中实时更新的负载信息,对安装WebRTC服务的多个服务器(如井下服务器、井上服务器)进行摄像头转码服务的负载均衡分配。其中,综采自动化系统的数据库中配置每台服务器的负载信息,仅配置服务ip、摄像头最大连接数即可(最大连接数根据服务所在机器的性能决定)。
对于本公开实施例,在需要执行摄像头转码服务时,视频监控客户端可向后端服务发送摄像头转码服务请求,以使后端服务响应于摄像头转码服务请求,为摄像头转码服务进行服务器的分配,并使多个服务器之间达到负载均衡,避免单个服务器的负载压力过大,影响运行速度。
步骤120、对安装WebRTC服务的多个服务器进行负载均衡分析,确定与唯一标识匹配的目标服务器。
其中,对于摄像头转码服务,负载均衡可用于均衡各个服务器上对于视频转码的数量。
对于本公开实施例,摄像头转码服务请求中携带有单例模式窗口的唯一标识,后端服务在接收到摄像头转码服务请求后,可检测内存中当前标识是否存在,如存在,返回上一次会话的服务地址作为目标服务器对应的目标摄像头转码服务地址;否则根据内存中的负载信息,计算出服务器当前负载量最小的目标服务器进行返回,同时将当前请求的唯一标识与所连接服务地址的信息记录到内存字典中,此时不能判断视频服务被连接上,不操纵数据库。
相应的,实施例步骤可包括:检测内存字典中是否存储有唯一标识对应的历史负载会话,其中,内存字典中采用单例模式存储有每个服务器针对摄像头转码服务的负载信息,负载信息包括当前负载量以及历史负载会话;若是,则将唯一标识对应的历史负载会话中分配的历史服务器,确定为与唯一标识匹配的目标服务器,其中,历史服务器为在历史时刻下,针对唯一标识分配的负载压力最小的服务器;若否,则将多个服务器中对应当前负载量最小的服务器,确定为与唯一标识匹配的目标服务器。
在具体的应用场景中,在将多个服务器中对应当前负载量最小的服务器,确定为与唯一标识匹配的目标服务器之后,实施例步骤还可包括:生成唯一标识与目标服务器对应的负载会话;将负载会话更新存储至内存字典中。
步骤130、向视频监控客户端发送目标服务器对应的目标摄像头转码服务地址,以使视频监控客户端基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务。
在具体的应用场景中,视频监控客户端的单例模式窗口一旦播放成功后,会向后端服务发送一份心跳,如若当前播放窗口被切换或者关闭后,停止发送。同时添加监听事件,当前播放窗口一旦视频静止后,则自动断开连接,重新发送服务请求,以实现重新连接,保持视频的稳定播放。
相应的,综采自动化系统的后端服务启用单例模式,单开线程,对内存中服务负载情况进行更新,当某个视频连接心跳停止后,更新负载信息,仅当连接数发生变化时,更新数据库,只在当前线程函数中更新负载信息,防止对数据库的频繁交互。
对于本公开实施例,后端服务在向视频监控客户端发送目标服务器对应的目标摄像头转码服务地址之后,实施例步骤还可包括:接收视频监控客户端发送的心跳信息,心跳信息用于表示单例模式窗口的视频播放成功;在心跳信息接收停止时,更新内存字典中的目标服务器的当前负载量。
在具体的应用场景中,实施例步骤还可包括:按照预设时间间隔周期性的向数据库同步内存字典中更新后的负载信息。其中,预设时间间隔可根据实际应用场景进行设定,例如可为5s。对于本公开实施例,后端服务将负载信息同步存储到数据库中,综采自动化系统可进一步提供负载信息页面,井上井下每台机器均可修改负载信息及查看每台服务器实时负载量。
综上,根据本发明提供的负载均衡方法,综采自动化系统的后端服务可在接收视频监控客户端发送的摄像头转码服务请求后,对安装WebRTC服务的多个服务器进行负载均衡分析,确定匹配的目标服务器;之后向视频监控客户端发送目标服务器对应的目标摄像头转码服务地址,以使视频监控客户端基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务。本发明中的技术方案,可同时利用多个服务器执行摄像头转码服务,并且通过负载均衡处理,在CPU资源较高情况下,可在多个服务器中进行摄像头转码服务的均衡分配,使各个服务器维持在正常负载状态,进而能够保证服务器的运行速度,使其可以支持视频的稳定播放。此外,使用单例模式,后端服务启动时,将负载信息加载到内存中,视频监控客户端请求时,不再读取数据库,内存中算法进行计算返回服务地址,单开线程更新负载信息,可减少与数据库的交互,降低数据库的数据处理压力。
图3为本发明提供的一个实施例的一种负载均衡方法的流程图,该方法可以由综采自动化系统的视频监控客户端执行,但不限于此。如图3所示,可以包括如下步骤:
步骤210、向后端服务发送摄像头转码服务请求,摄像头转码服务请求中携带有单例模式窗口的唯一标识。
对于本公开实施例,在需要执行摄像头转码服务时,视频监控客户端可向后端服务发送摄像头转码服务请求,以使后端服务响应于摄像头转码服务请求,为摄像头转码服务进行服务器的分配,并使多个服务器之间达到负载均衡,避免单个服务器的负载压力过大,影响运行速度。
步骤220、接收后端服务发送的与唯一标识匹配的目标服务器,以及目标服务器对应的目标摄像头转码服务地址,其中,目标服务器为后端服务对安装WebRTC服务的多个服务器进行负载均衡分析得到的。
在具体的应用场景中,视频监控客户端所发送的摄像头转码服务请求中携带有单例模式窗口的唯一标识,后端服务在接收到摄像头转码服务请求后,可检测内存中当前标识是否存在,如存在,返回上一次会话的服务地址作为目标服务器对应的目标摄像头转码服务地址;否则根据内存中的负载信息,计算出服务器当前负载量最小的目标服务器进行返回,同时将当前请求的唯一标识与所连接服务地址的信息记录到内存字典中,此时不能判断视频服务被连接上,不操纵数据库。后端服务对安装WebRTC服务的多个服务器进行负载均衡分析,确定与唯一标识匹配的目标服务器的具体实现过程可参见实施例步骤120中的相关描述,在此不再赘述。
步骤230、基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务。
在具体的应用场景中,矿山井下的摄像头视频流有时不稳定,视频流出现波动后,视频会停止,需要断开连接重连RTC服务才能恢复。为此,视频监控客户端的单例模式窗口一旦播放成功后,会向后端服务发送一份心跳,如若当前播放窗口被切换或者关闭后,停止发送。同时添加监听事件,当前播放窗口一旦视频静止后,则自动断开连接,重新发送服务请求重新连接,以保持视频的稳定播放。通过添加监听事件,一旦视频停止后,自动断开当前连接自动重连,以保持视频的连续性。
相应的,在基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务之后,实施例步骤还可包括:通过添加视频监听事件,监听单例模式窗口的视频播放状态;在单例模式窗口的视频播放成功时,向后端服务发送心跳信息;在单例模式窗口的视频播放断开时,停止向后端服务发送心跳信息。
在具体的应用场景中,在基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务之后,实施例步骤还可包括:在单例模式窗口的视频播放断开时,重新向后端服务发送摄像头转码服务请求,以使后端服务对安装WebRTC服务的多个服务器进行负载均衡分析,确定与唯一标识匹配的目标服务器。
综上,根据本发明提供的负载均衡方法,综采自动化系统的后端服务可在接收视频监控客户端发送的摄像头转码服务请求后,对安装WebRTC服务的多个服务器进行负载均衡分析,确定匹配的目标服务器;之后向视频监控客户端发送目标服务器对应的目标摄像头转码服务地址,以使视频监控客户端基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务。本发明中的技术方案,可同时利用多个服务器执行摄像头转码服务,并且通过负载均衡处理,在CPU资源较高情况下,可在多个服务器中进行摄像头转码服务的均衡分配,使各个服务器维持在正常负载状态,进而能够保证服务器的运行速度,使其可以支持视频的稳定播放。此外,视频监控客户端视频播放成功后发送心跳,以保持连接数的准确性。同时,视频监控客户端添加视频监听事件,一旦视频播放不正常(停止、黑屏、卡住)自动断开当前连接,重新发起连接请求,自动重新连接,无需人为还原。
基于上述图1提供的负载均衡方法的具体描述,如图4所示,图4是根据一示例性实施例示出的一种负载均衡装置框图,可应用于综采自动化系统的后端服务。如图4所示,该装置包括:
接收模块31,可用于接收视频监控客户端发送的摄像头转码服务请求,摄像头转码服务请求中携带有单例模式窗口的唯一标识;
分析模块32,可用于对安装WebRTC服务的多个服务器进行负载均衡分析,确定与唯一标识匹配的目标服务器;
发送模块33,可用于向视频监控客户端发送目标服务器对应的目标摄像头转码服务地址,以使视频监控客户端基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务。
在本发明的一些实施例中,分析模块32,可用于检测内存字典中是否存储有唯一标识对应的历史负载会话,其中,内存字典中采用单例模式存储有每个服务器针对摄像头转码服务的负载信息,负载信息包括当前负载量以及历史负载会话;若是,则将唯一标识对应的历史负载会话中分配的历史服务器,确定为与唯一标识匹配的目标服务器,其中,历史服务器为在历史时刻下,针对唯一标识分配的负载压力最小的服务器;若否,则将多个服务器中对应当前负载量最小的服务器,确定为与唯一标识匹配的目标服务器。
在本发明的一些实施例中,如图4所示,该装置还包括:
生成模块34,可用于生成唯一标识与目标服务器对应的负载会话;
更新模块35,可用于将负载会话更新存储至内存字典中。
在本发明的一些实施例中,接收模块31,可用于接收视频监控客户端发送的心跳信息,心跳信息用于表示单例模式窗口的视频播放成功;更新模块35,可用于在心跳信息接收停止时,更新内存字典中的目标服务器的当前负载量。
在本发明的一些实施例中,发送模块33,可用于按照预设时间间隔周期性的向数据库同步内存字典中更新后的负载信息。
基于上述图3提供的负载均衡方法的具体描述,如图5所示,图5是根据一示例性实施例示出的一种负载均衡装置框图,可应用于综采自动化系统的视频监控客户端。如图5所示,该装置包括:
接收模块41,可用于接收视频监控客户端发送的摄像头转码服务请求,摄像头转码服务请求中携带有单例模式窗口的唯一标识;
分析模块42,可用于对安装WebRTC服务的多个服务器进行负载均衡分析,确定与唯一标识匹配的目标服务器;
发送模块43,可用于向视频监控客户端发送目标服务器对应的目标摄像头转码服务地址,以使视频监控客户端基于目标摄像头转码服务地址,调用目标服务器执行摄像头转码服务。
在本发明的一些实施例中,如图5所示,该装置还包括:监听模块44;
监听模块44,可用于通过添加视频监听事件,监听单例模式窗口的视频播放状态;
发送模块43,可用于在单例模式窗口的视频播放成功时,向后端服务发送心跳信息;在单例模式窗口的视频播放断开时,停止向后端服务发送心跳信息。
在本发明的一些实施例中,发送模块43,可用于在单例模式窗口的视频播放断开时,重新向后端服务发送摄像头转码服务请求,以使后端服务对安装WebRTC服务的多个服务器进行负载均衡分析,确定与唯一标识匹配的目标服务器。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
上文中结合附图从功能模块的角度描述了本发明实施例的负载均衡装置。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本发明实施例中的负载均衡方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本发明实施例发明的负载均衡方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述负载均衡方法实施例中的步骤。
图6是本发明提供的一个实施例的电子设备700的示意性框图。
如图6所示,该电子设备700可包括:
存储器710和处理器720,该存储器710用于存储计算机程序,并将该程序代码传输给该处理器720。换言之,该处理器720可以从存储器710中调用并运行计算机程序,以实现本发明实施例中的方法。
例如,该处理器720可用于根据该计算机程序中的指令执行上述方法实施例。
在本发明的一些实施例中,该电子设备700可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本发明的一些实施例中,该存储器710包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本发明的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器710中,并由该处理器720执行,以完成本发明提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该控制器中的执行过程。
如图6所示,该电子设备700还可包括:
收发器730,该收发器730可连接至该处理器720或存储器710。
其中,处理器720可以控制该收发器730与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器930可以包括发射机和接收机。收发器730还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本发明还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本发明提供的一个实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本发明实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(Digital Video Disc,DVD))、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所发明的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以该权利要求的保护范围为准。
Claims (12)
1.一种负载均衡方法,其特征在于,所述方法应用于综采自动化系统的后端服务,所述方法包括:
接收视频监控客户端发送的摄像头转码服务请求,所述摄像头转码服务请求中携带有单例模式窗口的唯一标识;
对安装WebRTC服务的多个服务器进行负载均衡分析,确定与所述唯一标识匹配的目标服务器;
向所述视频监控客户端发送所述目标服务器对应的目标摄像头转码服务地址,以使所述视频监控客户端基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务。
2.根据权利要求1所述的方法,其特征在于,所述对安装WebRTC服务的多个服务器进行负载均衡分析,确定与所述唯一标识匹配的目标服务器,包括:
检测内存字典中是否存储有所述唯一标识对应的历史负载会话,其中,所述内存字典中采用单例模式存储有每个服务器针对摄像头转码服务的负载信息,所述负载信息包括当前负载量以及历史负载会话;
若是,则将所述唯一标识对应的历史负载会话中分配的历史服务器,确定为与所述唯一标识匹配的目标服务器,其中,所述历史服务器为在历史时刻下,针对所述唯一标识分配的负载压力最小的服务器;
若否,则将所述多个服务器中对应所述当前负载量最小的服务器,确定为与所述唯一标识匹配的目标服务器。
3.根据权利要求2所述的方法,其特征在于,在将所述多个服务器中对应所述当前负载量最小的服务器,确定为与所述唯一标识匹配的目标服务器之后,所述方法还包括:
生成所述唯一标识与所述目标服务器对应的负载会话;
将所述负载会话更新存储至所述内存字典中。
4.根据权利要求2所述的方法,其特征在于,在向所述视频监控客户端发送所述目标服务器对应的目标摄像头转码服务地址之后,所述方法还包括:
接收所述视频监控客户端发送的心跳信息,所述心跳信息用于表示所述单例模式窗口的视频播放成功;
在所述心跳信息接收停止时,更新所述内存字典中的所述目标服务器的当前负载量。
5.根据权利要求2至4中任一项所述的方法,其特征在于,所述方法还包括:
按照预设时间间隔周期性的向数据库同步所述内存字典中更新后的负载信息。
6.一种负载均衡方法,其特征在于,所述方法应用于综采自动化系统的视频监控客户端,所述方法包括:
向后端服务发送摄像头转码服务请求,所述摄像头转码服务请求中携带有单例模式窗口的唯一标识;
接收所述后端服务发送的与所述唯一标识匹配的目标服务器,以及所述目标服务器对应的目标摄像头转码服务地址,其中,所述目标服务器为所述后端服务对安装WebRTC服务的多个服务器进行负载均衡分析得到的;
基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务。
7.根据权利要求6所述的方法,其特征在于,在基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务之后,所述方法还包括:
通过添加视频监听事件,监听单例模式窗口的视频播放状态;
在单例模式窗口的视频播放成功时,向所述后端服务发送心跳信息;
在单例模式窗口的视频播放断开时,停止向所述后端服务发送心跳信息。
8.根据权利要求7所述的方法,其特征在于,在基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务之后,所述方法还包括:
在单例模式窗口的视频播放断开时,重新向所述后端服务发送所述摄像头转码服务请求,以使所述后端服务对安装WebRTC服务的多个服务器进行负载均衡分析,确定与所述唯一标识匹配的目标服务器。
9.一种负载均衡装置,其特征在于,所述装置应用于综采自动化系统的后端服务,所述装置包括:
接收模块,用于接收视频监控客户端发送的摄像头转码服务请求,所述摄像头转码服务请求中携带有单例模式窗口的唯一标识;
分析模块,用于对安装WebRTC服务的多个服务器进行负载均衡分析,确定与所述唯一标识匹配的目标服务器;
发送模块,用于向所述视频监控客户端发送所述目标服务器对应的目标摄像头转码服务地址,以使所述视频监控客户端基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务。
10.一种负载均衡装置,其特征在于,所述装置应用于综采自动化系统的视频监控客户端,所述装置包括:
发送模块,用于向后端服务发送摄像头转码服务请求,所述摄像头转码服务请求中携带有单例模式窗口的唯一标识;
接收模块,用于接收所述后端服务发送的与所述唯一标识匹配的目标服务器,以及所述目标服务器对应的目标摄像头转码服务地址,其中,所述目标服务器为所述后端服务对安装WebRTC服务的多个服务器进行负载均衡分析得到的;
调用模块,用于基于所述目标摄像头转码服务地址,调用所述目标服务器执行摄像头转码服务。
11.一种电子设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1-8中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311234482.2A CN117061524A (zh) | 2023-09-22 | 2023-09-22 | 负载均衡方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311234482.2A CN117061524A (zh) | 2023-09-22 | 2023-09-22 | 负载均衡方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117061524A true CN117061524A (zh) | 2023-11-14 |
Family
ID=88655644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311234482.2A Pending CN117061524A (zh) | 2023-09-22 | 2023-09-22 | 负载均衡方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117061524A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117745514A (zh) * | 2024-02-20 | 2024-03-22 | 浙江宇视科技有限公司 | 智能服务器集群的图像分配方法、装置、设备及介质 |
-
2023
- 2023-09-22 CN CN202311234482.2A patent/CN117061524A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117745514A (zh) * | 2024-02-20 | 2024-03-22 | 浙江宇视科技有限公司 | 智能服务器集群的图像分配方法、装置、设备及介质 |
CN117745514B (zh) * | 2024-02-20 | 2024-05-10 | 浙江宇视科技有限公司 | 智能服务器集群的图像分配方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112448858B (zh) | 网络通信控制方法及装置、电子设备和可读存储介质 | |
US20200319983A1 (en) | Redundancy Method, Device, and System | |
CN103858157A (zh) | 用于通信量引导器环境中的资源服务器的动态发现和配置的系统和方法 | |
CN117061524A (zh) | 负载均衡方法、装置、电子设备及存储介质 | |
CN113347037B (zh) | 一种数据中心访问方法及装置 | |
US9167313B1 (en) | Methods and system for transferring data for remote storage | |
US20210255786A1 (en) | Method and system for data storage and management | |
KR102494744B1 (ko) | 서비스의 연속성을 지원하는 클라우드 서버, 이를 포함하는 시스템 및 방법 | |
CN114221954A (zh) | 文件传输方法及装置、电子设备及存储介质 | |
CN106254814B (zh) | 一种会议恢复的方法、业务管理中心及系统 | |
CN116302352A (zh) | 集群灾备处理方法、装置、电子设备和存储介质 | |
US20070294255A1 (en) | Method and System for Distributing Data Processing Units in a Communication Network | |
US20160043894A1 (en) | Automatic reconfiguration of network parameters during file system failover | |
CN110290196B (zh) | 一种内容分发方法及装置 | |
US10680965B1 (en) | Redistribution of VPN tunnels among VPN concentrators | |
KR101883671B1 (ko) | 노드 분산 방법 및 이를 수행하는 관리 서버 | |
CN105939384A (zh) | 网络请求处理方法及系统 | |
CN104468767A (zh) | 一种云存储数据冲突检测方法及系统 | |
CN115426361A (zh) | 分布式客户端打包方法、装置、主服务器及存储介质 | |
CN112153093B (zh) | 基于集群的任务调度方法、装置、设备及可读存储介质 | |
CN113949631A (zh) | 客户端容灾的处理方法、系统及电子设备 | |
CN110022310B (zh) | 基于云计算开放网络操作系统的授权方法及装置 | |
CN113190347A (zh) | 一种边缘云系统及任务管理方法 | |
CN112118420A (zh) | 一种监控系统自动配置方法及装置 | |
KR102567541B1 (ko) | 엣지 서비스 인스턴스 배포 장치 및 그 제어방법 |
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 |