CN109905208A - 一种获取终端控制消息响应的方法 - Google Patents
一种获取终端控制消息响应的方法 Download PDFInfo
- Publication number
- CN109905208A CN109905208A CN201910193144.6A CN201910193144A CN109905208A CN 109905208 A CN109905208 A CN 109905208A CN 201910193144 A CN201910193144 A CN 201910193144A CN 109905208 A CN109905208 A CN 109905208A
- Authority
- CN
- China
- Prior art keywords
- response
- message
- time
- terminal
- thread
- 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
Landscapes
- Communication Control (AREA)
Abstract
本发明公开了一种获取终端控制消息响应的方法,包括:同时运行应用服务的消息控制模块和响应接收模块;消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间,同时实时检测应用服务的响应接收模块是否释放同步信号;响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;如果在超时时间内消息控制模块检测到同步信号,立即响应接收模块读取接收的响应信息,更新客户端状态;否则,保持客户端状态不变。本发明获取到终端设备响应更快速、精准,并通过动态设置超时时间,使消息从服务发送到处理终端设备应答的耗时大大减少,提高控制消息响应速度。
Description
技术领域
本发明涉及网络应用技术领域,具体涉及一种获取终端控制消息响应的方法。
背景技术
随着物联网的兴起,越来越多的终端接入到了互联网中,用户通过客户端的应用服务程序可以实现远程控制终端。而在实现远程控制终端的过程中,应用服务与终端的消息互通必不可少,尤其是为了保证终端在位,应用服务需要先向终端发送控制消息,并需要获取终端对控制消息的响应信息。
在现有技术中,为了保证终端在位,使应用服务后续向终端下发的控制指令发送到终端并得以执行,通用的做法是应用服务在处理此类消息时,静态设置一个固定的等待时间time,如果在等待时间time内获得终端的应答,则根据应答更新终端在客户端的设备状态,否则,认为控制超时,为无效控制,不更新;而为了给终端留有足够的响应时间,选择的等待时间往往远长于实际平均所需时间,造成大量的时间浪费,尤其是在有大量需要终端响应的控制消息要处理的场景下,每次固定的大量额外时间支出是对客户端来说都是沉重的负担。
有鉴于此,急需对现有的获取终端控制消息响应的方法进行改进,以使控制消息从应用服务发送到处理终端设备应答的耗时大大减少,提高应用服务对消息的整体处理效率。
发明内容
本发明所要解决的技术问题是现有的获取终端控制消息响应的方法为了给终端留有足够的响应时间,添加了往往远长于实际平均所需时间的等待时间,造成大量的时间浪费,降低应用服务对消息的整体处理效率的问题。
为了解决上述技术问题,本发明所采用的技术方案是提供一种获取终端控制消息响应的方法,包括以下步骤:
步骤S10、应用服务的消息控制模块和响应接收模块两个线程,同时运行;
步骤S20、消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间T,同时实时检测应用服务的响应接收模块是否释放同步信号;
步骤S30、响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;
步骤S40、如果在超时时间T内消息控制模块检测到同步信号,立即响应接收模块读取接收的响应信息,更新客户端状态;否则,保持客户端状态不变。
在上述方法中,同步信号为应用服务启动时创建的一个信号量,信号量的值包括0和1;信号量的初始化为0;
信号量为0表示没有未读取的终端的响应信息;
信号量为1表示有未读取的终端的响应信息。
在上述方法中,每次响应接收模块接收到终端的响应信息,并将响应消息存入固定内存中,同时立即将信号量重新更新为1。
在上述方法中,服务启动时消息控制模块将创建第一线程和第二线程两个线程;
第一线程用于接收客户端的控制消息并转发给第二线程;第二线程用于把第一线程发送的控制消息发送给终端设备,并立刻检测同步信号;
响应接收模块将实时接收的终端发来的响应消息存在固定内存中后,释放同步信号;第二线程检测到同步信号,从固定内存中读取响应消息,并发送给第一线程。
在上述方法中,第二线程把控制消息发送给终端设备后,返回校验收到的响应是否正确的transid给第一线程;
第一线程收到transid同时请求读取响应;
第二线程接收到读取响应请求后,立刻检测同步信号;
第二线程检测到同步信号后,读取响应,并发送给第一线程;
第一线程利用之前获得的transid对接收的响应信息进行校验,如果校验通过,则此次读取响应成功;否则,失败。
在上述方法中,所述超时时间T是通过大数据动态设置的,具体为:
通过对接入应用服务的大量终端在不同时段的响应时间进行统计和分析,找到每个时段不同种类和用途终端的最大等待时长和最小等待时长;根据当前的终端种类和用途,自动的动态设置当前时段的超时时间T。
与现有技术相比,本发明通过应用服务的消息控制模块在发送控制消息后,实时检测服务响应接收模块是否释放同步信号;实现对终端响应的快速感知,并在检测到同步信号后,立刻进行响应信息的读取;并通过动态设置终端的等待响应的超时时间,使消息从服务发送到处理终端设备应答的耗时大大减少,确保系统可以高效的运行。
附图说明
图1为本发明提供的一种获取终端控制消息响应的方法的流程图;
图2为本发明中具体实施例一的流程图。
具体实施方式
本发明提供的一种获取终端控制消息响应的方法,节约原有机制中无意义的多余等待时间,消减整个系统的操作时耗,提高应用服务的消息的处理效率。下面结合说明书附图和具体实施方式对本发明做出详细说明。
如图1所示,本发明提供的一种获取终端控制消息响应的方法,包括以下步骤:
步骤S10、应用服务的消息控制模块和响应接收模块两个线程,同时运行;
步骤S20、消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间T(不同终端在不同时段设置的等待时间不同),同时实时检测应用服务的响应接收模块是否释放同步信号;
步骤S30、响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;
步骤S30、如果在超时时间T内消息控制模块检测到同步信号,立即去响应接收模块读取接收的响应信息,更新客户端状态;如果消息控制模块没有检测到同步信号进入等待状态,在设定的定时器超时时间T结束后,保持客户端状态不变。
在本发明中,同步信号为服务启动时创建的一个信号量,信号量包括0和1两个值,信号量为0表示没有智能终端的响应,信号量为1表示有读取的智能终端响应,信号量的初始化为0,响应接收模块在接收到智能终端的响应后,立即将信号量更新为1,不管之前的信号量为1还是0。
在本发明中,服务启动时消息控制模块将创建两个线程,第一线程1用于接收客户端的控制消息并转发给第二线程2;第二线程2用于把第一线程1发送的控制消息发送给终端设备,并返回校验收到的响应是否正确的transid给消息控制模块线程1,第一线程1收到transid同时请求读取响应,第二线程2接收到读取响应请求后,立刻检测同步信号(信号量)接口,为了避免永久等待,同时设置超时时间T。
第二线程2检测到同步信号后,读取响应,并发送给第一线程,第一线程利用之前获得的transid对接收的响应信息进行校验,如果校验通过,此次读取响应成功;否则,失败。
其中,设置的超时时间T是通过大数据动态设置的,即通过对接入应用服务的大量终端在不同时段的响应时间进行统计和分析,找到每个时段每种类型用途终端响应所需的最短和最长时长;再根据当前的终端种类和用途,自动的动态设置该终端当前时段的超时时间T。
如图2所示,为本发明的具体实施例一的流程图,具体包括以下步骤:
001:服务启动时,创建一个信号量,并初始化为0,信号量为0表示没有响应,信号量为1表示有未使用的响应,此处信号量不能为除0、1外其他值。
002:消息控制模块的第一线程向消息控制模块第二线程发送需要获取响应的控制消息。
003:消息控制模块第二线程向终端发送相应的控制消息,并返回transid给消息控制模块的第一线程;
004:消息控制模块的第一线程收到transid后,立即向第二线程请求读取响应,此处省去了原有的固定等待时间。
005:第二线程接收到第一线程的读取请求后,立刻开始检测信号量接口,并设置超时时间T。
006:在消息控制模块第二线程向终端发送相应的控制消息后,响应接收模块实时接收终端发来的响应,并将接收到的响应信息入固定内存中,同时更新信号量为1,表示有未被读取的响应。
007:第二线程检测信号量为1,则第二线程从固定内存中读取响应,并将响应送给第一线程。
008:第一线程用之前获得的transid对接收的响应信息进行校验,如果校验通过,则此次读取响应成功;否则,失败。
本发明为了更快速,精准的获取到终端设备的响应,引入信号量的机制,通过设置信号量的方式实现对终端响应的快速感知;同时,引入大数据统计分析,实现动态的设置等待终端设备响应的超时时间,确保系统可以高效的运行。
本发明并不局限于上述最佳实施方式,任何人应该得知在本发明的启示下做出的结构变化,凡是与本发明具有相同或相近的技术方案,均落入本发明的保护范围之内。
Claims (6)
1.一种获取终端控制消息响应的方法,其特征在于,包括以下步骤:
步骤S10、应用服务的消息控制模块和响应接收模块两个线程,同时运行;
步骤S20、消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间T,同时实时检测应用服务的响应接收模块是否释放同步信号;
步骤S30、响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;
步骤S40、如果在超时时间T内消息控制模块检测到同步信号,立即响应接收模块读取接收的响应信息,更新客户端状态;否则,保持客户端状态不变。
2.根据权利要求1所述的方法,其特征在于,同步信号为应用服务启动时创建的一个信号量,信号量的值包括0和1;信号量的初始化为0;
信号量为0表示没有未读取的终端的响应信息;
信号量为1表示有未读取的终端的响应信息。
3.根据权利要求2所述的方法,其特征在于,每次响应接收模块接收到终端的响应信息,并将响应消息存入固定内存中,同时立即将信号量重新更新为1。
4.根据权利要求1所述的方法,其特征在于,服务启动时消息控制模块将创建第一线程和第二线程两个线程;
第一线程用于接收客户端的控制消息并转发给第二线程;第二线程用于把第一线程发送的控制消息发送给终端设备,并立刻检测同步信号;
响应接收模块将实时接收的终端发来的响应消息存在固定内存中后,释放同步信号;第二线程检测到同步信号,从固定内存中读取响应消息,并发送给第一线程。
5.根据权利要求4所述的方法,其特征在于,第二线程把控制消息发送给终端设备后,返回校验收到的响应是否正确的transid给第一线程;
第一线程收到transid同时请求读取响应;
第二线程接收到读取响应请求后,立刻检测同步信号;
第二线程检测到同步信号后,读取响应,并发送给第一线程;
第一线程利用之前获得的transid对接收的响应信息进行校验,如果校验通过,则此次读取响应成功;否则,失败。
6.根据权利要求1所述的方法,其特征在于,所述超时时间T是通过大数据动态设置的,具体为:
通过对接入应用服务的大量终端在不同时段的响应时间进行统计和分析,找到每个时段不同种类和用途终端的最大等待时长和最小等待时长;根据当前的终端种类和用途,自动的动态设置当前时段的超时时间T。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910193144.6A CN109905208A (zh) | 2019-03-14 | 2019-03-14 | 一种获取终端控制消息响应的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910193144.6A CN109905208A (zh) | 2019-03-14 | 2019-03-14 | 一种获取终端控制消息响应的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109905208A true CN109905208A (zh) | 2019-06-18 |
Family
ID=66953369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910193144.6A Pending CN109905208A (zh) | 2019-03-14 | 2019-03-14 | 一种获取终端控制消息响应的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109905208A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111402570B (zh) * | 2020-02-11 | 2021-08-17 | 广州创知科技有限公司 | 红外遥控信号接收方法、接收系统、接收设备及存储介质 |
CN115037606A (zh) * | 2022-06-17 | 2022-09-09 | 福建天泉教育科技有限公司 | 一种网络数据的获取方法及终端 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101635964A (zh) * | 2008-07-21 | 2010-01-27 | 中兴通讯股份有限公司 | 控制信息管理及传输方法、控制信息传输方法 |
CN102377887A (zh) * | 2010-08-12 | 2012-03-14 | 中兴通讯股份有限公司 | 一种实现网络电话呼叫建立的方法及系统 |
CN105245413A (zh) * | 2015-09-24 | 2016-01-13 | 成都广达新网科技股份有限公司 | 一种eoc设备局端获取终端控制消息响应的方法 |
US20180007603A1 (en) * | 2016-06-29 | 2018-01-04 | Alcatel-Lucent Usa Inc. | Processing handovers for mobile terminals capable of interference cancellation |
CN108880763A (zh) * | 2018-06-27 | 2018-11-23 | 努比亚技术有限公司 | 重传超时时间优化方法、设备及计算机可读存储介质 |
CN108901079A (zh) * | 2018-06-20 | 2018-11-27 | Oppo(重庆)智能科技有限公司 | 超时时间确定方法、装置、设备及存储介质 |
CN109088723A (zh) * | 2018-10-26 | 2018-12-25 | 四川长虹电器股份有限公司 | 一种基于mqtt协议的远程控制方法 |
-
2019
- 2019-03-14 CN CN201910193144.6A patent/CN109905208A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101635964A (zh) * | 2008-07-21 | 2010-01-27 | 中兴通讯股份有限公司 | 控制信息管理及传输方法、控制信息传输方法 |
CN102377887A (zh) * | 2010-08-12 | 2012-03-14 | 中兴通讯股份有限公司 | 一种实现网络电话呼叫建立的方法及系统 |
CN105245413A (zh) * | 2015-09-24 | 2016-01-13 | 成都广达新网科技股份有限公司 | 一种eoc设备局端获取终端控制消息响应的方法 |
US20180007603A1 (en) * | 2016-06-29 | 2018-01-04 | Alcatel-Lucent Usa Inc. | Processing handovers for mobile terminals capable of interference cancellation |
CN108901079A (zh) * | 2018-06-20 | 2018-11-27 | Oppo(重庆)智能科技有限公司 | 超时时间确定方法、装置、设备及存储介质 |
CN108880763A (zh) * | 2018-06-27 | 2018-11-23 | 努比亚技术有限公司 | 重传超时时间优化方法、设备及计算机可读存储介质 |
CN109088723A (zh) * | 2018-10-26 | 2018-12-25 | 四川长虹电器股份有限公司 | 一种基于mqtt协议的远程控制方法 |
Non-Patent Citations (2)
Title |
---|
DAISUKE KOTANI,YASUO OKABE: ""Packet-In Message Control for Reducing CPU Load and Control Traffic in OpenFlow Switches"", 《2012 EUROPEAN WORKSHOP ON SOFTWARE DEFINED NETWORKING》 * |
张婵: ""基于因特网控制消息协议的反向追踪技术研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111402570B (zh) * | 2020-02-11 | 2021-08-17 | 广州创知科技有限公司 | 红外遥控信号接收方法、接收系统、接收设备及存储介质 |
CN115037606A (zh) * | 2022-06-17 | 2022-09-09 | 福建天泉教育科技有限公司 | 一种网络数据的获取方法及终端 |
CN115037606B (zh) * | 2022-06-17 | 2023-04-28 | 福建天泉教育科技有限公司 | 一种网络数据的获取方法及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105159776B (zh) | 进程处理方法及装置 | |
EP2428868A3 (en) | Network service system, service proxy processing method, computer-readable storage medium storing program, and program therefor | |
CN109905208A (zh) | 一种获取终端控制消息响应的方法 | |
EP3190771A1 (en) | Method and device for managing instant communication application program, and mobile terminal thereof | |
CN106557033A (zh) | 一种智能家居设备控制方法、装置及系统 | |
CN106685855A (zh) | 一种数据发送方法及装置 | |
CN110995618A (zh) | 一种消息处理方法、装置、电子设备及可读存储介质 | |
CN100492992C (zh) | 告警处理方法及其设备 | |
CN109788251B (zh) | 视频处理方法、装置及存储介质 | |
CN109948332A (zh) | 一种物理机登录密码重置方法及装置 | |
CN105245413B (zh) | 一种eoc设备局端获取终端控制消息响应的方法 | |
CN111104289B (zh) | 一种gpu集群的效率检查系统及方法 | |
CN114554596A (zh) | 寻呼指示方法、寻呼指示装置、终端和可读存储介质 | |
CN105208516B (zh) | 一种蓝牙寻呼方法和装置 | |
CN110944064A (zh) | 嵌入式网络的远程访问控制系统 | |
US8189046B2 (en) | Computer-based communication systems and arrangements associated therewith for indicating user status | |
CN107171915B (zh) | 一种通信协议的变更方法及装置 | |
CN114624569A (zh) | 传感器电路异常检测方法、电路、装置、智能设备及介质 | |
US9877285B2 (en) | Method and system for device aware power save | |
CN113128302B (zh) | 图像检测方法及相关产品 | |
CN110601795A (zh) | 一种基于物联网的工业用水信息传输方法及工业水节水系统 | |
US20230180109A1 (en) | Method and apparatus for terminal to access network, internet of things system, and computer program product | |
CN112825579B (zh) | 一种确定非连续接收偏移参数的方法、设备及介质 | |
CN113296597B (zh) | 一种功耗控制方法及终端设备 | |
EP2996356A1 (en) | Gateway, electronic information label, and method for registering electronic information label |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190618 |