CN111031105B - 自动驾驶中消息频率的统计方法、装置、设备及存储介质 - Google Patents
自动驾驶中消息频率的统计方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111031105B CN111031105B CN201911174489.3A CN201911174489A CN111031105B CN 111031105 B CN111031105 B CN 111031105B CN 201911174489 A CN201911174489 A CN 201911174489A CN 111031105 B CN111031105 B CN 111031105B
- Authority
- CN
- China
- Prior art keywords
- message
- frequency
- sending module
- module
- message sending
- 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.)
- Active
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/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种消息频率的统计方法、装置、电子设备及存储介质,涉及信息流技术领域,可用于自动驾驶的操作系统。具体实现方案为:消息频率的统计方法由消息频率的统计装置执行,消息频率的统计装置设置在一进程中;消息频率的统计装置在收到预先订阅的与消息频率的统计装置位于同进程中的消息发送模块发送的多个消息的过程中,记录多个消息的多个接收时刻;根据在预设时间长度内的多个接收时刻,统计消息发送模块发送消息的频率。本申请能够克服现有技术中频率统计不准确的技术问题,由于本申请的频率统计发生在同一进程间,不存在跨进程的通信时延,能够有效地提高消息发送模块发送消息的频率统计的准确性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及信息流的处理,具体涉及一种消息频率的统计方法、装置、电子设备及存储介质,可用于自动驾驶的操作系统。
背景技术
在自动驾驶系统中,如传感器模块、障碍物识别模块、规划模块等等具有消息传输关系的相邻两个模块之间的通信是通过发布和订阅topic(即消息数据)的方式来实现的,每个模块的topic发布也是有周期性的,如果某个模块出现异常有可能导致该模块的topic的发布频率输出异常。因此,模块的topic的发布频率的统计是一项非常重要的工作,工作人员可以基于模块的topic的发布频率,可以预测该模块是否正常。
但是,现有技术中提供的各种模块的消息频率的统计方案,统计的频率都不够精准,亟需提供一种能够准确统计消息的频率的方案。
发明内容
为了解决上述技术问题,本申请提供一种消息频率的统计方法、装置、电子设备及存储介质,用于提供一种能够准确统计频率技术方案。
一方面,本申请提供一种消息频率的统计方法,所述方法由消息频率的统计装置执行,所述消息频率的统计装置设置在一进程中,所述方法包括:
在收到预先订阅的与所述消息频率的统计装置位于同进程中的消息发送模块的多个发送所述消息的过程中时,记录所述多个消息的多个接收所述消息的发送时刻;
根据在预设时间长度内的所述多个接收时刻,统计所述消息发送模块发送消息的频率。
进一步可选地,如上所述的方法中,在收到预先订阅的与所述频率统计装置位于同进程中的消息发送模块发送的多个消息之前,所述方法还包括:
根据所述进程的进程标识,确定所述消息发送模块的模块标识;
向消息管理模块发送对所述消息发送模块发送的消息的订阅请求,所述订阅请求包括所述模块标识。
进一步可选地,如上所述的方法中,在统计所述消息发送模块发送的消息的频率之后,所述方法还包括:
根据所述消息发送模块发送消息的频率和预设的频率阈值,检测对应的所述消息发送模块是否异常。
进一步可选地,如上所述的方法中,在统计所述消息发送模块发送消息的频率之后,所述方法还包括:
接收频率请求端发送的消息频率请求;
向所述频率请求端发送所述消息发送模块发送所述消息发送模块发送消息的频率,所述消息发送模块发送消息的频率指示所述消息发送模块是否异常。
另一方面,本申请还提供了一种消息频率的统计装置,所述消息频率的统计装置设置在一进程中,所述装置包括:
记录模块,用于在收到预先订阅的与所述消息频率的统计装置位于同进程中的消息发送模块发送的多个消息的过程中,记录所述多个消息的多个接收时刻;
统计模块,用于根据在预设时间长度内的所述多个接收时刻,统计所述消息发送模块发送消息的频率。
再一方面,本申请还提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上任一项所述的方法。
又一方面,本申请还提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如上任一项所述的方法。
上述申请中的一个实施例具有如下优点或有益效果:设置在一进程中的消息频率的统计装置,通过在收到预先订阅的与消息频率的统计装置位于同进程中的消息发送模块发送的多个消息的过程中,记录多个消息的多个接收时刻;根据在预设时间长度内的多个接收时刻,统计消息发送模块发送消息的频率,能够克服现有技术中频率统计不准确的技术问题,由于本申请实施例的频率统计发生在同一进程间,不存在跨进程的通信时延,能够有效地提高消息发送模块发送消息的频率统计的准确性。
进一步地,本申请的技术方案,还能够基于统计的频率,检测消息发送模块是否异常,能够自动地对消息发送模块是否异常进行有效检测,同时还能够有效地扩展频率统计的功能及应用。
进一步地,本申请的技术方案,还能够根据频率请求段的消息频率请求,向频率请求段返回预先统计好的消息发送模块发送消息的频率,不用在接收到消息频率请求后,再计算消息发送模块发送消息的频率,能够有效地保证返回的频率的准确性。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例的示意图;
图2是根据本申请第二实施例的示意图;
图3是根据本申请第三实施例的示意图;
图4是用来实现本申请实施例的频率统计方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1为本申请的频率统计方法一实施例的流程图。如图1所示,本实施例的消息频率的统计方法,所述方法由消息频率的统计装置执行,该消息频率的统计装置设置在一进程中,所述方法具体可以包括如下步骤:
S101、在收到预先订阅的与频率统计装置位于同进程中的消息发送模块发送的多个消息的过程中,记录多个消息的多个接收时刻;
S102、根据在预设时间长度内的多个接收时刻,统计消息发送模块发送消息的频率。
即,本实施例的消息频率的统计方法的执行主体为消息频率的统计装置,该消息频率的统计装置与要统计的频率的消息发送模块设置在同一个进程中,以对同进程中的消息发送模块发送消息的频率进行统计。
本实施例的消息频率的统计方法可以用于对信息流中任何两个具有信息交互的模块中任一模块发送消息的频率进行统计。
可选地,本实施例的消息频率的统计装置可以为一个应用集成的软件模块,也可以扩展为一个电子实体,用于对业务上处于同进程中的消息发送模块进行监控。
本申请实施例中,也可以采用一个独立的消息频率的统计模块来实现可以跨进程的对任意其他进程中的消息的频率进行统计,例如,若消息频率的统计模块设置在第一个进程中,当统计第二个进程中的消息发送模块的频率时,第二进程的消息发送模块发布topic消息数据时,topic消息数据从第二进程到第一进程中的消息频率的统计模块属于跨进程的操作,存在时延,这样第一进程中的消息频率的统计模块记录第二进程中的消息发送模块发布topic消息数据的时刻本身就不够准确。另外,在其他模块需要该消息发送模块的频率时,可能也是跨进程向第一进程中的消息频率的统计模块请求第二进程中的消息发送模块的频率,该请求本身也存在通信时延,第一进程的消息频率的统计模块获取到该请求后,才开始基于当前的时刻统计第二进程中的消息发送模块的频率,便会导致消息发送模块发送消息的频率统计准确度不高。
为了进一步提高消息频率统计的准确性,本实施例中,可以在每个进程中设置一个消息频率的统计装置,以对同进程中的消息发送模块发送的消息的频率进行统计。由于同进程中的信息处理的优先级是最高的,远大于跨进程的信息通信,这样可以有效地缩短时延,提高频率统计的准确性。
具体地,本实施例中,需要预先订阅同进程中的消息发送模块的消息,这样,消息发送模块在发送消息时,该消息频率的统计装置才能够接收到订阅的消息,这样才能记录消息的接收时刻。也就是说,本实施例的消息频率的统计装置虽然订阅了同进程中的消息发送模块的消息,但是并不保存消息发送模块的消息,仅仅记录接收到消息发送模块发送的消息的接收时刻。
另外,本实施例中,以统计所采用时长为预设时间长度为例,消息频率的统计装置在收到预先订阅的、位于同进程中的消息发送模块在预设时间长度内、发送的多个消息的过程中,记录多个消息的多个接收时刻,即每个消息对应一个接收时刻。由于在同一个进程中,消息频率的统计装置接收到每个消息的接收时刻与消息发送模块发送该消息的发送时刻的时间差非常小,因此,本实施例中,可以根据预设时间长度内、接收到消息发送模块发送的多个消息的多个接收时刻,统计该消息发送模块发送消息的频率。例如,具体可以采用预设时间长度内发送消息的数量除以预设时间长度,便可以得到相应的消息发送模块发送消息的频率。
本实施例的预设时间长度可以根据实际应用中的具体场景需求来设置。例如,可以为30s、1min或者其他时间长度。例如,在对频率要求不精准的场景中,可以设置较长的预设时间长度,在对频率要求非常精准地场景中,可以设置相对较短的预设时间长度。
可选地,在进程外,设置有消息管理模块,用于对各个进程中的消息发送模块进行管理,具体记录有多个进程中的多个消息发送模块的信息。实际应用中,可以在该消息管理模块中订阅消息发送模块的消息,如当前的频率统计装置所在进程的ID为“10”,可以在消息管理模块中订阅所属的进程ID为“10”的消息发送模块的消息。具体实现时,消息频率的统计装置可以根据进程的进程标识,确定要订阅的消息发送模块的模块标识,然后向详细管理模块发送对该消息发送模块发送的消息的订阅请求,即该订阅请求中携带消息发送模块的标识。这样,在消息管理模块中建立该消息频率的统计装置与同进程中的消息发送模块的订阅关系,并通知同进程中的消息发送模块,该消息频率的统计装置订阅了其消息。这样,当同进程的该消息发送模块发送消息数据时,除了将消息发送给发送端,还需要根据该订阅关系,发送给频率统计装置一份。该消息频率的统计装置可以接收到并及时记录接收到消息发送模块发送的消息的接收时刻,由于这些操作在同进程内完成,时延非常小,本实施例中,消息频率的统计装置记录的接收到消息发送模块发送的消息的接收时刻非常准确,进而后续更加准确地统计消息发送模块发送消息的频率。
另外,本实施例中,可以在未接收到外部的频率请求时,按照本实施例的方式实时地统计消息发送模块的频率,在外部需要频率时,直接获取,并返回。这样统计得到的频率不用根据接收到频率请求的时刻,向前取预设时间长度,来统计消息发送模块的频率,以保证统计的频率不受频率请求时延的影响,统计的频率是非常精准的,能够准确地反应消息发送模块发送消息的情况。
本实施例的频率统计方法,设置在进程中的频率统计装置通过在收到预先订阅的同进程中的消息发送模块发送的多个消息的过程中,记录多个消息的多个接收时刻;根据在预设时间长度内的多个接收时刻,统计消息发送模块发送消息的频率,能够克服现有技术中频率统计不准确的技术问题,由于本实施例的频率统计发生在同一进程间,不存在跨进程的通信时延,能够有效地提高消息发送模块发送消息的频率统计的准确性。
图2为本申请的消息频率的统计方法另一实施例的流程图。如图2所示,本实施例的消息频率的统计方法在上述图1所示实施例的基础上,以同一个进程中包括多个消息发送模块为例,来详细介绍本发明的技术方案。如图2所示,本实施例的消息频率的统计方法,具体可以包括如下步骤:
S201、根据当前所在的进程标识,从消息管理模块中订阅属于同进程的消息发送模块发送的消息;
例如,本实施例的消息管理模块中存储的信息可以包括如下表1的内容:
表1
例如,具体在订阅时,可以由消息频率的统计装置先根据自己所在的进程的标识,结合上述表1,确定要订阅的消息发送模块的标识;然后向消息管理模块发送携带要订阅的消息发送模块的标识的订阅请求,由消息管理模块建立该消息频率的统计装置与要订阅的消息发送模块的订阅关系,如该订阅关系采用消息频率的统计装置的标识与消息发送模块的标识之间的订阅关系来标识。而且,该消息管理模块还需要通知消息发送模块该订阅关系,以便于消息发送模块在发送消息时,可以将该消息同时发送给订阅的消息频率的统计装置。
本实施例的频率统计方法,与上述图1的不同在于:本实施例中以同一个进程中包括多个消息发送模块为例,分别订阅每个消息发送模块的消息,以对每个消息发送模块的频率进行统计。或者实际应用中,即使同一个进程中包括有多个消息发送模块,频率统计装置也可以仅订阅其中部分需要重点关注的消息发送模块的消息。该种情况下的订阅,可以需要外部参与选择,例如由工作人员输入同进程中需要订阅的部分消息发送模块的标识,或者输入消息发送模块的哪些特征,然后基于消息发送模块的特征来与同进程中的频率统计装置建立订阅关系。此时,对应地,需要在消息管理模块中记录每个消息发送模块的特征等信息。
S202、在收到订阅的同进程的各个消息发送模块发送的各个的消息过程中,在各消息发送模块对应的消息时间缓存中记录接收到该消息发送模块发送的各个消息的接收时刻;
本实施例中,同进程中包括多个消息发送模块,可以为每个消息发送模块配置一个消息时间缓存buffer,用于记录接收到对应的消息发送模块发送的消息的接收时刻,以保证接收到的不同的消息发送模块的发送的消息的接收时刻不会混淆记录在一起。
S203、对于各个消息发送模块,基于相应的消息时间缓存中记录的所有的消息的接收时刻,将预设时间长度内的接收次数除以预设时间长度,得到对应的消息发送模块的发送消息的频率;
本实施例的消息频率的统计装置具体可以通过在同进程中创建一个服务,来计算各消息发送模块对应的消息的发送频率,作为该消息发送模块的频率即工作频率。
S204、对于各个消息发送模块,根据消息的频率和预设的频率阈值,检测对应的消息发送模块是否异常。
对于通信链路中,大部分模块都需要和其他模块进行消息交互,如消息发送和消息接收。本实施例中,消息发送模块发送消息的频率,从一定程度上也能够代表该消息发送模块的工作频率。如果工作频率出现异常,则可以认为该消息发送模块出现异常。本实施例中可以通过对发送消息的频率进行监控,以判断相应的消息发送模块是否异常。对于不同的消息发送模块,可以基于其工作机制,设置不同的频率阈值。本实施例中,消息频率的统计装置还可以检测各消息发送模块发送消息的频率是否低于对应的预设频率阈值,若低于,则认为该消息发送模块存在异常,若大于或者等于该预设频率阈值,则认为该消息发送模块正常。
实际应用中,当某个频率请求端有频率请求时,向该频率统计装置发送频率请求,该频率统计装置将统计得到的频率反馈给频率请求端,这样就可以避免现有技术所述的不同进程间通信的时延,进而提高频率的准确性。例如,此时包括的技术方案具体可以包括如下步骤:
(a)接收频率请求端发送的消息频率请求;
(b)向频率请求端发送消息发送模块发送消息的频率,消息发送模块发送消息的频率指示消息发送模块是否异常,这样,可以供频率请求端根据消息的频率和预设的频率阈值,检测对应的消息发送模块是否异常,详细参考上述消息频率的统计装置侧的相关记载,在此不再赘述。
需要说明的是,向频率请求端返回的消息发送模块发送消息的频率是当前时刻最新的消息发送模块发送消息的频率。也就是说,频率统计装置一直在实时统计消息的频率,当接收到消息频率请求时,仅获取当前时刻对应的消息发送模块的消息的频率,即消息发送模块的消息的最新的频率,而不用获取该消息发送模块的历史的消息频率。
需要说明的是,若该进程中仅存在一个消息发送模块,该频率统计装置仅统计一个消息发送模块可以按照上述实施例来实现。而若进程中包括有多个消息发送模块,此时可以按照上述实施例的实现方式将每个消息发送模块的消息的频率都发送给频率请求端。或者如果频率请求端仅想要请求某个消息发送模块的消息的频率时,可以在消息频率请求中携带该消息发送模块的标识。对应地,频率统计装置获取该消息发送模块的标识对应的最新的消息的频率,并返回给频率请求端,以供频率请求端可以根据该消息的频率和预设的频率阈值,检测该消息发送模块是否异常。或者也可以根据该消息发送模块的消息的频率,进行其他业务处理,在此不再一一举例赘述。
本实施例的消息频率的统计方法,可以应用于自动驾驶领域中,用于对传感器模块、障碍物识别模块、规划模块等等具有消息传输关系的每个模块的消息发送频率进行检测,并进一步基于频率检测对应的模块是否异常。
本实施例的消息频率的统计方法,通过采用上述技术方案,设置在进程中的消息频率的统计装置,可以对同一进程中的多个消息发送模块中每个消息发送模块发送消息的频率进行统计,能够克服现有技术中频率统计不准确的问题,也能够避免跨进程的通信时延,提高消息发送模块发送消息的频率统计的准确性。而且本实施例中,还能够基于统计的频率,检测消息发送模块是否异常,能够自动地对消息发送模块是否异常进行有效检测,同时还能够有效地扩展频率统计的功能及应用。
而且,本实施例中还能够根据频率请求段的消息频率请求,向频率请求段返回预先统计好的消息发送模块发送消息的频率,不用在接收到消息频率请求后,再计算消息发送模块发送消息的频率,能够有效地保证返回的频率的准确性。
图3为本发明的消息频率的统计装置实施例的结构图。如图3所示,本实施例的消息频率的统计装置300,该消息频率的统计装置设置在一进程中,所述装置包括:
记录模块301用于在收到预先订阅的与消息频率的统计装置位于同进程中的消息发送模块发送的多个消息的过程中,记录多个消息的多个接收时刻;
统计模块302用于根据在预设时间长度内的多个接收时刻,统计消息发送模块发送消息的频率。
进一步可选地,如图3所示,本实施例的频率统计装置300中,还包括:确定模块303,用于根据进程的进程标识,确定消息发送模块的模块标识;
发送模块304用于向消息管理模块发送对消息发送模块发送的消息的订阅请求,订阅请求包括模块标识。
进一步可选地,如图3所示,本实施例的频率统计装置300中,还包括:
检测模块305用于根据消息发送模块发送消息的频率和预设的频率阈值,检测消息发送模块是否异常。
进一步可选地,如图3所示,本实施例的频率统计装置300中,还包括:
接收模块306用于接收频率请求端发送的消息频率请求;
发送模块304用于向频率请求端发送消息发送模块发送消息发送模块发送消息的频率;消息发送模块发送消息的频率指示消息发送模块是否异常。
本实施例的频率统计装置,通过采用上述模块实现频率统计的实现原理以及技术效果与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图4所示,是根据本申请实施例的频率统计方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图4所示,该电子设备包括:一个或多个处理器401、存储器402,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图4中以一个处理器401为例。
存储器402即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的频率统计方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的频率统计方法。
存储器402作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的频率统计方法对应的程序指令/模块(例如,附图3所示的相关模块)。处理器401通过运行存储在存储器402中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的频率统计方法。
存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据频率统计方法的电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至频率统计方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
频率统计方法的电子设备还可以包括:输入装置403和输出装置404。处理器401、存储器402、输入装置403和输出装置404可以通过总线或者其他方式连接,图4中以通过总线连接为例。
输入装置403可接收输入的数字或字符信息,以及产生与XXX的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置404可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,通过在预先订阅的同进程的消息发送模块发送消息时,记录消息的发送时刻;根据消息在预设时间长度内的多个发送时刻,统计消息的频率,能够克服现有技术中频率统计不准确的技术问题,由于本申请实施例的频率统计发生在同一进程间,不存在跨进程的通信时延,能够有效地提高频率统计的准确性。
根据本申请实施例的技术方案,还可以对同一进程中的多个消息发送模块中每个消息发送模块的频率进行统计,且能够有效地保证每个消息发送模块的频率统计的准确性。
根据本申请实施例的技术方案,还可以为每个消息发送模块配置消息时间缓存,用于记录对应的消息发送模块发送消息的发送时刻,以便于后续能够准确统计该消息发送模块的频率,避免多个消息发送模块放在一起统计时出现频率统计错误的情况发生。
根据本申请实施例的技术方案,还能够基于统计的频率,检测消息发送模块是否异常,能够自动地对消息发送模块是否异常进行有效检测,同时还能够有效地扩展频率统计的功能及应用。
根据本申请实施例的技术方案,还能够根据频率请求段的消息频率请求,向频率请求段返回预先统计好的消息发送模块发送消息的频率,不用在接收到消息频率请求后,再计算消息发送模块发送消息的频率,能够有效地保证返回的频率的准确性。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (10)
1.一种消息频率的统计方法,其特征在于,所述方法由消息频率的统计装置执行,所述消息频率的统计装置设置在一进程中,所述方法包括:
在收到预先订阅的与所述消息频率的统计装置位于同进程中的消息发送模块发送的多个消息的过程中,记录所述多个消息的多个接收时刻;
根据在预设时间长度内的所述多个接收时刻,统计所述消息发送模块发送消息的频率。
2.根据权利要求1所述的方法,其特征在于,在收到预先订阅的与所述消息频率的统计装置位于同进程中的消息发送模块发送的多个消息之前,所述方法还包括:
根据所述进程的进程标识,确定所述消息发送模块的模块标识;
向消息管理模块发送对所述消息发送模块发送的消息的订阅请求,所述订阅请求包括所述模块标识。
3.根据权利要求1或2所述的方法,其特征在于,在统计所述消息发送模块发送消息的频率之后,所述方法还包括:
根据所述消息发送模块发送消息的频率和预设的频率阈值,检测所述消息发送模块是否异常。
4.根据权利要求1或2所述的方法,其特征在于,在统计所述多个消息的频率之后,所述方法还包括:
接收频率请求端发送的消息频率请求;
向所述频率请求端发送所述消息发送模块发送消息的频率,所述消息发送模块发送消息的频率指示所述消息发送模块是否异常。
5.一种消息频率的统计装置,其特征在于,所述消息频率的统计装置设置在一进程中,所述装置包括:
记录模块,用于在收到预先订阅的与所述消息频率的统计装置位于同进程中的消息发送模块发送的多个消息的过程中,记录所述多个消息的多个接收时刻;
统计模块,用于根据在预设时间长度内的所述多个接收时刻,统计所述消息发送模块发送消息的频率。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
确定模块,用于根据所述进程的进程标识,确定所述消息发送模块的模块标识;
发送模块,用于向消息管理模块发送对所述消息发送模块发送的消息的订阅请求,所述订阅请求包括所述模块标识。
7.根据权利要求5或6所述的装置,其特征在于,所述装置还包括:
检测模块,用于根据所述消息发送模块发送消息的频率和预设的频率阈值,检测所述消息发送模块是否异常。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括接收模块;
所述接收模块,用于接收频率请求端发送的消息频率请求;
所述发送模块,还用于向所述频率请求端发送所述消息发送模块发送消息的频率;所述消息发送模块发送消息的频率指示所述消息发送模块是否异常。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-4中任一项所述的方法。
10.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-4中任一项所述的方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201911174489.3A CN111031105B (zh) | 2019-11-26 | 2019-11-26 | 自动驾驶中消息频率的统计方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201911174489.3A CN111031105B (zh) | 2019-11-26 | 2019-11-26 | 自动驾驶中消息频率的统计方法、装置、设备及存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111031105A CN111031105A (zh) | 2020-04-17 |
| CN111031105B true CN111031105B (zh) | 2022-06-28 |
Family
ID=70202254
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201911174489.3A Active CN111031105B (zh) | 2019-11-26 | 2019-11-26 | 自动驾驶中消息频率的统计方法、装置、设备及存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111031105B (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115123302A (zh) * | 2022-07-07 | 2022-09-30 | 九识(苏州)智能科技有限公司 | 用于自动驾驶车辆的决策规划系统、方法和车辆 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103207808A (zh) * | 2012-01-13 | 2013-07-17 | 百度在线网络技术(北京)有限公司 | 多核系统中的处理方法及装置 |
| CN106899943A (zh) * | 2017-03-10 | 2017-06-27 | 广东欧珀移动通信有限公司 | 控制广播发送者发送广播消息的方法、装置和终端设备 |
| CN109756528A (zh) * | 2017-11-01 | 2019-05-14 | 广州腾讯科技有限公司 | 频率控制方法及装置、设备、存储介质、服务器 |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070297327A1 (en) * | 2006-06-27 | 2007-12-27 | International Business Machines Corporation | Method for applying stochastic control optimization for messaging systems |
| CN101312554A (zh) * | 2007-05-25 | 2008-11-26 | 株洲南车时代电气股份有限公司 | 交通领域中数据无线传输的控制方法及应用服务器 |
| CN102811283A (zh) * | 2012-04-18 | 2012-12-05 | 中兴通讯股份有限公司 | 一种终端通信显示方法及终端 |
| US10235278B2 (en) * | 2013-03-07 | 2019-03-19 | International Business Machines Corporation | Software testing using statistical error injection |
| CN105511946A (zh) * | 2015-11-30 | 2016-04-20 | 青岛海尔智能家电科技有限公司 | 智能家电设备活跃度的统计方法、装置及互联网网关 |
| CN107483521A (zh) * | 2016-06-08 | 2017-12-15 | 阿里巴巴集团控股有限公司 | 一种信息展示方法、装置及系统 |
| CN107797902B (zh) * | 2016-09-06 | 2021-07-30 | 北京百度网讯科技有限公司 | 用于监控机器人操作系统的消息传输频率的方法和装置 |
| CN109194736B (zh) * | 2018-08-30 | 2021-04-27 | 百度在线网络技术(北京)有限公司 | 消息去重方法、装置、电子设备、介质和无人车 |
| CN109547282B (zh) * | 2018-10-22 | 2022-04-12 | 中国平安人寿保险股份有限公司 | 过载保护方法、装置、计算机可读存储介质及服务器 |
| CN110399405A (zh) * | 2019-07-26 | 2019-11-01 | 广州虎牙科技有限公司 | 日志报警方法、装置、系统及存储介质 |
-
2019
- 2019-11-26 CN CN201911174489.3A patent/CN111031105B/zh active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103207808A (zh) * | 2012-01-13 | 2013-07-17 | 百度在线网络技术(北京)有限公司 | 多核系统中的处理方法及装置 |
| CN106899943A (zh) * | 2017-03-10 | 2017-06-27 | 广东欧珀移动通信有限公司 | 控制广播发送者发送广播消息的方法、装置和终端设备 |
| CN109756528A (zh) * | 2017-11-01 | 2019-05-14 | 广州腾讯科技有限公司 | 频率控制方法及装置、设备、存储介质、服务器 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111031105A (zh) | 2020-04-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111694646B (zh) | 资源调度方法、装置、电子设备及计算机可读存储介质 | |
| CN111756579A (zh) | 异常预警方法、装置、设备以及存储介质 | |
| CN111858248A (zh) | 应用监控方法、装置、设备以及存储介质 | |
| CN112561332B (zh) | 模型管理方法、装置、电子设备、存储介质和程序产品 | |
| CN111045985B (zh) | 文件存储处理方法、服务器、电子设备及存储介质 | |
| CN110659184B (zh) | 健康状态检查方法、装置及系统 | |
| CN111669438B (zh) | 直播消息传输方法、装置、电子设备及介质 | |
| CN110737560B (zh) | 一种服务状态检测方法、装置、电子设备和介质 | |
| CN112565356A (zh) | 数据存储方法、装置以及电子设备 | |
| CN112491617A (zh) | 一种链路跟踪方法、装置、电子设备和介质 | |
| CN110716959A (zh) | 流式数据处理方法、装置、电子设备及存储介质 | |
| CN114661510B (zh) | 一种请求超时检测方法、装置、设备以及存储介质 | |
| CN111726402B (zh) | 用户行为数据处理方法、装置、电子设备及存储介质 | |
| CN111177513A (zh) | 异常访问地址的确定方法、装置、电子设备及存储介质 | |
| CN111049690B (zh) | 设备故障监测处理方法、装置、设备及存储介质 | |
| CN111031105B (zh) | 自动驾驶中消息频率的统计方法、装置、设备及存储介质 | |
| CN111917814B (zh) | 数据发布、订阅方法、装置、设备、系统及可读存储介质 | |
| CN112770415B (zh) | 关于无线热点的信息处理方法和装置 | |
| CN112817686B (zh) | 检测虚拟机异常的方法、装置、设备和计算机存储介质 | |
| CN112099933B (zh) | 一种任务作业、查询方法、装置、电子设备及存储介质 | |
| CN111597461B (zh) | 一种目标对象聚集预测方法、装置以及电子设备 | |
| CN112817965B (zh) | 一种数据拼接方法、装置、电子设备和存储介质 | |
| CN111597026B (zh) | 用于获取信息的方法及装置 | |
| CN111698298A (zh) | 新增车辆能源站的确定方法和装置 | |
| CN112752323B (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 |