CN111162936A - 一种数据获取方法及装置 - Google Patents
一种数据获取方法及装置 Download PDFInfo
- Publication number
- CN111162936A CN111162936A CN201911300621.0A CN201911300621A CN111162936A CN 111162936 A CN111162936 A CN 111162936A CN 201911300621 A CN201911300621 A CN 201911300621A CN 111162936 A CN111162936 A CN 111162936A
- Authority
- CN
- China
- Prior art keywords
- acquisition time
- acquisition
- time
- current
- current acquisition
- 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
- 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/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Environmental & Geological Engineering (AREA)
- Telephonic Communication Services (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种数据获取方法及装置,方法包括:接收至少一个设备信息,根据对应的网络协议配置设备信息,根据监听请求获取目标设备的结果信息,所述目标设备包括多个;确定目标设备当前采集时刻的下一采集时刻;判断当前采集时刻是否过期,若确定当前采集时刻已到期,则触发当前采集时刻对应的采集事件,利用采集事件采集当前采集时刻对应的数据;采集完数据后,判断下一采集时刻是否到期,若到期,删除原有的采集数据,并触发下一采集时刻对应的采集事件,重新采集数据;这样相当于在服务器与现场设备之间搭建了一个桥接,可以利用该桥接对多个目标设备的采集时刻进行触发,实现对多个设备的统一管理,从而可以提高数据获取效率。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种数据获取方法及装置。
背景技术
在工业控制领域,控制网络技术是自动控制技术和计算机通信技术发展和相互融合的网络化自动控制技术,在不同的自动化领域产生了不同体系结构的控制网络,甚至同一自动化领域也产生了多种体系结构的控制网络。从集散控制***、现场总线控制***乃至工业以太网都是以控制网络数据通讯为基础的,而每种控制网络中的通信协议是不同的,现场设备接口的接口协议也是不同的。
现有技术中,为了实现控制网络之间的数据通讯,当前现场设备接口与控制网络的连接主要通过支持不同协议的通信适配器以及网关来实现。
但是实际生产中,现场设备的数量是很多的,那么就需要很多个通信适配器及网关,而有些适配器及网关的协议是私有协议,这样就导致服务器无法对多个适配器及网关进行统一管理,导致在获取数据时,数据获取的效率较低。
发明内容
针对现有技术存在的问题,本发明实施例提供了一种数据获取方法及装置,用于解决现有技术中在自动化控制网络中,服务器无法对多个适配器及网关进行统一管理,导致在获取数据时,数据获取的效率较低的技术问题。
本发明提供一种数据获取方法,应用在桥接通信网络中,所述方法包括:
接收至少一个设备信息,根据对应的网络协议配置所述设备信息,所述设备信息包括:设备IP、设备端口及设备名称;
接收服务器发送的监听请求,根据所述监听请求获取目标设备的结果信息,所述监听请求中携带有所述目标设备的设备信息,所述结果信息包括:所述目标设备的当前采集时刻、采样间隔时间、采集状态及属性路径;所述目标设备包括多个;
根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻,所述当前采集时刻为任一采集时刻;
利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,则触发所述当前采集时刻对应的采集事件,利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据;
采集完所述当前采集时刻对应的数据后,判断所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据。
可选地,所述根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻,包括:
获取所述目标设备的当前采集时刻T1及所述采样间隔时间t;
根据公式T=T1+t确定所述当前采集时刻的下一采集时刻。
可选地,所述利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据,包括:
获取所述当前采集时刻对应的采集事件触发的时间戳;
从所述时间戳开始采集数据,直至采集预设的采样间隔时间。
可选地,所述目标设备包括多个参数,每个参数预设有对应的采集时刻。
可选地,所述利用所述采集事件采集所述当前采集时刻对应的数据后,包括:
将所述当前采集时刻对应的数据的参数值注册至缓存中的参数值注册器,判断是否注册成功,若注册失败发生异常,则将异常信息注册至所述缓存中的异常注册器;
并根据预设的延长时间更新所述下一采集时刻。
本发明还提供一种数据获取装置,所述装置包括:
配置单元,用于接收至少一个设备信息,根据对应的网络协议配置所述设备信息,所述设备信息包括:设备IP、设备端口及设备名称;
获取单元,用于接收服务器发送的监听请求,根据所述监听请求获取目标设备的结果信息,所述监听请求中携带有所述目标设备的设备信息,所述结果信息包括:所述目标设备的当前采集时刻、采样间隔时间、采集状态及属性路径;所述目标设备包括多个;
确定单元,用于根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻;
判断单元,用于利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,则触发所述当前采集时刻对应的采集事件;利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据;
采集完所述当前采集时刻对应的数据后,判断所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据。
可选地,所述确定单元具体用于:
获取所述目标设备的当前采集时刻T1及所述采样间隔时间t;
根据公式T=T1+t确定所述当前采集时刻的下一采集时刻。
可选地,所述判断单元具体用于:
获取所述当前采集时刻对应的采集事件触发的时间戳;
从所述时间戳开始采集数据,直至采集到所述当前采集时刻的下一采集时刻。
可选地,所述目标设备包括多个参数,每个参数预设有对应的采集时刻。
可选地,所述装置还包括:注册单元;
所述注册单元用于利用所述采集事件采集所述当前采集时刻对应的数据后,将所述当前采集时刻对应的数据的参数值注册至缓存池中的参数值注册器,判断是否注册成功,若注册失败发生异常,则将异常信息注册至所述缓存池中的异常注册器;
并根据预设的延长时间更新所述下一采集时刻。
本发明提供了一种数据获取方法及装置,方法包括:接收至少一个设备信息,根据对应的网络协议配置所述设备信息,所述设备信息包括:设备IP、设备端口及设备名称;接收服务器发送的监听请求,根据所述监听请求获取目标设备的结果信息,所述监听请求中携带有所述目标设备的设备信息,所述结果信息包括:所述目标设备的当前采集时刻、采样间隔时间、采集状态及属性路径;所述目标设备包括多个;根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻;利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,则触发所述当前采集时刻对应的采集事件,利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据;采集完所述当前采集时刻对应的数据后,判断所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据;如此,若需要获取目标设备采集的数据时,只需要依次判断目标设备各个采集时刻是否到期,若到期,则会触发采集试件,根据采集事件获取到对应的数据;这样相当于在服务器与现场设备之间搭建了一个桥接,而目标设备可以包括多个,也就是说,可以利用该桥接对多个目标设备的采集时刻进行触发,实现对多个设备的统一管理,避免服务器资源被大量占用,从而可以提高数据获取效率。
附图说明
图1为本发明实施例一提供的数据获取方法流程示意图;
图2为本发明实施例二提供的数据获取装置结构示意图。
具体实施方式
为了解决现有技术中在自动化控制网络中,服务器无法对多个适配器及网关进行统一管理,导致在获取数据时,数据获取的效率较低的技术问题。本发明提供了一种数据获取方法及装置。
下面通过附图及具体实施例对本发明的技术方案做进一步的详细说明。
实施例一
本实施例提供一种数据获取方法,如图1所示,方法包括:
S110,接收至少一个设备信息,根据对应的网络协议配置所述设备信息,所述设备信息包括:设备IP、设备端口及设备名称;
随着工业自动化的发展,一个控制网络中可能会包括不同的子通信网络,比如某些现场区域可能使用的是总线网络,后期随着技术的发展,另一些现场区域可能使用的是以太网网络。那么为了集中控制,就需要将各个网络中的现场设备与服务器进行通信。
但是因不同的控制网络支持不同的通信协议,比如工业以太网支持的以太网协议,各总线控制网络支持的是相应的总线协议,就需要利用相应的网络适配器及网关来协助通信,在不同的控制网络中,网络适配器及网关使用的网络协议也是不同的。
那么本步骤中需要接收至少一个设备信息,根据对应的网络协议配置所述设备信息,各网络协议对应的设备信息包括:设备IP、设备端口及设备名称。
信息配置好之后,相当于在服务器与现场设备之间搭建了一个桥接通信网络,桥接通信网络具有两个端口,一个端口与服务器进行通信,另一个端口与所有的现场设备进行通信,这样就可以对现场设备进行统一管理了。
S111,接收服务器发送的监听请求,根据所述监听请求获取目标设备的结果信息,所述监听请求中携带有所述目标设备的设备信息;
但是一般现场设备会包括很多个(几千个甚至几万个),而每个设备包括很多参数(比如设备为空调的话,参数可以包括设定温度、当前室温、开启状态、运行状态、实时功耗、开启时间、运行时间等等),不同的设备包括的参数是不同的,每个参数都预设有对应的采集时刻(比如设定温度、当前室温、开启状态依次对应的采样时刻可为2:00、2:20、2:40等),若目标设备及相应的参数太多的话,服务器就无法创建如此多的定时器,因此本实施例中桥接通信网络会利用一个定时器来逐一判断目标设备中各个属性预设的采集时刻有没有到期,来确保每个属性都可以有一个对应的采集时刻,来采集相应的数据。具体实现如下:
设备信息配置好之后,若服务器需要获取现场设备的数据,那么会发送监听请求,监听请求中携带有所述目标设备的设备信息,那么桥接通信网络中的自旋线程会根据监听请求获取目标设备的结果信息。所述结果信息包括:所述目标设备的当前采集时刻、采样间隔时间、采集状态(是否开始采集及是否采集完毕)及属性路径;所述目标设备可以包括多个。
这里,在接收到监听请求后,会根据配置好的信息获取所有目标设备的设备属性信息,并通过采集注册器批量注册目标设备的设备属性信息。
所述设备属性信息包含:设备ID、参数名称、参数值、参数值单位、参数值时间戳、参数路径、读写级别(0只读、1读写)、采集频率状态(正常/异常)及参数描述。
比如该设备为空调,那么参数名称可以为实时温度,参数值为具体的度数,参数值单位℃,属参数值时间戳为采集该参数值的时间。
这里,该桥接通信网络是一个自旋线程网络,包含多个自旋线程,每个自旋线程可以获取一个现场设备的结果信息,自旋线程有一个共享的自旋锁,服务器可以设置该自旋锁的共享数量。比如共享数量为100,那么就可以同时获取100个相应现场设备的结果信息,那么目标设备的数量可以为100。共享数量的最大值根据硬件资源确定。
S112,根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻;
目标设备的结果信息获取之后,可以根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻。
作为一种可选的实施,根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻,包括:
获取所述目标设备的当前采集时刻T1及所述采样间隔时间t;
根据公式(1)确定预设的当前采集时刻的下一采集时刻,所述n为大于1的整数:
T=T1+t (1)
公式(1)中,T1为目标设备的预设的当前采集时刻,t为所述采样间隔时间。
当确定出下一采集时刻时,会利用jedisPool连接池将下一采集时刻存储在预先设置的缓存中,所述缓存可以为redis数据库。
本实施例中使用jedisPool连接池用于提供预链接,防止线程异常而发生线程阻塞现象。可以避免在高并发环境中,在频繁的连接和关闭环境下,避免发生连接资源缺乏的情况。
S113,利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,则触发所述当前采集时刻对应的采集事件,利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据;
这里,在步骤S110之后,步骤S112和步骤S113是同时进行的。在目标设备的结果信息获取到之后,可以根据结果信息确定出当前采集时刻,利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,说明此时需要采集数据,进一步获取采集状态,若采集状态为未开始采集,则会触发所述当前采集时刻对应的采集事件,利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据。
作为一种可选的实施例,所述利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据,包括:
获取所述当前采集时刻对应的采集事件触发的时间戳;
从所述时间戳开始采集数据,直至采集预设的采样时间间隔。
比如,当前采集时刻为上午9:00,采样间隔时间为15s。但在9:00确定出采集状态为还未开始采集,9:01分触发当前采集时刻的采集事件,那么采集事件对应的时间戳为9:01,然后采集15s数据。
这里,因为有可能当前采集时刻会有延迟(比如9:00延迟到9:01),若当前采集时刻对应的采集事件触发后,为了提高采集的精度,还需要重新确定出当前采集时刻的下一采集时刻,然后更新缓存中的下一采集时刻。
而若当前采集时刻在9:00没有进行采集,具有延迟,比如延迟到9:01分才开始采集,那么采集15s后,再确定出的下一采集时刻必然与步骤S112中确定的下一采集时刻是不同的,因此还需在缓存中更新下一采集时刻。
进一步地,当采集到当前采集时刻对应的数据后,将数据发送至消息总线,总线程将数据的参数值注册至缓存中的参数值注册器。其中,所述参数值注册器包含方法注册,需注册信息为:参数值上下文包含路径,参数值及参数值时间戳。
所述消息总线使用的是vert.x框架中的eventBus,所述vert.x框架是基于事件和异步,依托于全异步Java服务器Netty,并扩展了很多其他特性,以其轻量、高性能、支持多语言开发而备受开发者青睐。event bus是vert.x的神经***。每个vert.x的实例都有一个单一的event bus实例。它是使用vertx.eventBus()方法获得的。event bus同意程序中的不同语言编写的模块进行通信。不论模块是同样的vert.x实例。还是不同的vert.x实例。并能够桥接浏览器中执行的Javascript通信。event bus能够在分布式***中的多个server节点之间进行点对点通信和多个浏览器。event bus支持公布/订阅模式。点对点模式,和请求/响应模式。event bus的API是很easy的。它主要包含注册消息处理事件、取消处理事件、发送和公布消息。
进一步地,判断参数值是否注册成功,若注册失败发生异常,需要将异常信息注册至缓存中的异常注册器,同时需要更新当前采集时刻的下一采集时刻。
所述异常注册器,包含方法注册,查询和注销;异常信息包括:采集异常信息,写入异常信息等。需注册信息包含:异常类型,关键字,异常摘要,异常时间及异常信息。
这里,针对每一次注册,若注册失败发生异常,会按照预设的延迟时间延迟当前采集时刻的下一时刻,因此需要更新下一采集时刻。
S114,采集完所述当前采集时刻对应的数据后,判断所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据。
采集完所述当前采集时刻对应的数据后,判断目标设备的所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据。
这里,当下一采集时刻到期时,会触发下一采集时刻对应的采集事件,采集15s后,再确定下一采集时刻的下一采集时刻。
可以理解的是,在判断下一采集时刻是否到期时,此时下一采集时刻相当于是另一个当前时刻,这样在***不停机的情况下,一直可以无限进行判断目标设备中每个属性对应的采集时刻是否到期,按照这样的方式依次判断各属性对应的采集时刻是否到期,以确保每个设备的每个属性都可以采集到相应的数据。
并且,服务器也可以对多个设备进行统一管理,降低服务器被占用的资源,提高服务器的处理效率,进而提高了数据获取的效率。
基于同样的发明构思,本发明还提供一种数据获取装置,详见实施例二。
实施例二
本实施例提供一种数据获取装置,参见图2,装置包括:配置单元21、获取单元22、确定单元23、判断单元24及注册单元25;其中,
随着工业自动化的发展,一个控制网络中可能会包括不同的子通信网络,比如某些现场区域可能使用的是总线网络,后期随着技术的发展,另一些现场区域可能使用的是以太网网络。那么为了集中控制,就需要将各个网络中的现场设备与服务器进行通信。
但是因不同的控制网络支持不同的通信协议,比如工业以太网支持的以太网协议,各总线控制网络支持的是相应的总线协议,就需要利用相应的网络适配器及网关来协助通信,在不同的控制网络中,网络适配器及网关使用的网络协议也是不同的。
那么配置单元21用于接收至少一个设备信息,根据对应的网络协议配置所述设备信息,各网络协议对应的设备信息包括:设备IP、设备端口及设备名称。
信息配置好之后,相当于在服务器与现场设备之间搭建了一个桥接通信网络,桥接通信网络具有两个端口,一个端口与服务器进行通信,另一个端口与所有的现场设备进行通信,这样就可以对现场设备进行统一管理了。
但是一般现场设备会包括很多个(几千个甚至几万个),而每个设备包括很多参数(比如设备为空调的话,参数可以包括设定温度、当前室温、开启状态、运行状态、实时功耗、开启时间、运行时间等等),不同的设备包括的参数是不同的,每个参数都预设有对应的采集时刻(比如设定温度、当前室温、开启状态依次对应的采样时刻可为2:00、2:20、2:40等),若目标设备及相应的参数太多的话,服务器就无法创建如此多的定时器,因此本实施例中桥接通信网络会利用一个定时器来逐一判断目标设备中各个属性预设的采集时刻有没有到期,来确保每个属性都可以有一个对应的采集时刻,来采集相应的数据。具体实现如下:
设备信息配置好之后,若服务器需要获取现场设备的数据,那么会发送监听请求,监听请求中携带有所述目标设备的设备信息,那么桥接通信网络中的获取单元22会根据监听请求获取目标设备的结果信息。所述结果信息包括:所述目标设备的当前采集时刻、采样间隔时间、采集状态(是否开始采集及是否采集完毕)及属性路径;所述目标设备可以包括多个;获取单元22可以为自旋线程。
这里,注册单元25在接收到监听请求后,会根据配置好的信息获取所有目标设备的设备属性信息,并通过采集注册器批量注册目标设备的设备属性信息。
所述设备属性信息包含:设备ID、参数名称、参数值、参数值单位、参数值时间戳、参数路径、读写级别(0只读、1读写)、采集频率状态(正常/异常)及参数描述。
比如该设备为空调,那么参数名称可以为实时温度,参数值为具体的度数,参数值单位℃,属参数值时间戳为采集该参数值的时间。
这里,该桥接通信网络是一个自旋线程网络,包含多个自旋线程,每个自旋线程可以获取一个现场设备的结果信息,自旋线程有一个共享的自旋锁,服务器可以设置该自旋锁的共享数量。比如共享数量为100,那么就可以同时获取100个相应现场设备的结果信息,那么目标设备的数量可以为100。共享数量的最大值根据硬件资源确定。
目标设备的结果信息获取之后,确定单元23可以根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻。
作为一种可选的实施,确定单元23根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻,包括:
获取所述目标设备的当前采集时刻T1及所述采样间隔时间t;
根据公式(1)确定预设的当前采集时刻的下一采集时刻,所述n为大于1的整数:
T=T1+t (1)
公式(1)中,T1为目标设备的预设的当前采集时刻,t为所述采样间隔时间。
当确定出下一采集时刻时,会利用jedisPool连接池将下一采集时刻存储在预先设置的缓存中,所述缓存可以为redis数据库。
本实施例中使用jedisPool连接池用于提供预链接,防止线程异常而发生线程阻塞现象。可以避免在高并发环境中,在频繁的连接和关闭环境下,避免发生连接资源缺乏的情况。
在目标设备的结果信息获取到之后,确定单元23可以根据结果信息确定出当前采集时刻,判断单元24利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,说明此时需要采集数据,进一步获取采集状态,若采集状态为未开始采集,则会触发所述当前采集时刻对应的采集事件,利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据。
作为一种可选的实施例,所述判断单元24利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据,包括:
获取所述当前采集时刻对应的采集事件触发的时间戳;
从所述时间戳开始采集数据,直至采集预设的采样时间间隔。
比如,当前采集时刻为上午9:00,采样间隔时间为15s。但在9:00确定出采集状态为还未开始采集,9:01分触发当前采集时刻的采集事件,那么采集事件对应的时间戳为9:01,然后采集15s数据。
这里,因为有可能当前采集时刻会有延迟(比如9:00延迟到9:01),若当前采集时刻对应的采集事件触发后,为了提高采集的精度,还需要重新确定出当前采集时刻的下一采集时刻,然后更新缓存中的下一采集时刻。
而若当前采集时刻在9:00没有进行采集,具有延迟,比如延迟到9:01分才开始采集,那么采集15s后,再确定出的下一采集时刻必然与预设的下一采集时刻是不同的,因此注册单元25还需在缓存中更新下一采集时刻。
进一步地,当采集到当前采集时刻对应的数据后,将数据发送至消息总线,总线程的注册单元25将数据的参数值注册至缓存中的参数值注册器。其中,所述参数值注册器包含方法注册,需注册信息为:参数值上下文包含路径,参数值及参数值时间戳。
所述消息总线使用的是vert.x框架中的eventBus,所述vert.x框架是基于事件和异步,依托于全异步Java服务器Netty,并扩展了很多其他特性,以其轻量、高性能、支持多语言开发而备受开发者青睐。event bus是vert.x的神经***。每个vert.x的实例都有一个单一的event bus实例。它是使用vertx.eventBus()方法获得的。event bus同意程序中的不同语言编写的模块进行通信。不论模块是同样的vert.x实例。还是不同的vert.x实例。并能够桥接浏览器中执行的Javascript通信。event bus能够在分布式***中的多个server节点之间进行点对点通信和多个浏览器。event bus支持公布/订阅模式。点对点模式,和请求/响应模式。event bus的API是很easy的。它主要包含注册消息处理事件、取消处理事件、发送和公布消息。
进一步地,判断单元24还用于判断参数值是否注册成功,若注册失败发生异常,注册单元25需要将异常信息注册至缓存中的异常注册器,同时需要更新当前采集时刻的下一采集时刻。
所述异常注册器,包含方法注册,查询和注销;异常信息包括:采集异常信息,写入异常信息等。需注册信息包含:异常类型,关键字,异常摘要,异常时间及异常信息。
这里,针对每一次注册,若注册失败发生异常,注册单元25会按照预设的延迟时间延迟当前采集时刻的下一时刻,因此需要更新下一采集时刻。
采集完所述当前采集时刻对应的数据后,判断单元24还用于判断目标设备的所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据。
这里,当下一采集时刻到期时,会触发下一采集时刻对应的采集事件,采集15s后,再确定下一采集时刻的下一采集时刻。
可以理解的是,在判断下一采集时刻是否到期时,此时下一采集时刻相当于是另一个当前时刻,这样在***不停机的情况下,一直可以无限进行判断目标设备中每个属性对应的采集时刻是否到期,按照这样的方式依次判断各属性对应的采集时刻是否到期,以确保每个设备的每个属性都可以采集到相应的数据。
并且,服务器也可以对多个设备进行统一管理,降低服务器被占用的资源,提高服务器的处理效率,进而提高了数据获取的效率。
本发明提供的数据获取方法及装置能带来的有益效果至少是:
本发明提供了一种数据获取方法及装置,方法包括:接收至少一个设备信息,根据对应的网络协议配置所述设备信息,所述设备信息包括:设备IP、设备端口及设备名称;接收服务器发送的监听请求,根据所述监听请求获取目标设备的结果信息,所述监听请求中携带有所述目标设备的设备信息,所述结果信息包括:所述目标设备的当前采集时刻、采样间隔时间、采集状态及属性路径;所述目标设备包括多个;根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻;利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,则触发所述当前采集时刻对应的采集事件,利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据;采集完所述当前采集时刻对应的数据后,判断所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据;如此,若需要获取目标设备采集的数据时,只需要逐一判断目标设备各个采集时刻是否到期,若到期,则会触发采集试件,根据采集事件获取到对应的数据;这样相当于在服务器与现场设备之间搭建了一个桥接,而目标设备可以包括多个,也就是说,可以利用该桥接对多个目标设备的采集时刻进行触发,实现对多个设备的统一管理,避免服务器资源被大量占用,从而可以提高数据获取效率。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据获取方法,其特征在于,应用在桥接通信网络中,所述方法包括:
接收至少一个设备信息,根据对应的网络协议配置所述设备信息,所述设备信息包括:设备IP、设备端口及设备名称;
接收服务器发送的监听请求,根据所述监听请求获取目标设备的结果信息,所述监听请求中携带有所述目标设备的设备信息,所述结果信息包括:所述目标设备的当前采集时刻、采样间隔时间、采集状态及属性路径;所述目标设备包括多个;
根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻,所述当前采集时刻为任一采集时刻;
利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,则触发所述当前采集时刻对应的采集事件,利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据;
采集完所述当前采集时刻对应的数据后,判断所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据。
2.如权利要求1所述的方法,其特征在于,所述根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻,包括:
获取所述目标设备的当前采集时刻T1及所述采样间隔时间t;
根据公式T=T1+t确定所述当前采集时刻的下一采集时刻。
3.如权利要求1所述的方法,其特征在于,所述利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据,包括:
获取所述当前采集时刻对应的采集事件触发的时间戳;
从所述时间戳开始采集数据,直至采集预设的采样间隔时间。
4.如权利要求1所述的方法,其特征在于,所述目标设备包括多个参数,每个参数预设有对应的采集时刻。
5.如权利要求1所述的方法,其特征在于,所述利用所述采集事件采集所述当前采集时刻对应的数据后,包括:
将所述当前采集时刻对应的数据的参数值注册至缓存中的参数值注册器,判断是否注册成功,若注册失败发生异常,则将异常信息注册至所述缓存中的异常注册器;
并根据预设的延长时间更新所述下一采集时刻。
6.一种数据获取装置,其特征在于,所述装置包括:
配置单元,用于接收至少一个设备信息,根据对应的网络协议配置所述设备信息,所述设备信息包括:设备IP、设备端口及设备名称;
获取单元,用于接收服务器发送的监听请求,根据所述监听请求获取目标设备的结果信息,所述监听请求中携带有所述目标设备的设备信息,所述结果信息包括:所述目标设备的当前采集时刻、采样间隔时间、采集状态及属性路径;所述目标设备包括多个;
确定单元,用于根据所述目标设备的所述结果信息确定所述目标设备当前采集时刻的下一采集时刻;
判断单元,用于利用自旋线程判断所述当前采集时刻是否过期,若确定所述当前采集时刻已到期,则触发所述当前采集时刻对应的采集事件;利用所述当前采集时刻对应的采集事件采集所述当前采集时刻对应的数据;
采集完所述当前采集时刻对应的数据后,判断所述下一采集时刻是否到期,若到期,则删除原有的采集数据,并触发所述下一采集时刻对应的采集事件,利用下一采集时刻对应的采集事件重新采集数据。
7.如权利要求6所述的装置,其特征在于,所述确定单元具体用于:
获取所述目标设备的当前采集时刻T1及所述采样间隔时间t;
根据公式T=T1+t确定所述当前采集时刻的下一采集时刻。
8.如权利要求6所述的装置,其特征在于,所述判断单元具体用于:
获取所述当前采集时刻对应的采集事件触发的时间戳;
从所述时间戳开始采集数据,直至采集到所述当前采集时刻的下一采集时刻。
9.如权利要求6所述的装置,其特征在于,所述目标设备包括多个参数,每个参数预设有对应的采集时刻。
10.如权利要求6所述的装置,其特征在于,所述装置还包括:注册单元;
所述注册单元用于利用所述采集事件采集所述当前采集时刻对应的数据后,将所述当前采集时刻对应的数据的参数值注册至缓存池中的参数值注册器,判断是否注册成功,若注册失败发生异常,则将异常信息注册至所述缓存池中的异常注册器;
并根据预设的延长时间更新所述下一采集时刻。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911300621.0A CN111162936B (zh) | 2019-12-17 | 2019-12-17 | 一种数据获取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911300621.0A CN111162936B (zh) | 2019-12-17 | 2019-12-17 | 一种数据获取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111162936A true CN111162936A (zh) | 2020-05-15 |
CN111162936B CN111162936B (zh) | 2022-10-21 |
Family
ID=70557286
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911300621.0A Active CN111162936B (zh) | 2019-12-17 | 2019-12-17 | 一种数据获取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111162936B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111918230A (zh) * | 2020-05-29 | 2020-11-10 | 北京寄云鼎城科技有限公司 | 一种数据采集方法、数据传输方法、网关、设备和存储介质 |
CN117176613A (zh) * | 2023-11-01 | 2023-12-05 | 建信金融科技有限责任公司 | 一种数据采集方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102263704A (zh) * | 2011-09-01 | 2011-11-30 | 杭州华三通信技术有限公司 | 一种支持数据中心二层互联的拓扑构建方法和装置 |
CN104767812A (zh) * | 2014-10-10 | 2015-07-08 | 北京金创智博科技有限公司 | 基于云服务传输数据的方法、装置和*** |
WO2016054992A1 (zh) * | 2014-10-10 | 2016-04-14 | 中兴通讯股份有限公司 | 网络数据采集***及方法 |
CN105610648A (zh) * | 2016-01-11 | 2016-05-25 | 飞天诚信科技股份有限公司 | 一种运维监控数据的采集方法及服务器 |
CN108206764A (zh) * | 2018-03-29 | 2018-06-26 | 新华三技术有限公司 | 网络设备配置信息的配置方法、服务器和计算机可读介质 |
-
2019
- 2019-12-17 CN CN201911300621.0A patent/CN111162936B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102263704A (zh) * | 2011-09-01 | 2011-11-30 | 杭州华三通信技术有限公司 | 一种支持数据中心二层互联的拓扑构建方法和装置 |
CN104767812A (zh) * | 2014-10-10 | 2015-07-08 | 北京金创智博科技有限公司 | 基于云服务传输数据的方法、装置和*** |
WO2016054992A1 (zh) * | 2014-10-10 | 2016-04-14 | 中兴通讯股份有限公司 | 网络数据采集***及方法 |
CN105610648A (zh) * | 2016-01-11 | 2016-05-25 | 飞天诚信科技股份有限公司 | 一种运维监控数据的采集方法及服务器 |
CN108206764A (zh) * | 2018-03-29 | 2018-06-26 | 新华三技术有限公司 | 网络设备配置信息的配置方法、服务器和计算机可读介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111918230A (zh) * | 2020-05-29 | 2020-11-10 | 北京寄云鼎城科技有限公司 | 一种数据采集方法、数据传输方法、网关、设备和存储介质 |
CN111918230B (zh) * | 2020-05-29 | 2022-09-09 | 北京寄云鼎城科技有限公司 | 一种数据采集方法、数据传输方法、网关、设备和存储介质 |
CN117176613A (zh) * | 2023-11-01 | 2023-12-05 | 建信金融科技有限责任公司 | 一种数据采集方法和装置 |
CN117176613B (zh) * | 2023-11-01 | 2024-01-26 | 建信金融科技有限责任公司 | 一种数据采集方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111162936B (zh) | 2022-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2563062B1 (en) | Long connection management apparatus and link resource management method for long connection communication | |
CN111162936B (zh) | 一种数据获取方法及装置 | |
CN101631053B (zh) | Eaps环网拓扑监控方法及*** | |
CN111741016A (zh) | 用于管理应用接口的方法、计算设备和计算机存储介质 | |
CN102254031A (zh) | 基于批处理请求的Microsoft SQL Server数据库集群 | |
CN110413295A (zh) | 一种嵌入式设备远程固件更新方法 | |
CN112182104A (zh) | 一种数据同步方法、装置、设备及存储介质 | |
CN112765030A (zh) | 测试方法、装置、电子设备及计算机存储介质 | |
CN112115200B (zh) | 数据同步方法、装置、电子设备及可读存储介质 | |
CN107179977B (zh) | 基于mpm模型的数据库全自动监控*** | |
CN108989390A (zh) | 用户请求转发方法及装置、反向代理服务器和计算机可读存储介质 | |
WO2023123956A1 (zh) | 一种io全生命周期时延监测方法及相关装置 | |
CN111212135A (zh) | 消息订阅方法、装置、***、电子设备及存储介质 | |
CN104954482A (zh) | 管理配置的***及方法 | |
CN111158711A (zh) | 面向多个安卓***终端的应用程序部署方法和设备 | |
CN116708266A (zh) | 一种云服务拓扑图实时更新方法、装置、设备及介质 | |
CN108111578B (zh) | 基于nio的配电终端数据采集平台接入终端设备的方法 | |
CN112052295A (zh) | 一种数据同步方法、装置、电子设备和可读存储介质 | |
CN106773790B (zh) | 基于全局事件轴同步的多迭代电力和通信联合仿真方法 | |
CN114780565A (zh) | 缓存的更新方法和装置、存储介质及电子装置 | |
CN115454851A (zh) | 接口回归测试方法、装置、存储介质及电子装置 | |
CN116016196A (zh) | 一种实时构建***架构拓扑的方法及*** | |
Gowtham et al. | Determining edge node real-time capabilities | |
CN111614797B (zh) | 一种ip地址漏覆盖的检测方法及*** | |
CN107124293B (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 |