CN111479095A - 一种业务处理控制系统、方法及装置 - Google Patents
一种业务处理控制系统、方法及装置 Download PDFInfo
- Publication number
- CN111479095A CN111479095A CN202010586850.XA CN202010586850A CN111479095A CN 111479095 A CN111479095 A CN 111479095A CN 202010586850 A CN202010586850 A CN 202010586850A CN 111479095 A CN111479095 A CN 111479095A
- Authority
- CN
- China
- Prior art keywords
- processing
- behavior
- module
- data
- background 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.)
- Granted
Links
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- 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/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- 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, manipulating MPEG-4 scene graphs
-
- 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, manipulating MPEG-4 scene graphs
- H04N21/23418—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
-
- 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, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234381—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
Abstract
本申请涉及云技术领域,尤其涉及一种业务处理控制系统、方法及装置,该系统包括端侧模块、多个接入层模块、后台服务模块,其中:端侧模块根据网络传输性能调整针对行为轨迹数据的第一处理策略,接入层模块根据后台服务模块的处理性能调整发送到消息队列的转发策略,后台服务模块根据处理性能调整根据行为轨迹数据处理相关联的各任务请求的第二处理策略,这样,通过系统中各个模块的调度策略,可以有效控制行为轨迹数据生产、发送和消费速度等,提高了系统整体资源利用率,并且提高了系统的可用性和性能。
Description
技术领域
本申请涉及云技术领域,尤其涉及一种业务处理控制系统、方法及装置。
背景技术
目前,计算机视觉(ComputerVision,CV)技术应用越来越广泛,例如,应用在智慧安防、智慧社区、智慧零售等领域,其主要是通过摄像头抓拍实时视频流,然后通过相关的CV算法处理后,发送到后台云服务器进行人脸识别、人体识别等处理,进而完成身份建档、人脸检索、人体行为轨迹等一系列流程,相关技术中智慧零售场景下的CV应用系统,上报数据完全依赖一个接入层服务,并且采用直接上报、后台云服务器直接处理的方式,这样,降低了性能和可用性,数据处理无法保证,并且容易导致高峰阶段很快耗尽计算资源,在空闲时计算资源又处于很低利用的状态,降低了资源利用率。
发明内容
本申请实施例提供一种业务处理控制系统、方法及装置,以提高资源利用率,并提高系统的可用性和性能。
本申请实施例提供的具体技术方案如下:
本申请一个实施例中提供了一种业务处理控制系统,包括端侧模块、接入层模块、后台服务模块,其中:
端侧模块,用于根据第一处理策略获得行为视频流并根据所述行为视频流获得行为轨迹数据,将所述行为轨迹数据通过消息上报给接入层模块,以及根据网络传输性能调整所述第一处理策略;
接入层模块,用于接收到端侧模块上报的行为轨迹数据时,根据转发策略将所述行为轨迹数据的消息保存到消息队列,并将所述消息队列中的行为轨迹数据转发给所述后台服务模块,以及根据所述后台服务模块的处理性能调整所述转发策略;并
所述后台服务模块,用于接收接入层模块转发的所述行为轨迹数据,并根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求,以及根据处理性能调整所述第二处理策略。
可选的,所述取流参数包括获取行为视频流时的解码模式和跳帧大小,所述处理参数包括一次处理数量,所述上报参数包括上报线程数和每个线程包含上报的行为轨迹数据的数量;
则调整处理所述行为轨迹数据的调度参数以降低获得行为轨迹数据的速度和数据量时,所述端侧模块用于,执行以下至少一种操作:
从各预设解码模式中选择解码速度最低的解码模式或解码速度小于当前解码模式的解码模式,并增大跳帧大小;
降低获得行为轨迹数据时针对行为视频流的一次处理数量;
调整向接入层模块上报所述行为轨迹数据的上报参数以降低上报行为轨迹数据的速度和数据量时,所述端侧模块,用于:降低上报线程数和每个线程包含上报的行为轨迹数据的数量;
调整所述调度参数以提高获得行为轨迹数据的速度和数据量时,所述端侧模块,用于执行以下至少一种操作:
从各预设解码模式中选择解码速度最高的解码模式或解码速度大于当前解码模式的解码模式,并降低跳帧大小;
增大获得行为轨迹数据时针对行为视频流的一次处理数量;
调整所述上报参数以提高上报行为轨迹数据的速度和数据量时,所述端侧模块,用于:增大上报线程数和每个线程包含上报的行为轨迹数据的数量。
可选的,所述发送参数包括以下一种或任意组合:发送到消息队列的发送间隔、每次发送数据量;
则调整发送参数,以降低发送到消息队列的数据量时,所述接入层模块,用于:执行以下至少一种操作:增大所述发送间隔、降低所述每次发送数据量;
调整发送参数,以增大发送到消息队列的数据量时,所述接入层模块,用于:执行以下至少一种操作:减小所述发送间隔、增大所述每次发送数据量。
可选的,所述接入层模块,还用于:过滤数据格式错误的行为轨迹数据。
本申请另一个实施例中提供了一种业务处理控制方法,包括:
根据第一处理策略获得行为视频流并根据所述行为视频流获得行为轨迹数据,将所述行为轨迹数据通过消息上报给接入层模块;
根据网络传输性能调整所述第一处理策略。
本申请另一个实施例中提供了一种业务处理控制方法,包括:
接收端侧模块上报的行为轨迹数据,其中,所述行为轨迹数据是所述端侧模块根据第一处理策略获得行为视频流并根据所述行为视频流获得并上报的,所述第一处理策略是所述端侧模块根据网络传输性能调整的;
根据转发策略将所述行为轨迹数据的消息保存到消息队列;
将所述消息队列中的行为轨迹数据转发给所述后台服务模块,以使所述后台服务模块接收接入层模块转发的所述行为轨迹数据,并根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求,以及根据处理性能调整所述第二处理策略;
根据所述后台服务模块的处理性能调整所述转发策略。
本申请另一个实施例中提供了一种业务处理控制方法,包括:
接收接入层模块转发的行为轨迹数据,其中,所述行为轨迹数据是所述接入层模块接收到端侧模块上报的行为轨迹数据时,根据转发策略将所述行为轨迹数据的消息保存到消息队列后通过消息队列转发的,并所述转发策略是所述接入层模块根据后台服务模块的处理性能调整的;
根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求;
根据处理性能调整所述第二处理策略。
本申请另一个实施例中提供了一种业务处理控制装置,包括:
处理单元,用于根据第一处理策略获得行为视频流并根据所述行为视频流获得行为轨迹数据,将所述行为轨迹数据通过消息上报给接入层模块;
第一调整单元,用于根据网络传输性能调整所述第一处理策略。
本申请另一个实施例中提供了一种业务处理控制装置,包括:
接收单元,用于接收端侧模块上报的行为轨迹数据,其中,所述行为轨迹数据是所述端侧模块根据第一处理策略获得行为视频流并根据所述行为视频流获得并上报的,所述第一处理策略是所述端侧模块根据网络传输性能调整的;
保存单元,用于根据转发策略将所述行为轨迹数据的消息保存到消息队列;
转发单元,用于将所述消息队列中的行为轨迹数据转发给所述后台服务模块,以使所述后台服务模块接收接入层模块转发的所述行为轨迹数据,并根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求,以及根据处理性能调整所述第二处理策略;
第二调整单元,用于根据所述后台服务模块的处理性能调整所述转发策略。
本申请另一个实施例中提供了一种业务处理控制装置,包括:
接收单元,用于接收接入层模块转发的行为轨迹数据,其中,所述行为轨迹数据是所述接入层模块接收到端侧模块上报的行为轨迹数据时,根据转发策略将所述行为轨迹数据的消息保存到消息队列后通过消息队列转发的,并所述转发策略是所述接入层模块根据后台服务模块的处理性能调整的;
处理单元,用于根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求;
第三调整单元,用于根据处理性能调整所述第二处理策略。
本申请另一个实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一种业务处理控制方法的步骤。
本申请另一个实施例中提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种业务处理控制方法的步骤。
本申请实施例中,提供了一种业务处理控制系统,包括端侧模块、多个接入层模块和后台服务模块,通过扩展多个接入层模块保证了数据接收的可靠性,并且端侧模块、接入层模块和后台服务模块分别设计调度策略,端侧模块根据第一处理策略获得行为视频流并根据所述行为视频流获得行为轨迹数据,将所述行为轨迹数据通过消息上报给接入层模块,以及根据网络传输性能调整所述第一处理策略,接入层模块接收到端侧模块上报的行为轨迹数据时,根据转发策略将所述行为轨迹数据的消息保存到消息队列,并将所述消息队列中的行为轨迹数据转发给所述后台服务模块,以及根据所述后台服务模块的处理性能调整所述转发策略,后台服务模块根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求,以及根据处理性能调整所述第二处理策略,这样,通过系统中各个模块的调度策略,可以有效控制行为轨迹数据生产、发送和消费速度等,使得系统整体资源利用率可以保持在一个高效利用状态,并且提高了系统的可用性和性能,可以应用于各种主流的智慧零售商场场景,实现了一个更高可用、高可靠和高性能的系统。
附图说明
图1为相关技术中智慧零售场景下CV应用系统框架图;
图2为本申请实施例中业务处理控制系统的一种应用环境架构示意图;
图3为本申请实施例中的业务处理控制系统框架图;
图4为本申请实施例中的业务控制系统结构示意图;
图5为本申请实施例中业务处理控制系统中整体调度策略原理示意图;
图6为本申请实施例中端侧模块的调度策略原理示意图;
图7为本申请实施例中接入层模块的调度策略原理示意图;
图8为本申请实施例中后台服务模块的调度策略原理示意图;
图9为本申请实施例中一种业务处理控制方法流程图;
图10为本申请实施例中另一种业务处理控制方法流程图;
图11为本申请实施例中另一种业务处理控制方法流程图;
图12为本申请实施例中一种业务处理控制装置结构示意图;
图13为本申请实施例中另一种业务处理控制装置结构示意图;
图14为本申请实施例中另一种业务处理控制装置结构示意图;
图15为本申请实施例中电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为便于对本申请实施例的理解,下面先对几个概念进行简单介绍:
软件开发工具包(Software Development Kit,SDK):表示一些被软件工程师用于为特定的软件包、软件框架、硬件平台、业务系统等建立应用软件的开发工具的集合。
计算机视觉(ComputerVision,CV):计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(Optical Character Recognition,OCR)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。例如,本申请实施例中,主要指针对在不同场景下的CV应用,例如智慧场景中的CV应用,可以对摄像头采集到的视频流,进行目标检测和识别、目标定位、目标跟踪、人脸识别等处理,从而获得视频流中各个用户的行为轨迹数据、身份建档等。
KAFKA:是一种高吞吐量的分布式发布订阅消息队列系统,具有以下特点:1)高吞吐量、低延迟;2)可扩展性:KAFKA集群支持热扩展;3)持久性、可靠性:消息被持久化到本地磁盘,并且支持数据备份防止数据丢失;4)容错性:允许集群中节点失败,例如若副本数量为n,则允许n-1个节点失败;5)高并发:支持数千个客户端同时读写。
LEVELDB:是一个google实现的非常高效的单机版本kv数据库,具备良好的顺序读写性能。
Consul: 分布式环境中的服务注册和发现组件。
Redis:是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、键-值(key-value)数据库,并提供多种语言的应用程序接口(Application ProgramInterface,API):1)支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。2)redis不仅仅支持简单的key-value类型的数据,同时还提供列表(list),集合(set),有序集合(Sorted Set,zset),字典(hash)等数据结构的存储。3)redis支持数据的备份,即主从(master-slave)模式的数据备份,本申请实施例中的后台服务模块中可以采用redis数据库引入缓存机制,对于处理失败的任务请求可以先缓存到redis数据库,后续系统清闲时再做处理。
线程(thread):是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位,通常一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。本申请实施例中每条发送的行为轨迹数据和任务请求,可以是基于线程进行处理。
目前,CV技术应用越来越广泛,例如,应用在智慧安防、智慧社区、智慧零售等领域,例如,参阅图1所示,为相关技术中智慧零售场景下CV应用系统框架图,如图1所示,现有的智慧零售系统包括摄像头、场内服务、云上后台服务,具体地,场内服务通过CV算法处理,获得行为轨迹数据,并经过源数据上报服务直接通过带宽发送给云上后台服务,云上后台服务的接入层服务接收到行为轨迹数据后,直接相应分发给人脸后台服务和人体后台服务,并且云上后台服务将相关抓拍数据直接存到本地磁盘,历史数据直接存储在Mysql数据库。可知相关技术中的智慧零售场景下CV应用系统主要有以下问题:
1)可用性较差。源CV数据在经带宽上报时可能因带宽受限或网络问题上报失败而直接将数据丢弃,并且上报数据完全依赖一个接入层服务,一旦该接入层服务出现问题将导致所有场内服务的数据直接丢弃且由于上报数据没有缓冲,系统重启后数据将全部丢失;云上后台服务由于图形处理器(Graphics Processing Unit,GPU)资源有限,如果处理到极限则后续任务请求失败后将直接丢弃。
2)性能较差。现有CV应用系统直接将海量抓拍数据存储到本地磁盘,这将大大增大系统磁盘输入和输出(Input/Output,IO)和文件句柄消耗,对于检索等需要历史数据的情况,相关技术中的系统是直接通过读写Mysql数据库实现,这样加大了处理时间。
3)资源利用率。现有的CV应用下的智慧零售系统采用直接上报、直接处理方式缺乏削峰解耦等机制,在请求高峰将很快耗尽计算资源,在请求空闲时又让计算资源长时间处于很低的状态,资源利用率不高。
因此,针对上述问题,本申请实施例中提供了一种业务处理控制系统,也可以理解为具体应用场景下的CV应用系统,主要包括端侧模块、多个接入层模块和后台服务模块,在端侧模块、接入层模块和后台服务模块中均有相应的调度策略,端侧模块可以根据网络传输性能,调整行为轨迹数据的第一处理策略,并将行为轨迹数据通过消息上报给接入层模块,接入层模块可以根据后台服务模块的处理性能,调整将行为轨迹数据保存到消息队列的转发策略,并将消息队列中的行为轨迹数据转发给后台服务模块,后台服务模块根据后台服务模块的处理性能,调整根据行为轨迹数据处理相关联的各任务请求的第二处理策略,这样,系统中各个模块均有相应的调度策略,可以通过调整行为轨迹数据的处理策略、调整转发策略和调整处理各任务请求的处理策略,进而适应网络传输性能、后台服务模块的处理性能等,可以控制生产者即端侧模块的生产行为轨迹数据速度、消费者即后台服务模块的消费速度,保证了系统将按照实际处理能力和最大计算资源平滑处理任务请求,提高了资源利用率,并且提升了系统整体的可用性和性能。
参阅图2所示,为本申请实施例中业务处理控制系统的一种应用环境架构示意图,包括视频采集装置100、端侧服务器200、云后台服务器300。
其中,视频采集装置100可以为枪机摄像机、球机摄像机等,并且可以部署多个,本申请实施例中均不进行限制,视频采集装置100主要用于采集行为视频流,例如在智慧商场场景,由于枪机的监控位置固定,只能正对某监控位置,监控方位有限,因此可以部署在一些公共区域,例如超市的进口、出口位置,主要可以用于获得一些进场数据和出场数据(可以统称为场数据),而球机其集摄像机系统、变焦镜头、电子云台于一体,球机的监控范围相对于固定不动的枪机要大很多,通常都可以做到360°旋转,能够监控到一个很大的区域,因此可以将球机部署在店内,对店内区域进行监控,获得一些店数据。
端侧服务器200为针对场内服务的服务器,分别与视频采集装置100、云后台服务器300通信连接,端侧服务器200可以从各个视频采集装置100中获取行为视频流,并对行为视频流进行处理,本申请实施例中业务处理控制系统包括的端侧模块即可以部署在端侧服务器200,实现端侧服务器200的功能,例如包括取流服务、算法服务等,获得行为轨迹数据,并采用上报服务,将行为轨迹数据上报给云后台服务器300,其中,算法服务即表示对行为视频流进行算法处理,例如进行人脸识别、人体跟踪检测等,进而获得行为数据流中各个用户的行为轨迹数据,但端侧服务器200可以仅进行简单的算法处理,分别识别出场数据或店数据中各用户的行为轨迹数据。
云后台服务器300可以分别为客户端和端侧服务器200提供相关的网络服务,具体地,可以获取端侧服务器200上报的行为轨迹数据,并可以从客户端获取任务请求,进而根据相应的行为轨迹数据,对任务请求进行处理,将处理结果返回给客户端,例如,客户端向云后台服务器300发送针对某商场的客流量任务请求,则后台服务器可以根据该商场的行为轨迹数据,进行相关处理,进行用户身份识别建档,确定出客流量大小。
并且需要说明的是,本申请实施例中业务处理控制系统包括的接入层模块和后台服务模块,可以同时部署在云后台服务器300上,端侧服务器200通过接入层模块与后台服务模块进行通信,当然接入层模块和后台服务模块,也可以分别部署在不同的服务器上,本申请实施例中并不进行限制,如图2即是以接入层模块和后台服务模块同时部署在云后台服务器300为例进行说明的。
其中,端侧服务器200、云后台服务器300可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,并且云后台服务器300还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,客户端以及云后台服务器300可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
端侧服务器200与云后台服务器300之间可以通过互联网相连,实现相互之间的通信。可选地,上述的互联网使用标准通信技术、协议,或者两者结合。互联网通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制或专用数据通信技术取代或者补充上述数据通信技术。
值得说明的是,本申请实施例中的应用环境架构图是为了更加清楚地说明本申请实施例中的技术方案,并不构成对本申请实施例提供的技术方案的限制,对于其它的应用架构,本申请实施例提供的技术方案对于类似的问题,同样适用。
基于上述实施例,为便于更好地理解本申请实施例,下面先简单介绍下本申请实施例中的业务处理控制系统架构,参阅图3所示,为本申请实施例中的业务处理控制系统框架图。
如图3所示,本申请实施例中业务处理控制系统可以主要包括两部分,分别为场内服务和云上后台服务,如图3所示,云上后台服务包括接入层模块和后台服务模块,即可以将接入层模块和后台服务模块部署在一起,这里以部署在一起为例进行说明。
第一部分:场内服务。
本申请实施例中场内服务即对应端侧模块,如图3所示,端侧模块实现功能具体包括:
1)取流服务:端侧模块从视频采集装置获取行为视频流,并根据确定的解码模式和跳帧大小进行解码和获取视频帧。
其中,解码模式可以为基于中央处理器(Central Processing Unit,CPU)、GPU模式,本申请实施例中并不进行限制,跳帧大小也就是取帧频率,通常跳帧越多生成的数据越少。
本申请实施例中可以通过调整解码模式和跳帧大小,控制行为轨迹数据的生产速度和数据量。
2)算法服务:端侧模块提供多种CV相关算法,基于各算法SDK对行为视频流进行处理,获得行为轨迹数据。
例如,根据人脸识别算法,分别对行为视频流的各视频帧进行人脸识别,并根据目标检测和跟踪算法,对各人体进行检测和跟踪,获得各人体的行为轨迹数据,并可以与人脸识别结果结合,将各人体的行为轨迹数据与人脸身份进行关联,进行身份建档等。
本申请实施例中,对于端侧模块的算法服务并不进行限制,主要是对行为视频流进行简单处理,分别对各视频采集装置采集的行为视频流进行处理,获得各对应的行为轨迹数据。
并且,本申请实施例中,可以调整算法SDK接口的批处理(Batch)大小,即一次算法处理所需的输入规模(也即指一次处理数量),通常Batch越大,生产越快。
3)上报服务:端侧模块可以将获得的行为轨迹数据通过消息上报给接入层模块。
例如,如图3所示,端侧模块将获得行为轨迹数据,经源数据上报服务直接通过公有云带宽,上报给接入层模块。
本申请实施例中,对于上报服务可以控制上报参数,例如包括上报线程数、每个线程包含上报的行为轨迹数据的数量,即每个上报请求batch大小(也就是一次上报包括多少个行为轨迹数据),一般线程越多,batch越大,则行为轨迹数据生成量越多。
并且本申请实施例中还定义了实时类型和非实时类型,具体可以根据不同行为轨迹数据的重要程度和业务需求进行划分,例如,对于智慧商超场景,进场人脸轨迹和进场人体轨迹需要用来产生检索种子库,因此场行为轨迹数据可以定义为实时任务,还有需要做客流、提醒业务的部分店铺的人体店轨迹数据也可以视作实时任务,对于大量的普通的店人体轨迹数据可以看成非实时任务。
这样,通过实时和非实时任务的划分,可以通过调度调整,使得可以在请求高峰时段资源不足情况下优先处理实时任务,将非实时任务先缓存待后续请求空闲情况下再处理,从而提高资源利用率,并保证实时任务可以优先处理,提高任务处理效和可靠性。
4)本申请实施例中,在端侧模块增加了顺序读写数据库,例如为LEVELDB数据库,下文均以顺序读写数据库为LEVELDB数据库为例进行说明,端侧模块的LEVELDB数据库主要用于发送缓存和上传失败数据的存储,例如可以将上报到接入层模块失败的行为轨迹数据,缓存到LEVELDB数据库中,待空闲时再次上报。
本申请实施例中,在端侧模块引入了根据网络传输性能和消息队列长度的生产者调度策略,具体地,端侧模块可以根据网络传输性能和接入层模块的消息队列长度二者之一或全部,来动态调整针对行为轨迹数据的处理策略,例如包括对上述取流服务中的取流参数、算法服务中的处理参数、上报服务中的上报参数进行调整,从而以适应网络传输性能和后台服务模块的处理情况。其中,网络传输性能可以由行为轨迹数据的上报失败率表征,也可以反映上报带宽压力,接入层模块的消息队列长度可以反映后台服务模块的处理情况,消息队列长度过长,则表示处理速度较慢,消息队列长度过短,则表示处理速度较快。
第二部分:云上后台服务。
a、接入层模块。
1)本申请实施例中引入基于CONSUL的服务注册和发现组件,对接入层模块进行水平扩展,即包括多个接入层模块,例如,图3中以包括3个接入层为例进行说明,可以基于任意一个空闲的、可用的接入层模块,接收端侧模块发送的行为轨迹数据,这样,可以避免单个接入层服务不可用时带来的数据丢失,保证了总有一个接入层模块可以接收端侧模块上报的行为轨迹数据,并且扩展的接入层越多,可以接收端侧模块上报的行为轨迹数据越多。
2)本申请实施例中,在接入层模块中还增加了消息队列,例如为KAFKA消息队列,并且可以根据端侧模块上报的行为轨迹数据的数据类型,还可以将消息队列分为实时消息队列和非实时消息队列,例如,如图3所示,实时消息队列(message queue,MQ)可以对应场人体轨迹数据,非实时消息队列可以对应店人体轨迹数据,需要说明的是,接入层模块仅是用于转发,其实接入层模块不区分实时数据和非实时数据,只是将端侧模块上报的行为轨迹数据分发到后台服务模块中相应的服务器,而端侧模块是可以根据行为轨迹数据对应的字段标识,来划分为实时和非实时数据,并根据上报参数,保证优先上报实时行为轨迹数据,这样为了便于描述并和端侧模块对应,因此,在接入层模块中划分并采用实时消息队列和非实时消息队列分别表示。这样,在端侧模块和后台服务模块中间增加了消息队列,实现了两个服务之间的解耦,消息队列具备了削峰解耦这一良好特性。
并且,在接入层模块引入了基于后台服务模块的处理性能的接入层调度策略,具体地,根据后台服务模块的处理性能,调整将行为轨迹数据保存到消息队列的转发策略,进而将消息队列中的行为轨迹数据转发给后台服务模块。
这样,在缓存到KAFKA消息队列前,为了减少存磁盘操作,引入发送缓存机制,根据后台服务模块的处理性能,调整发送到消息队列的发送参数,以适应后台服务模块的处理性能,通过发送缓存机制和KAFKA消息队列,保证了数据不丢失。
b、后台服务模块。
1)后台服务模块从消息队列中获取行为轨迹数据,例如,如图3所示,可以将消息队列中的人脸行为轨迹数据发送到人脸后台服务,以进行人脸识别、人脸身份建档等处理,或者将场人体行为轨迹数据和店人体行为轨迹数据发送到人体后台服务,发送到人体后台服务,以进行人体检测和跟踪等。
并且后台服务模块,还可以通过上报服务获得各任务请求,例如,获得各客户端发送的检索任务请求、客流任务请求等。
2)本申请实施例中,在后台服务模块中还引入了基于后台服务模块的处理性能的消费侧调度策略,具体地,根据后台服务模块的处理性能,调整根据行为轨迹数据处理相关联的各任务请求的处理策略,以适应后台服务模块的处理性能。
其中,后台服务模块的处理性能由后台服务模块处理各任务请求时CV微服务调用失败率和GPU利用率中的一个或全部表征。
具体地,在处理任务请求时,通过调用CV微服务来进行处理,并在计算时基于GPU来计算,因此,GPU利用率越高说明计算量较大,需要降低处理速度和计算量,CV微服务调用失败率越高也说明资源紧张,处于请求高峰时段,需要降低处理速度和计算量,反之亦然。
3)后台服务模块中还包括缓存数据库、LEVELDB数据库和MYSQL数据库,其中,缓存数据库例如为Redis数据库,下文均以缓存数据库为Redis数据库为例进行说明。
其中,Redis数据库用于存储处理失败的任务请求、历史数据存储等,LEVELDB数据库用于存储采集到的行为视频流,MYSQL数据库用于存储行为轨迹数据。
这样,在后台服务模块中增加了LEVELDB数据库组件可以实现海量抓拍数据的顺序读写,提高处理速度,可以大大降低系统磁盘输入和输出(Input/Output,IO),提高数据读取速度,并且增加了Redis数据库的缓存机制,可以实现历史数据的快速访问,避免从MYSQL数据库中获取,进而可以提高处理性能,例如,针对检索任务请求,可以从Redis数据库中快速读取历史数据,可以提高检索整体流程的速度。
本申请实施例中,基于上述业务处理控制系统,实现了业务处理控制系统的高可用、高性能和高资源利用率,具体地,1)高可用:在端侧模块增加了LEVELDB数据库持久化实现了上报失败数据的存储,在接入层模块增加了基于CONSUL的服务注册和发现,保证了总有一个接入层接收端侧模块上报的行为轨迹数据,在接入层模块中还增加了KAFKA消息队列,实现上报数据的缓存,保证了数据不会丢失和系统重启后的快速恢复。2)高性能:在后台服务模块中增加了基于LEVELDB数据库的顺序读写机制,磁盘顺序读写性能将比随机读写提升很大,同时增加了REDIS缓存机制实现历史数据的快速访存,尽量避免了与磁盘打交道。3)高资源利用率:通过引入实时和非实时消息队列、数据缓存、端侧模块的生产者调度策略、接入层模块的接入层调度策略、后台服务模块的消费者调度策略等,可以很好地实现任务请求处理的均匀化和平稳化,保证了在请求高峰阶段优先处理实时任务而将来不及处理的非实时任务先持久化或缓存处理,空闲时再完成剩余数据的处理,并且在请求空闲阶段可以通过调度策略,提高生产速度和消费速度来加快处理,最终可以实现系统计算资源的持续高效利用。
基于上述图3所示的业务处理控制系统框架,下面具体介绍下本申请实施例中业务处理控制系统,参阅图4所示,为本申请实施例中的业务控制系统结构示意图,包括端侧模块、多个接入层模块、后台服务模块,具体分别针对端侧模块、接入层模块和后台服务模块进行说明。
第一部分:端侧模块。端侧模块,用于:
S1、根据第一处理策略获得行为视频流并根据行为视频流获得行为轨迹数据,将行为轨迹数据通过消息上报给接入层模块。
S2、根据网络传输性能调整所述第一处理策略。
其中,网络传输性能包括端侧模块和接入层模块之间的传输性能。
执行该步骤S2时,端侧模块还用于:根据接入层模块的消息队列长度,调整第一处理策略。
其中,网络传输性能由行为轨迹数据的上报失败率表征,当然也可以采用其它指标来表征网络传输性能,本申请实施例中并不进行限制,并且网络传输性能例如为上报带宽等,也不进行限制。
也就是说,本申请实施例中可以仅根据网络传输性能来动态调整,也可以仅根据接入层模块的消息队列长度,或者可以综合接入层模块的消息队列长度和网络传输性能来动态调整。
则端侧模块可以通过监视上报失败率和接入层模块回包中的消息队列长度,来感知上报带宽压力和后台服务模块的处理情况,例如,上报失败率较高或消息队列长度过长,则需要降低生产者速度,又例如,消息队列长度过短,则可以提高生产者速度,具体地,调整针对行为轨迹数据的处理策略时,端侧模块具体用于: 可以分为以下两种情况:
第一种情况:若确定上报失败率大于等于第一比例阈值或消息队列长度大于等于长度阈值时,或者,上报失败率大于等于第一比例阈值并且消息队列长度大于等于长度阈值时,执行以下至少一种操作:调整处理行为轨迹数据的调度参数以降低获得行为轨迹数据的速度和数据量,调整向接入层模块上报行为轨迹数据的上报参数以降低上报行为轨迹数据的速度和数据量。
其中,调度参数包括以下任意一种或组合:获取行为视频流时的取流参数、获得行为轨迹数据时的处理参数。
并且,取流参数包括获取行为视频流时的解码模式和跳帧大小,处理参数包括一次处理数量,上报参数包括上报线程数和每个线程包含上报的行为轨迹数据的数量。这里的取流参数、处理参数、上报参数可以分别对应端侧模块的取流服务、算法服务和上报服务。
则1)调整处理行为轨迹数据的调度参数以降低获得行为轨迹数据的速度和数据量时,端侧模块具体用于:
a、从各预设解码模式中选择解码速度最低的解码模式或解码速度小于当前解码模式的解码模式,并增大跳帧大小。
例如,若当前解码模式为GPU解码模式,由于GPU解码模式大于CPU解码模式的解码速度,则这时可以调整解码模式为CPU解码模式。
当然需要说明的是,若当前解码模式已经是各预设解码模式中解码速度最低的解码模式了,则这时可以无需再调整当前解码模式。
b、降低获得行为轨迹数据时针对行为视频流的一次处理数量。
c、从各预设解码模式中选择解码速度最低的解码模式或解码速度小于当前解码模式的解码模式,并增大跳帧大小;以及降低获得行为轨迹数据时针对行为视频流的一次处理数量。
2)调整向接入层模块上报行为轨迹数据的上报参数以降低上报行为轨迹数据的速度和数据量时,端侧模块,具体用于:降低上报线程数和每个线程包含上报的行为轨迹数据的数量。
第二种情况:若确定上报失败率小于第一比例阈值或消息队列长度小于长度阈值时,或者,上报失败率小于第一比例阈值并且消息队列长度小于长度阈值,则执行以下至少一种操作:调整调度参数以提高获得行为轨迹数据的速度和数据量,调整上报参数以提高上报行为轨迹数据的速度和数据量。
其中,1)调整调度参数以提高获得行为轨迹数据的速度和数据量时,端侧模块,具体用于:
a、从各预设解码模式中选择解码速度最高的解码模式或解码速度大于当前解码模式的解码模式,并降低跳帧大小。
当然同样地,若当前解码模式已经是各预设解码模式中解码速度最高的解码模式,则这时无需调整当前解码模式。
b、增大获得行为轨迹数据时针对行为视频流的一次处理数量。
c、从各预设解码模式中选择解码速度最高的解码模式或解码速度大于当前解码模式的解码模式,并降低跳帧大小,以及增大获得行为轨迹数据时针对行为视频流的一次处理数量。
2)调整上报参数以提高上报行为轨迹数据的速度和数据量时,端侧模块,具体用于:增大上报线程数和每个线程包含上报的行为轨迹数据的数量。
进而本申请实施例中就可以基于调整后的上报参数,将行为轨迹数据通过消息上报给接入层模块,并且本申请实施例中还可以根据任务重要性将行为轨迹数据划分为实时类型和非实时类型,则将获得的行为轨迹数据通过消息上报给接入层模块时,端侧模块具体用于:
第一种情况:针对实时类型数据。
若确定行为轨迹数据的数据类型属于预设实时类型,则确定实时内存队列的负载率小于第一负载阈值时,将行为轨迹数据通过消息上报给接入层模块;
第二种情况:针对非实时类型数据。
若确定行为轨迹数据的数据类型属于预设非实时类型,则确定非实时内存队列的负载率小于第二负载阈值时,将行为轨迹数据通过消息上报给接入层模块,其中,第一负载阈值大于第二负载阈值。
本申请实施例中,分别针对实时类型数据和非实时类型数据,对应维护一个内存队列,并设置实时内存队列的第一负载阈值大于非实时内存队列的第二负载阈值,这样设置可以使得对实时内存队列要求较宽松,而对于非实时内存队列要求较严格,从而非实时内存队列更容易达到第二负载阈值,可以资源紧张情况下,限制非实时类型的行为轨迹数据的发送,保证实时类型的行为轨迹数据优先发送。
进一步地,本申请实施例中端侧模块中还至少包括顺序读写数据库(例如为LEVELDB数据库),引入了基于顺序读写数据库的上报失败数据的存储,具体地,端侧模块还用于:
1)若确定实时内存队列的负载率大于第一负载阈值,或确定非实时内存队列的负载率大于第二负载阈值,则将行为轨迹数据缓存到LEVELDB数据库。
2)按照预设周期过滤掉LEVELDB数据库中过期的行为轨迹数据,并在确定实时内存队列的负载率小于第一负载阈值,或非实时内存队列的负载率小于第二负载阈值时,将LEVELDB数据库中的未过期的行为轨迹数据通过消息上报给接入层模块。
这样,通过LEVELDB数据库,当上报压力较大时,即大于第一负载阈值或大于第二负载阈值,则先进行缓存,并且还可以过滤掉过期的行为轨迹数据,例如超过一周、或一个月等的行为轨迹数据,认为是过期的行为轨迹数据,具体过期时间设置,本申请实施例中并不进行限制,从而可以不断轮询,一旦确定小于第一负载阈值或小于第二负载阈值时,就可以将未过期的行为轨迹数据上报给接入层模块。
这样,通过取流参数、算法处理参数和上报参数的调整,可以降低行为轨迹数据的生产速度和生产量,或者提高行为轨迹数据得生产速度和生产量,并且还设计了端侧模块的基于LEVELDB数据库的上报失败缓存机制等,从而可以保证数据不丢失,并适应网络传输性能和后台服务模块的处理性能,例如通过实验验证表明,引入生产者调度策略后,网络带宽需求降低40%以上,行为轨迹数据上报成功率由95%提高到99%。
第二部分:接入层模块。每个接入层模块,用于:
S1、接收端侧模块上报的行为轨迹数据。
S2、根据转发策略将行为轨迹数据的消息保存到消息队列,并将消息队列中的行为轨迹数据转发给后台服务模块。
其中,消息队列例如采用KAFKA消息队列,本申请实施例中并不进行限制。
本申请实施例中在接入层模块引入了基于KAFKA消息队列的缓存机制,在发送到KAFKA消息队列之前,为了减少存磁盘操作,引入发送缓存机制,即每次发送给KAFKA消息队列的数据由多个轨迹组成的batch,batch大小和batch发送间隔可控,一般batch大小越大,即每次发送数据量越大,发送间隔时间越短,则发送给KAFKA消息队列的行为轨迹数据的数据量越多。
S3、根据后台服务模块的处理性能调整转发策略。
其中,后台服务模块的处理性能由后台服务模块处理各任务请求时CV微服务调用失败率和GPU利用率中的一个或全部表征。
则执行上述S3中根据后台服务模块的处理性能调整转发策略时,接入层模块具体用于:
第一种情况:若确定CV微服务调用失败率大于第二比例阈值或GPU利用率大于第三比例阈值时,或者,CV微服务调用失败率大于第二比例阈值并且GPU利用率大于第三比例阈值时,则调整发送参数,以降低发送到消息队列的数据量。
其中,发送参数包括以下一种或任意组合:发送到消息队列的发送间隔、每次发送数据量。
则调整发送参数,以降低发送到消息队列的数据量时,接入层模块具体用于:执行以下至少一种操作:增大发送间隔、降低每次发送数据量。
第二种情况:若确定CV微服务调用失败率小于第二比例阈值或GPU利用率小于第三比例阈值时,或者,CV微服务调用失败率小于第二比例阈值并且GPU利用率小于第三比例阈值时,则调整发送参数,以增大发送到消息队列的数据量。
具体地,调整发送参数,以增大发送到消息队列的数据量时,接入层模块具体用于:执行以下至少一种操作:减小发送间隔、增大每次发送数据量。
本申请实施例中,接入层模块会监控后台服务模块的CV微服务调用失败率和GPU利用率中的一个或全部来感知后台服务模块的处理性能,若出现CV微服务调用持续失败或者GPU利用率过高,则这里当CV微服务调用持续失败或GPU利用率过高时,由于任务请求等待,一般也会伴随着消息队列长度过长的现象,因此需要降低发送到消息队列的行为轨迹数据规模,并且前述端侧模块就可以通过监控消息队列长度来感知后台服务模块的处理性能,例如,可以通过增大batch发送间隔、降低每次发送batch数据量,以降低发送速度和发送数据量,反之,可以通过增加batch大小和降低batch发送间隔来加快行为轨迹数据的发送。
进一步地,接入层模块还可以做数据过滤,以提高行为轨迹数据的数据质量,具体地,接入层模块还用于:过滤数据格式错误的行为轨迹数据。
第三部分:后台服务模块。后台服务模块,用于:
S1、接收接入层模块转发的行为轨迹数据。
具体地,根据行为轨迹数据中字段的类别标识,可以将不同的行为轨迹数据分别分发到人脸后台或人体后台,分别进行人脸识别或人体检测跟踪等处理。
S2、根据第二处理策略以及行为轨迹数据,处理行为轨迹数据相关联的各任务请求。
S3、根据处理性能调整第二处理策略。
其中,后台服务模块的处理性能由后台服务模块处理各任务请求时CV微服务调用失败率和GPU利用率中的一个或全部表征。
则执行上述S3时,后台服务模块,具体用于:
第一种情况:若确定CV微服务调用失败率大于第二比例阈值或GPU利用率大于第三比例阈值时,或者,CV微服务调用失败率大于第二比例阈值并且GPU利用率大于第三比例阈值时,则执行以下至少一种操作:
1)减小处理各任务请求时的处理线程数阈值,超过处理线程数阈值的任务请求进入阻塞等待状态。
即针对人脸后台或人体后台的限流机制,可以通过线程数阈值,限制处理任务请求的数量。
2)降低同一身份标识对应的各行为轨迹数据的质量筛选出的数量。
本申请实施例中,可以通过人脸识别结果进行身份建档,将属于同一用户身份的行为轨迹数据进行关联,而从各视频采集装置的连续的行为视频流中进行识别处理时,同一用户身份的行为轨迹数据可能有多个,例如多个视频采集装置均拍摄到了该用户在某区域的行为视频,则在后续对任务请求进行处理时,可以筛选出质量较高的行为轨迹数据进行处理,不仅可以提高计算准确性,还可以降低计算量。
可知,一般行为轨迹取筛选出的质量从高到低排列的前N个,即TOPN,TOPN越大,GPU占用越多,CV微服务处理也越耗时,因此当CV微服务调用失败率过高或GPU利用率过高,则可以降低选取的TOPN中N的大小。
3)按照实时任务类型的处理优先级大于非实时任务类型的处理优先级的处理顺序,处理各任务请求。
即当GPU资源紧张或CV微服务处理持续失败时,可以优先处理实时任务,对于非实时任务可以先缓存,这样可以保证实时任务请求的处理效果。
第二种情况:若确定CV微服务调用失败率小于第二比例阈值或GPU利用率小于第三比例阈值时,或者,CV微服务调用失败率小于第二比例阈值并且GPU利用率小于第三比例阈值时,则执行以下至少一种操作:
1)增大处理各任务请求时的处理线程数阈值。
这样,若长时间GPU利用率较低,可以放松限流,适当增大线程数阈值,可以提高对消息队列中行为轨迹数据的消费,降低了消息队列的实时长度,端侧模块由此会感应到进而会触发生产者调度策略,以加快行为轨迹数据的生产。
2)增大同一身份标识对应的各行为轨迹数据的质量筛选出的数量。
进一步地,本申请实施例中后台服务模块还包括缓存数据库,例如为Redis数据库,引入了基于Redis数据库的缓存机制,具体地后台服务模块,还用于:将处理失败的任务请求缓存到Redis数据库,并在确定后台服务模块处于空闲状态时,再处理缓存到Redis数据库中的任务请求。
本申请实施例中,提供了一种业务处理控制系统,分别针对端侧模块、接入层模块和后台服务模块设计对应的调度策略,端侧模块根据网络传输性能,调整针对行为轨迹数据的第一处理策略,以适应网络传输性能,接入层模块根据后台服务模块的处理性能,调整将行为轨迹数据发送到消息队列的转发策略,后台服务模块根据后台服务模块的处理性能,调整根据行为轨迹数据处理关联的各任务请求的第二处理策略,以适应后台服务模块的处理性能,这样,通过各个模块对应的调度策略,可以实现任务请求的均匀化和平稳化处理,综合适应网络传输性能和后台服务模块的处理性能,使得系统整体资源利用率可以保持在一个高效利用状态,并且提高了系统的可用性和性能,并且通过各种调度策略和缓存组件,可以很好地保证数据不丢失和系统快速恢复,能够实现削峰填谷、负载均衡、缓存等,可以大大提高资源利用率和读写速度,可以适用于智慧零售商场场景,采用本申请实施例中的方案,可以实现一种更高可用、高可靠、高性能的智慧零售系统,最终实现智慧零售商场解决方案的稳健落地和推广,并且基于CV算法落地而设计的高可用、高性能的智慧零售系统,同样适用于当前各种主流的智慧安防、智慧社区、智慧交通、智慧教育、智慧零售等多种 CV 应用行业。
基于上述实施例,下面采用具体应用场景,对本申请实施例中业务处理控制系统中的整体调度策略进行说明,具体参阅图5所示,为本申请实施例中业务处理控制系统中整体调度策略原理示意图。
如图5所示,本申请实施例中针对端侧模块、接入层模块和后台服务模块,分别设计了相应的调度策略,具体地分为以下几部分:
第一部分:端侧模块,端侧模块主要是用于生产行为轨迹数据,因此端侧模块也可以称为生产者,对应的调度策略称为生产调度。
本申请实施例中,定义了实时和非实时任务概念,将行为轨迹数据划分为实时类型和非实时类型,相应地包括用于生产实时行为轨迹数据的实时生产者和用于生产非实时行为轨迹数据的非实时生产者。
端侧模块根据监控到的上报带宽压力和任务积压长度,动态调整行为轨迹数据的生产速度和数据量,并在带宽不足或任务积压长度过长时优先生产实时任务,其中,上报带宽压力由行为轨迹数据的上报失败率表征,任务积压长度由接入层模块的消息队列长度表征。
第二部分:接入层模块,对应的调度策略称为接入调度,接入层模块中设置消息队列,为对应端侧模块的实时生产者和非实时生产者,接入层模块中消息队列包括实时队列和非实时队列。
接入层模块根据后台服务模块的CV微服务调用失败率和GPU利用率,动态调整将行为轨迹数据发送到消息队列的转发策略,进而可以控制消息队列长度。
第三部分:后台服务模块,后台服务模块主要是用于根据行为轨迹数据处理各任务请求,即不断消费行为轨迹数据,因此后台服务模块也可以称为消费者,对应的调度策略称为消费调度,并且对应端侧模块的实时生产者和非实时生产者,分为实时消费者和非实时消费者。
后台服务模块根据后台服务模块的CV微服务调用失败率和GPU利用率,调整根据行为轨迹数据处理各任务请求的处理策略,进一步地,后台服务模块还可以综合任务积压长度(即接入层模块的消息队列长度),来动态调整消费调度策略。
本申请实施例中,通过引入消息队列、缓存等组件以及生产者、接入层、消费者调度等策略,可以通过调度策略控制生产者生产、消费者消费速度等,并且可以大大提高资源利用率和系统可用性,助力智慧零售解决方案产业更加稳健发展,可以应用于智慧零售商场诸如大卖场、百货商场、购物中心等多种等商超场景,并且适用当前所有的私有、公有云部署环境下 CV 技术框架的落地实现,适用于当前主要的商场场景的更高效落地,实用性更广。
基于上述实施例,下面采用具体应用场景,对本申请实施例中业务处理控制系统中的端侧模块的调度策略进行说明,具体参阅图6所示,为本申请实施例中端侧模块的调度策略原理示意图。
参阅图6所示,端侧模块的调度策略主要包括:1)取流服务调度:例如包括解码模式和跳帧大小的取流参数调整。2)算法服务调度:包括算法一次处理数量的处理参数。3)上报服务调度:包括上报线程数和每个线程包含上报的行为轨迹数据的数量的上报参数。
其中,针对上报服务,本申请实施例中将行为轨迹数据根据任务重要性,分别实时类型和非实时类型,例如场轨迹设为实时类型,店轨迹设为非实时类型,优先保证上报场轨迹。例如,针对场轨迹,首先判断当前实时内存队列负载率,若大于第一负载阈值,即L1/V1>T1,其中L1为实时内存队列长度,V1为实时内存队列容量,T1为第一负载阈值,则说明当前上报压力较大,先把行为轨迹数据缓存到LEVELDB数据库,LEVELDB数据库判断行为轨迹数据是否过期,若确定过期则丢弃,可以避免无用数据上报占用资源,若确定未过期,则不断轮询判断是否L1/V1<T1,若确定小于第一负载阈值,则可以将缓存的行为轨迹数据上报。同样地,针对店轨迹过程类似,其中,L2为非实时内存队列长度,V2为非实时内存队列容量,T2为第二负载阈值,具体过程相同和场轨迹相同,这里就不再进行赘述了。
本申请实施例中,端侧模块可以根据上报失败率和接入层模块的消息队列长度,调整针对行为轨迹数据的处理策略,若上报失败率较多和消息队列长度过长中一个或全部满足,则可以利用上述取流参数、处理参数、上报参数降低生产者速度,若上报失败率较低和消息队列长度过短中一个或全部满足,可以调整上述取流参数、处理参数、上报参数提高生产者速度。
基于上述实施例,下面采用具体应用场景,对本申请实施例中业务处理控制系统中的接入层模块的调度策略进行说明,具体参阅图7所示,为本申请实施例中接入层模块的调度策略原理示意图。
本申请实施例中引入基于CONSUL的服务注册和发现组件,对接入层服务进行水平扩展,例如,如图7所示,以扩展了三个接入层模块为例,每个接入层模块主要用于进行消息过滤、消息分发和消息队列监测,具体地,过滤数据格式错误的行为轨迹数据,将行为轨迹数据分发到人脸后台或人体后台。
并且,本申请实施例中在发送到消息队列之前,引入了发送缓存机制,即每次发送给消息队列的行为轨迹数据由多个轨迹组成的batch,可以控制batch大小和batch发送间隔,具体地,根据后台服务模块的处理性能,调整将行为轨迹数据发送到消息队列的转发策略,并将消息队列中的行为轨迹数据发送给后台服务模块。
例如,如图7所示,场轨迹对应发送缓存机制的发送参数,包括每次发送数据量batch1和发送间隔t1,店轨迹对应发送缓存机制的发送参数,包括每次发送数据量batch2和发送间隔t2,若CV微服务调用持续失败或者GPU利用率过高,则可以降低batch大小和增大发送间隔,降低发送到消息队列的数据量和速度,反之可以增加batch大小和降低发送间隔来加快行为轨迹数据的发送。
基于上述实施例,下面采用具体应用场景,对本申请实施例中业务处理控制系统中的后台服务模块的调度策略进行说明,具体参阅图8所示,为本申请实施例中后台服务模块的调度策略原理示意图。
本申请实施例中后台服务模块可以从消息队列中获取行为轨迹数据,并根据第二处理策略以及行为轨迹数据,处理行为轨迹数据相关联的各任务请求,例如,后台服务模块中包括人脸后台服务和人体后台服务,人脸后台服务用于处理人脸轨迹数据,人体后台服务用于处理人体场轨迹数据和人体店轨迹数据,并且人脸后台服务和人体后台服务均设置调度策略,包括限流机制、任务请求处理、计算监控等。
后台服务模块可以根据监控到的后台服务模块的处理性能,调整第二处理策略,以适应后台服务模块的处理性能,例如,如果CV微服务长时间调用失败或GPU利用率过高,则可以加大限流机制和过滤更多轨迹抓拍保证整个系统可用。对于任务请求失败的缓存到REDIS后续再次请求处理;如果GPU利用率长时间较低,可以放松限流,这样提高了对消息队列的消费,降低了消息队列的实时长度,端侧模块监控到消息队列长度较短时进而可以触发生产者调度策略加快行为轨迹数据的生产。
基于上述实施例,下面对本申请实施例中的业务处理控制方法进行说明。
参阅图9所示,为本申请实施例中一种业务处理控制方法流程图,应用于端侧模块,具体该方法包括:
步骤900:根据第一处理策略获得行为视频流并根据行为视频流获得行为轨迹数据,将行为轨迹数据通过消息上报给接入层模块。
步骤910:根据网络传输性能调整第一处理策略。
其中,网络传输性能包括端侧模块和接入层模块之间的传输性能。
进一步地,本申请实施例中还可以参考接入层模块的消息队列长度,则本申请实施例中还提供了可能的实施方式:根据接入层模块的消息队列长度,调整第一处理策略。
其中,网络传输性能由行为轨迹数据的上报失败率表征,消息队列长度可以表征后台服务模块的处理性能,则执行步骤910时,具体包括以下两种情况:
第一种情况:若确定上报失败率大于等于第一比例阈值或消息队列长度大于等于长度阈值时,或者,确定上报失败率大于等于第一比例阈值并且消息队列长度大于等于长度阈值时,执行以下至少一种操作:调整处理行为轨迹数据的调度参数以降低获得行为轨迹数据的速度和数据量,调整向接入层模块上报行为轨迹数据的上报参数以降低上报行为轨迹数据的速度和数据量。
第二种情况:若确定上报失败率小于第一比例阈值或消息队列长度小于长度阈值时,或者,确定上报失败率小于第一比例阈值并且消息队列长度小于长度阈值时,则执行以下至少一种操作:调整调度参数以提高获得行为轨迹数据的速度和数据量,调整上报参数以提高上报行为轨迹数据的速度和数据量。
其中,调度参数包括以下任意一种或组合:获取行为视频流时的取流参数、获得行为轨迹数据时的处理参数。
取流参数包括获取行为视频流时的解码模式和跳帧大小,处理参数包括一次处理数量,上报参数包括上报线程数和每个线程包含上报的行为轨迹数据的数量。
当然,对于具体参数的选取,本申请实施例中并不进行限制,通过调整各参数,从而适应当前的网络传输性能和后台服务模块的处理性能。
参阅图10所示,为本申请实施例中另一种业务处理控制方法流程图,应用于接入层模块,具体该方法包括:
步骤1000:接收端侧模块上报的行为轨迹数据,其中,行为轨迹数据是端侧模块根据第一处理策略获得行为视频流并根据行为视频流获得并上报的,第一处理策略是端侧模块根据网络传输性能调整的。
步骤1010:根据转发策略将行为轨迹数据的消息保存到消息队列。
步骤1020:将消息队列中的行为轨迹数据转发给后台服务模块,以使后台服务模块接收接入层模块转发的行为轨迹数据,并根据第二处理策略以及行为轨迹数据,处理行为轨迹数据相关联的各任务请求,以及根据处理性能调整第二处理策略。
步骤1030:根据后台服务模块的处理性能调整转发策略。
其中,后台服务模块的处理性能由后台服务模块处理各任务请求时CV微服务调用失败率和GPU利用率中的一个或全部表征。
则执行步骤1030时,具体可以包括以下两种情况:
第一种情况:若确定CV微服务调用失败率大于第二比例阈值或GPU利用率大于第三比例阈值时,或者,确定CV微服务调用失败率大于第二比例阈值并且GPU利用率大于第三比例阈值时,则调整发送参数,以降低发送到消息队列的数据量。
第二种情况:若确定CV微服务调用失败率小于第二比例阈值或GPU利用率小于第三比例阈值时,或者,确定CV微服务调用失败率小于第二比例阈值并且GPU利用率小于第三比例阈值时,则调整发送参数,以增大发送到消息队列的数据量。
其中,发送参数包括以下一种或任意组合:发送到消息队列的发送间隔、每次发送数据量。
这样,在发送到消息队列之前,引入发送缓存机制,保证数据不丢失,并且通过调整各发送参数,可以控制发送到消息队列中的行为轨迹数据的数据量,从而适应后台服务模块的处理性能,提高资源利用率和处理性能。
参阅图11所示,为本申请实施例中另一种业务处理控制方法流程图,应用于后台服务模块,具体该方法包括:
步骤1100:接收接入层模块转发的行为轨迹数据,其中,行为轨迹数据是接入层模块接收到端侧模块上报的行为轨迹数据时,根据转发策略将行为轨迹数据的消息保存到消息队列后通过消息队列转发的,并转发策略是接入层模块根据后台服务模块的处理性能调整的。
步骤1110:根据第二处理策略以及行为轨迹数据,处理行为轨迹数据相关联的各任务请求。
其中,各任务请求可以是客户端请求的,例如客流量统计请求、各区域用户分布情况等,本申请实施例中并不进行限制。
步骤1120:根据处理性能调整第二处理策略。
其中,后台服务模块的处理性能由后台服务模块处理各任务请求时CV微服务调用失败率和GPU利用率中的一个或全部表征。
这样,通过其后台服务模块的处理性能,不断调整第二处理策略,可以更加适应当前的处理性能,提升资源利用率和可用性。
基于同一发明构思,本申请实施例中还提供了一种业务处理控制装置,该业务处理控制装置例如可以是前述实施例中的端侧模块,该业务处理控制装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图12所示,本申请实施例中一种业务处理控制装置,具体包括:
处理单元1200,用于根据第一处理策略获得行为视频流并根据所述行为视频流获得行为轨迹数据,将所述行为轨迹数据通过消息上报给接入层模块;
第一调整单元1210,用于根据网络传输性能调整所述第一处理策略。
基于同一发明构思,本申请实施例中还提供了另一种业务处理控制装置,该业务处理控制装置例如可以是前述实施例中的接入层模块,该业务处理控制装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图13所示,本申请实施例中另一种业务处理控制装置,具体包括:
接收单元1300,用于接收端侧模块上报的行为轨迹数据,其中,所述行为轨迹数据是所述端侧模块根据第一处理策略获得行为视频流并根据所述行为视频流获得并上报的,所述第一处理策略是所述端侧模块根据网络传输性能调整的;
保存单元1310,用于根据转发策略将所述行为轨迹数据的消息保存到消息队列;
转发单元1320,用于将所述消息队列中的行为轨迹数据转发给所述后台服务模块,以使所述后台服务模块接收接入层模块转发的所述行为轨迹数据,并根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求,以及根据处理性能调整所述第二处理策略;
第二调整单元1330,用于根据所述后台服务模块的处理性能调整所述转发策略。
基于同一发明构思,本申请实施例中还提供了另一种业务处理控制装置,该业务处理控制装置例如可以是前述实施例中的后台服务模块,该业务处理控制装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图14所示,本申请实施例中另一种业务处理控制装置,具体包括:
接收单元1400,用于接收接入层模块转发的行为轨迹数据,其中,所述行为轨迹数据是所述接入层模块接收到端侧模块上报的行为轨迹数据时,根据转发策略将所述行为轨迹数据的消息保存到消息队列后通过消息队列转发的,并所述转发策略是所述接入层模块根据后台服务模块的处理性能调整的;
处理单元1410,用于根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求;
第三调整单元1420,用于根据处理性能调整所述第二处理策略。
基于上述实施例,参阅图15所示为本申请实施例中电子设备的结构示意图。
本申请实施例提供了一种电子设备,该电子设备可以是前述实施例中的终端或服务器,该电子设备可以包括处理器1510(Center Processing Unit ,CPU)、存储器1520、输入设备1530和输出设备1540等。
存储器1520可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器1510提供存储器1520中存储的程序指令和数据。在本申请实施例中,存储器1520可以用于存储本申请实施例中任一种业务处理控制方法的程序。
处理器1510通过调用存储器1520存储的程序指令,处理器1510用于按照获得的程序指令执行本申请实施例中任一种业务处理控制方法。
基于上述实施例,本申请实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意方法实施例中的业务处理控制方法。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (15)
1.一种业务处理控制系统,其特征在于,包括端侧模块、多个接入层模块、后台服务模块,其中:
端侧模块,用于根据第一处理策略获得行为视频流并根据所述行为视频流获得行为轨迹数据,将所述行为轨迹数据通过消息上报给接入层模块,以及根据网络传输性能调整所述第一处理策略;
接入层模块,用于接收到端侧模块上报的行为轨迹数据时,根据转发策略将所述行为轨迹数据的消息保存到消息队列,并将所述消息队列中的行为轨迹数据转发给所述后台服务模块,以及根据所述后台服务模块的处理性能调整所述转发策略;并
所述后台服务模块,用于接收接入层模块转发的所述行为轨迹数据,并根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求,以及根据处理性能调整所述第二处理策略。
2.如权利要求1所述的系统,其特征在于,所述端侧模块,还用于:
根据所述接入层模块的消息队列长度,调整所述第一处理策略。
3.如权利要求2所述的系统,其特征在于,所述网络传输性能由行为轨迹数据的上报失败率表征,所述端侧模块,用于:
若确定所述上报失败率大于等于第一比例阈值和/或所述消息队列长度大于等于长度阈值时,执行以下至少一种操作:调整处理所述行为轨迹数据的调度参数以降低获得行为轨迹数据的速度和数据量,调整向接入层模块上报所述行为轨迹数据的上报参数以降低上报行为轨迹数据的速度和数据量;
若确定所述上报失败率小于第一比例阈值和/或所述消息队列长度小于长度阈值时,则执行以下至少一种操作:调整所述调度参数以提高获得行为轨迹数据的速度和数据量,调整所述上报参数以提高上报行为轨迹数据的速度和数据量。
4.如权利要求3所述的系统,其特征在于,所述调度参数包括以下任意一种或组合:获取行为视频流时的取流参数、获得行为轨迹数据时的处理参数。
5.如权利要求1-4任一项所述的系统,其特征在于,将所述行为轨迹数据通过消息上报给接入层模块时,所述端侧模块,用于:
若确定所述行为轨迹数据的数据类型属于预设实时类型,则确定实时内存队列的负载率小于第一负载阈值时,将所述行为轨迹数据通过消息上报给所述接入层模块;
若确定所述行为轨迹数据的数据类型属于预设非实时类型,则确定非实时内存队列的负载率小于第二负载阈值时,将所述行为轨迹数据通过消息上报给所述接入层模块,其中,所述第一负载阈值大于所述第二负载阈值。
6.如权利要求5所述的系统,其特征在于,所述端侧模块中还至少包括顺序读写数据库,所述端侧模块还用于:
若确定实时内存队列的负载率大于第一负载阈值,或确定非实时内存队列的负载率大于第二负载阈值,则将所述行为轨迹数据缓存到顺序读写数据库;
按照预设周期过滤掉顺序读写数据库中过期的行为轨迹数据,并在确定实时内存队列的负载率小于第一负载阈值,或非实时内存队列的负载率小于第二负载阈值时,将顺序读写数据库中的未过期的行为轨迹数据通过消息上报给所述接入层模块。
7.如权利要求1所述的系统,其特征在于,所述后台服务模块的处理性能由后台服务模块处理各任务请求时计算机视觉微服务调用失败率、图形处理器利用率中的一个或全部表征;
则所述接入层模块,用于:
若确定所述计算机视觉微服务调用失败率大于第二比例阈值和/或所述图形处理器利用率大于第三比例阈值时,则调整发送参数,以降低发送到消息队列的数据量;
若确定所述计算机视觉微服务调用失败率小于第二比例阈值和/或所述图形处理器利用率小于第三比例阈值时,则调整发送参数,以增大发送到消息队列的数据量。
8.如权利要求1所述的系统,其特征在于,所述后台服务模块的处理性能由后台服务模块处理各任务请求时计算机视觉微服务调用失败率和图形处理器利用率中的一个或全部表征;
则所述后台服务模块,用于:
若确定所述计算机视觉微服务调用失败率大于第二比例阈值和/或所述图形处理器利用率大于第三比例阈值时,则执行以下至少一种操作:
减小处理各任务请求时的处理线程数阈值,超过所述处理线程数阈值的任务请求进入阻塞等待状态;
降低同一身份标识对应的各行为轨迹数据的质量筛选出的数量;
按照实时任务类型的处理优先级大于非实时任务类型的处理优先级的处理顺序,处理各任务请求;
若确定所述计算机视觉微服务调用失败率小于第二比例阈值和/或所述图形处理器利用率小于第三比例阈值时,则执行以下至少一种操作:
增大处理各任务请求时的处理线程数阈值、增大同一身份标识对应的各行为轨迹数据的质量筛选出的数量。
9.如权利要求1或8所述的系统,其特征在于,所述后台服务模块,还用于:
将处理失败的任务请求缓存到缓存数据库,并在确定所述后台服务模块处于空闲状态时,再处理缓存到所述缓存数据库中的任务请求。
10.一种业务处理控制方法,其特征在于,包括:
接收端侧模块上报的行为轨迹数据,其中,所述行为轨迹数据是所述端侧模块根据第一处理策略获得行为视频流并根据所述行为视频流获得并上报的,所述第一处理策略是所述端侧模块根据网络传输性能调整的;
根据转发策略将所述行为轨迹数据的消息保存到消息队列;
将所述消息队列中的行为轨迹数据转发给所述后台服务模块,以使所述后台服务模块接收接入层模块转发的所述行为轨迹数据,并根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求,以及根据处理性能调整所述第二处理策略;
根据所述后台服务模块的处理性能调整所述转发策略。
11.一种业务处理控制方法,其特征在于,包括:
接收接入层模块转发的行为轨迹数据,其中,所述行为轨迹数据是所述接入层模块接收到端侧模块上报的行为轨迹数据时,根据转发策略将所述行为轨迹数据的消息保存到消息队列后通过消息队列转发的,并所述转发策略是所述接入层模块根据后台服务模块的处理性能调整的;
根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求;
根据处理性能调整所述第二处理策略。
12.一种业务处理控制装置,其特征在于,包括:
接收单元,用于接收端侧模块上报的行为轨迹数据,其中,所述行为轨迹数据是所述端侧模块根据第一处理策略获得行为视频流并根据所述行为视频流获得并上报的,所述第一处理策略是所述端侧模块根据网络传输性能调整的;
保存单元,用于根据转发策略将所述行为轨迹数据的消息保存到消息队列;
转发单元,用于将所述消息队列中的行为轨迹数据转发给所述后台服务模块,以使所述后台服务模块接收接入层模块转发的所述行为轨迹数据,并根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求,以及根据处理性能调整所述第二处理策略;
第二调整单元,用于根据所述后台服务模块的处理性能调整所述转发策略。
13.一种业务处理控制装置,其特征在于,包括:
接收单元,用于接收接入层模块转发的行为轨迹数据,其中,所述行为轨迹数据是所述接入层模块接收到端侧模块上报的行为轨迹数据时,根据转发策略将所述行为轨迹数据的消息保存到消息队列后通过消息队列转发的,并所述转发策略是所述接入层模块根据后台服务模块的处理性能调整的;
处理单元,用于根据第二处理策略以及所述行为轨迹数据,处理所述行为轨迹数据相关联的各任务请求;
第三调整单元,用于根据处理性能调整所述第二处理策略。
14.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求10-11任一项所述方法的步骤。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求10-11任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010586850.XA CN111479095B (zh) | 2020-06-24 | 2020-06-24 | 一种业务处理控制系统、方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010586850.XA CN111479095B (zh) | 2020-06-24 | 2020-06-24 | 一种业务处理控制系统、方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111479095A true CN111479095A (zh) | 2020-07-31 |
CN111479095B CN111479095B (zh) | 2020-10-02 |
Family
ID=71764030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010586850.XA Active CN111479095B (zh) | 2020-06-24 | 2020-06-24 | 一种业务处理控制系统、方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111479095B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112533012A (zh) * | 2020-11-25 | 2021-03-19 | 北京达佳互联信息技术有限公司 | 一种直播间互动信息方法和装置 |
CN112764937A (zh) * | 2021-01-29 | 2021-05-07 | 中国平安人寿保险股份有限公司 | 访问量控制方法、装置、计算机设备及存储介质 |
CN113438116A (zh) * | 2021-07-01 | 2021-09-24 | 国网山东省电力公司博兴县供电公司 | 一种电力通讯数据管理系统及方法 |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1842019A (zh) * | 2005-03-28 | 2006-10-04 | 华为技术有限公司 | 一种业务带宽动态控制方法 |
CN101626499A (zh) * | 2009-08-21 | 2010-01-13 | 杭州华三通信技术有限公司 | 数据存储方法和系统 |
CN101695022A (zh) * | 2009-11-02 | 2010-04-14 | 杭州华三通信技术有限公司 | 一种服务质量管理方法及装置 |
CN101729592A (zh) * | 2008-10-29 | 2010-06-09 | 中国移动通信集团公司 | 一种分布式通信网络、设备及通信网络分离方法 |
CN101753985A (zh) * | 2008-11-27 | 2010-06-23 | 北京中星微电子有限公司 | 视频监控系统及该系统中的媒体流传输控制装置和方法 |
CN101976385A (zh) * | 2010-10-18 | 2011-02-16 | 中科院成都信息技术有限公司 | 加气站管理系统 |
TW201320746A (zh) * | 2011-11-08 | 2013-05-16 | Chunghwa Telecom Co Ltd | 視訊連線系統及方法 |
CN103139251A (zh) * | 2011-11-29 | 2013-06-05 | 神州数码信息系统有限公司 | 一种城市级数据共享交换平台技术的方法 |
CN103517155A (zh) * | 2013-10-15 | 2014-01-15 | 浙江宇视科技有限公司 | 一种基于监控业务的流量动态控制的方法及装置 |
CN103780869A (zh) * | 2014-01-20 | 2014-05-07 | 五八同城信息技术有限公司 | 一种视频会话中动态调整视频传输效率的方法 |
CN103997623A (zh) * | 2014-05-06 | 2014-08-20 | 四川长虹电器股份有限公司 | 基于p2p技术的视频监控方法 |
CN105187483A (zh) * | 2015-07-29 | 2015-12-23 | 北京中油瑞飞信息技术有限责任公司 | 分配云计算资源的方法及装置 |
CN105516672A (zh) * | 2015-12-17 | 2016-04-20 | 四川物联亿达科技有限公司 | 一种基于物联传感云的实时流媒体播放系统及方法 |
US20170078626A1 (en) * | 2015-09-16 | 2017-03-16 | Microsoft Technology Licensing, Llc | Bandwidth efficient video surveillance system |
CN107547545A (zh) * | 2017-09-05 | 2018-01-05 | 北京原力创新科技有限公司 | 视频云平台系统、视频请求处理方法及存储介质、处理器 |
CN108667719A (zh) * | 2018-04-26 | 2018-10-16 | 广州品唯软件有限公司 | 一种实时消息传递方法及系统 |
CN109787913A (zh) * | 2019-03-15 | 2019-05-21 | 北京工业大学 | 一种基于sdn的数据中心网络动态负载均衡方法 |
CN109936721A (zh) * | 2017-12-18 | 2019-06-25 | 航天信息股份有限公司 | 监控系统 |
CN110213652A (zh) * | 2018-04-13 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种音视频数据传输方法、装置及存储介质 |
CN209731454U (zh) * | 2019-04-17 | 2019-12-03 | 深装总建设集团股份有限公司 | 一种分布式智能报警监控系统 |
CN111083535A (zh) * | 2019-12-26 | 2020-04-28 | 天翼物联科技有限公司 | 视频数据传输码率自适应方法、系统、装置和存储介质 |
-
2020
- 2020-06-24 CN CN202010586850.XA patent/CN111479095B/zh active Active
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1842019A (zh) * | 2005-03-28 | 2006-10-04 | 华为技术有限公司 | 一种业务带宽动态控制方法 |
CN101729592A (zh) * | 2008-10-29 | 2010-06-09 | 中国移动通信集团公司 | 一种分布式通信网络、设备及通信网络分离方法 |
CN101753985A (zh) * | 2008-11-27 | 2010-06-23 | 北京中星微电子有限公司 | 视频监控系统及该系统中的媒体流传输控制装置和方法 |
CN101626499A (zh) * | 2009-08-21 | 2010-01-13 | 杭州华三通信技术有限公司 | 数据存储方法和系统 |
CN101695022A (zh) * | 2009-11-02 | 2010-04-14 | 杭州华三通信技术有限公司 | 一种服务质量管理方法及装置 |
CN101976385A (zh) * | 2010-10-18 | 2011-02-16 | 中科院成都信息技术有限公司 | 加气站管理系统 |
TW201320746A (zh) * | 2011-11-08 | 2013-05-16 | Chunghwa Telecom Co Ltd | 視訊連線系統及方法 |
CN103139251A (zh) * | 2011-11-29 | 2013-06-05 | 神州数码信息系统有限公司 | 一种城市级数据共享交换平台技术的方法 |
CN103517155A (zh) * | 2013-10-15 | 2014-01-15 | 浙江宇视科技有限公司 | 一种基于监控业务的流量动态控制的方法及装置 |
CN103780869A (zh) * | 2014-01-20 | 2014-05-07 | 五八同城信息技术有限公司 | 一种视频会话中动态调整视频传输效率的方法 |
CN103997623A (zh) * | 2014-05-06 | 2014-08-20 | 四川长虹电器股份有限公司 | 基于p2p技术的视频监控方法 |
CN105187483A (zh) * | 2015-07-29 | 2015-12-23 | 北京中油瑞飞信息技术有限责任公司 | 分配云计算资源的方法及装置 |
US20170078626A1 (en) * | 2015-09-16 | 2017-03-16 | Microsoft Technology Licensing, Llc | Bandwidth efficient video surveillance system |
US10616465B2 (en) * | 2015-09-16 | 2020-04-07 | Microsoft Technology Licensing, Llc | Bandwidth efficient video surveillance system |
CN105516672A (zh) * | 2015-12-17 | 2016-04-20 | 四川物联亿达科技有限公司 | 一种基于物联传感云的实时流媒体播放系统及方法 |
CN107547545A (zh) * | 2017-09-05 | 2018-01-05 | 北京原力创新科技有限公司 | 视频云平台系统、视频请求处理方法及存储介质、处理器 |
CN109936721A (zh) * | 2017-12-18 | 2019-06-25 | 航天信息股份有限公司 | 监控系统 |
CN110213652A (zh) * | 2018-04-13 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种音视频数据传输方法、装置及存储介质 |
CN108667719A (zh) * | 2018-04-26 | 2018-10-16 | 广州品唯软件有限公司 | 一种实时消息传递方法及系统 |
CN109787913A (zh) * | 2019-03-15 | 2019-05-21 | 北京工业大学 | 一种基于sdn的数据中心网络动态负载均衡方法 |
CN209731454U (zh) * | 2019-04-17 | 2019-12-03 | 深装总建设集团股份有限公司 | 一种分布式智能报警监控系统 |
CN111083535A (zh) * | 2019-12-26 | 2020-04-28 | 天翼物联科技有限公司 | 视频数据传输码率自适应方法、系统、装置和存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112533012A (zh) * | 2020-11-25 | 2021-03-19 | 北京达佳互联信息技术有限公司 | 一种直播间互动信息方法和装置 |
CN112533012B (zh) * | 2020-11-25 | 2023-07-04 | 北京达佳互联信息技术有限公司 | 直播间互动信息的传输方法、装置、设备和存储介质 |
CN112764937A (zh) * | 2021-01-29 | 2021-05-07 | 中国平安人寿保险股份有限公司 | 访问量控制方法、装置、计算机设备及存储介质 |
CN112764937B (zh) * | 2021-01-29 | 2022-04-15 | 中国平安人寿保险股份有限公司 | 访问量控制方法、装置、计算机设备及存储介质 |
CN113438116A (zh) * | 2021-07-01 | 2021-09-24 | 国网山东省电力公司博兴县供电公司 | 一种电力通讯数据管理系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111479095B (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111479095B (zh) | 一种业务处理控制系统、方法及装置 | |
US11558270B2 (en) | Monitoring a stale data queue for deletion events | |
US7076553B2 (en) | Method and apparatus for real-time parallel delivery of segments of a large payload file | |
Ali et al. | RES: Real-time video stream analytics using edge enhanced clouds | |
CN109918184B (zh) | 图片处理系统、方法及相关装置和设备 | |
CN111459986B (zh) | 数据计算系统及方法 | |
US10419528B2 (en) | Dynamically instantiating and terminating data queues | |
CN107515784B (zh) | 一种在分布式系统中计算资源的方法与设备 | |
CN113220715B (zh) | 一种数据处理方法、系统、计算机及可读存储介质 | |
US10599529B2 (en) | Instantiating data queues for management of remote data stores | |
CN105955807B (zh) | 一种任务处理系统及方法 | |
CN111277848B (zh) | 直播间互动消息的处理方法、装置、电子设备及存储介质 | |
CN109062697A (zh) | 一种提供空间分析服务的方法和装置 | |
CN116980569A (zh) | 一种基于云计算的安全监控系统及方法 | |
CN111935663B (zh) | 传感器数据流的处理方法、装置、介质及电子设备 | |
CN110740293A (zh) | 一种数据传输方法、系统、装置及计算机存储介质 | |
Jang et al. | Microservice-based Edge Device Architecture for Video Analytics. | |
US11113287B1 (en) | Data stream management system | |
WO2019182659A1 (en) | System and method for querying and updating a live video stream using a structured query language | |
CN112416368A (zh) | 缓存部署与任务调度方法、终端和计算机可读存储介质 | |
CN111090818B (zh) | 资源管理方法、资源管理系统、服务器及计算机存储介质 | |
CN111984393A (zh) | 分布式大规模实时数据调度引擎系统及其数据调度方法 | |
CN107870816B (zh) | 一种用于图像处理和存储的方法及装置 | |
CN113986505A (zh) | 一种任务调度方法、系统及存储介质和终端设备 | |
CN114298295A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40025950 Country of ref document: HK |