CN111949302B - 一种用于工业计算机管理系统的即时性更新方法、系统和设备 - Google Patents
一种用于工业计算机管理系统的即时性更新方法、系统和设备 Download PDFInfo
- Publication number
- CN111949302B CN111949302B CN202010988354.7A CN202010988354A CN111949302B CN 111949302 B CN111949302 B CN 111949302B CN 202010988354 A CN202010988354 A CN 202010988354A CN 111949302 B CN111949302 B CN 111949302B
- Authority
- CN
- China
- Prior art keywords
- client
- socket
- server
- update
- information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012544 monitoring process Methods 0.000 claims abstract description 24
- 230000005540 biological transmission Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 8
- 238000009472 formulation Methods 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims description 2
- 230000000694 effects Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- 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)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种用于工业计算机管理系统的即时性更新方法、系统和设备,涉及服务器技术领域。所述方法通过建立MQTT代理,制定传递信息的Topic,并在服务端设置Socket.io服务器,服务端前台部署Socket.io客户端,服务端后台设置监听程序,当客户端有状态或资讯更新时,后台触发Socket.io监听并向前台Socket.io客户端发送更新通知。本发明使用MQTT取代API做状态更新的通知以取得客户端及时的更新状态,大幅降低了服务端的负担,使用Socket.io监听服务取代现有的网页轮询方法,当客户端有状态或资讯更新时,自动取得最新的客户端资讯并更新到页面上,实现系统显示内容的及时性更新,有效降低了网路频宽的使用。
Description
技术领域
本发明实施例涉及服务器技术领域,具体来说涉及一种用于工业计算机管理系统的即时性更新方法、系统和设备。
背景技术
MQTT是一种信息协定,基于订阅与推送的资料传输协议,以其低延迟与低功耗的特性,被广泛运用在物联网与监控应用中。资讯管理系统通常制定API并通过HTTP协定来进行资料传输工作,在HTTP伺服器上监听客户端的请求,并根据请求返回状态与内容。对于一般的在线管理系统而言,采用API监听外来请求已能基本达到其功能需求,但是当需求接收的频率很高或传输的资料量很低时,使用HTTP协定处理需求很容易导致系统负荷过重,进而影响处理效能。现行的系统需求处理方案大多采用API实现,通过系统制定的API处理后台任务,被动的处理收到的需求并予以回应。其存在的不足之处在于,当API接收到的需求不一定是必要的或者是不需要处理的小字串,且需求数量较为庞大的时候,系统会因为要处理这些需求而导致效能降低。此外,在这种模式下,系统只能处于被动的被需求端而无法主动向客户端发送需求或资讯。
在物联网领域中,使用MQTT进行需求通知越来越常见,因MQTT相较于HTTP所产生的传输负担相对较低的特性,很适合运用在运算效能相对较低的工业电脑上。基于此,本发明提供一种用于工业计算机管理系统的即时性更新方法、系统和设备,解决管理系统面对大量需求处理导致负荷过重的问题,实现在服务端即时更新用户资讯的功能。
发明内容
本发明实施例提供了一种用于工业计算机管理系统的即时性更新方法、系统和设备,使用MQTT协定进行信息传递以降低服务端的负担,并使用Socket.io监听服务取代网页轮询方法,实现系统显示内容的及时性更新。
为实现上述目的,本发明公开了如下技术方案:
本发明一方面提供一种用于工业计算机管理系统的即时性更新方法,所述方法包括以下步骤:
建立MQTT代理,制定传递信息的Topic;
在服务端设置Socket.io服务器用于监听客户端更新,并在服务端前台部署Socket.io客户端;
在服务端后台设置监听程序,当客户端有状态或资讯更新时,触发Socket.io监听,并向前台Socket.io客户端发送更新通知。
基于上述方案,进一步的,所述建立MQTT代理,制定传递信息的Topic,包括下述步骤:
在系统服务端与客户端分别创建MQTT发送和接收端;
制定传递信息的Topic,并在服务端订阅相应的Topic;
客户端有状态或资讯更新时,通过MQTT发布相应的Topic信息。
进一步的,所述当客户端有状态或资讯更新时触发Socket.io监听,并向前台Socket.io客户端发送通知,包括下述步骤:
当客户端有状态或资讯更新时,通过MQTT协定发布更新通知到MQTT代理端,再由MQTT代理端发送给服务端;
服务端接收更新通知,在后台触发Socket.io的监听函数,并向前台部署的Socket.io客户端发送更新通知;
前台Socket.io客户端接收更新通知,自动到资料库获取最新客户状态资讯,并更新系统显示状态资讯。
本发明另一方面提供一种用于工业计算机管理系统的即时性更新系统,所述系统包括服务端和客户端;
所述服务端和客户端分别创建有MQTT发送和接收端;
所述服务端设置有Socket.io服务器,服务端前台部署有Socket.io客户端,服务端后台设置有监听程序,当客户端有状态或资讯更新时,后台触发Socket.io监听并向前台Socket.io客户端发送更新通知。
基于上述装置,进一步的,所述客户端有状态或资讯更新时,通过MQTT发布相应的Topic信息,服务端订阅相应的Topic。
进一步的,所述当客户端有状态或资讯更新时,后台触发Socket.io监听并向前台Socket.io客户端发送更新通知,具体包括:
所述客户端有状态或资讯更新时,通过MQTT协定发布更新通知到MQTT代理端,再由MQTT代理端发送给服务端;
所述服务端接收更新通知,在后台触发Socket.io的监听函数,并向前台部署的Socket.io客户端发送更新通知,前台Socket.io客户端接收更新通知后,自动到资料库获取最新客户状态资讯,并更新系统显示状态资讯。
此外,本发明还提供一种计算机设备,所述计算机设备包括:至少一个处理器,以及与所述处理器通信连接的至少一个存储器;
所述存储器存储有可在处理器上运行的程序指令;
所述处理器调用所述程序指令能够执行如上所述的一种用于工业计算机管理系统的即时性更新方法的具体步骤。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
本申请实施例提供的一种用于工业计算机管理系统的即时性更新方法,通过建立MQTT代理,制定传递信息的Topic,并在服务端设置Socket.io服务器,服务端前台部署Socket.io客户端,服务端后台设置监听程序,当客户端有状态或资讯更新时,后台触发Socket.io监听并向前台Socket.io客户端发送更新通知。本实施例方案基于MQTT传输负担较低的特性,使用MQTT取代API做状态更新的通知以取得客户端及时的更新状态,大幅降低了服务端的负担。此外,使用Socket.io监听服务取代现有的网页轮询方法,当客户端有状态或资讯更新时,自动取得最新的客户端资讯并更新到页面上,实现系统显示内容的及时性更新,减少了不必要的HTTP请求,有效降低了网路频宽的使用。
本申请实施例提供的一种用于工业计算机管理系统的即时性更新系统和设备,能够实现上述的用于工业计算机管理系统的即时性更新方法,并取得上文所述的技术效果。
附图说明
此处的附图被并入说明书中并构成说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种用于工业计算机管理系统的即时性更新方法流程示意图;
图2为MQTT在计算机管理系统中实现过程示意图;
图3为图1中步骤S1的实现过程流程示意图;
图4为图1中步骤S3的实现过程流程示意图;
图5为本申请实施例提供的一种用于工业计算机管理系统的即时性更新系统结构示意图。
具体实施方式
为使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
为了方便对实施例的理解,下面对实施例中涉及的缩略词和关键术语予以解释和说明。
MQTT:Message Queuing Telemetry Transport,消息队列遥测传输;
Socket:网络上的通讯端点;
HTTP:HyperText Transfer Protocol,超文本传输协定。
图1示出了本发明实施例一种用于工业计算机管理系统的即时性更新方法流程示意图。
参照图1,本实施例的方法,包括以下步骤:
S1、建立MQTT代理,制定传递信息的Topic;
具体的,在本步骤中,使用Mosquitto搭建MQTT代理,并制定传递信息的各种Topic格式,如图2所示,发送端使用制定的Topic加上信息内容进行传递,订阅端接收传递的信息。
S2、在服务端设置Socket.io服务器用于监听客户端更新,并在服务端前台部署Socket.io客户端;
S3、在服务端后台设置监听程序,当客户端有状态或资讯更新时,触发Socket.io监听,并向前台Socket.io客户端发送更新通知。
更具体来说,如图3所示,所述步骤S1中,建立MQTT代理,制定传递信息的Topic,包括下述步骤:
S11、在系统服务端与客户端分别创建MQTT发送和接收端;
S12、制定传递信息的Topic,并在服务端订阅相应的Topic;
S13、客户端有状态或资讯更新时,通过MQTT发布相应的Topic信息。
更进一步来说,如图4所示,所述步骤S3中,当客户端有状态或资讯更新时触发Socket.io监听,并向前台Socket.io客户端发送通知,包括下述步骤:
S31、当客户端有状态或资讯更新时,通过MQTT协定发布更新通知到MQTT代理端,再由MQTT代理端发送给服务端;
S32、服务端接收更新通知,在后台触发Socket.io的监听函数,并向前台部署的Socket.io客户端发送更新通知;
S33、前台Socket.io客户端接收更新通知,自动到资料库获取最新客户状态资讯,并更新系统显示状态资讯。
本实施例的一种用于工业计算机管理系统的即时性更新方法,在系统服务端与客户端创建MQTT发送与接收端,当客户端有状态变更(例如上线或离线)或者版本异动(例如更新或降版)时,会向服务端发送通知,并在管理系统的前台设置socket.io接口,当服务端接收到客户端资讯有所更新时,自动取得最新的客户端资讯并更新到页面上,实现网页内容及时更新的功能。本实施例方法可适用于任何需要支持的即时性系统。
图5为本申请实施例提供的一种用于工业计算机管理系统的即时性更新系统结构示意图。
参照图5,本实施例的系统,包括服务端和客户端;
所述服务端和客户端分别创建有MQTT发送和接收端;
所述服务端设置有Socket.io服务器,服务端前台部署有Socket.io客户端,服务端后台设置有监听程序,当客户端有状态或资讯更新时,后台触发Socket.io监听并向前台Socket.io客户端发送更新通知。
具体的,在本实施例系统中,所述客户端有状态或资讯更新时,通过MQTT发布相应的Topic信息,服务端订阅相应的Topic。
进一步的,所述当客户端有状态或资讯更新时,后台触发Socket.io监听并向前台Socket.io客户端发送更新通知,具体包括:
所述客户端有状态或资讯更新时,通过MQTT协定发布更新通知到MQTT代理端,再由MQTT代理端发送给服务端;
所述服务端接收更新通知,在后台触发Socket.io的监听函数,并向前台部署的Socket.io客户端发送更新通知,前台Socket.io客户端接收更新通知后,自动到资料库获取最新客户状态资讯,并更新系统显示状态资讯。
基于同一发明构思,本发明实施例还提供了一种计算机设备,所述计算机设备包括:至少一个处理器,以及与所述处理器通信连接的至少一个存储器;
所述存储器存储有可在处理器上运行的程序指令;
所述处理器调用所述程序指令能够执行上述实施例中的一种用于工业计算机管理系统的即时性更新方法的具体步骤。
本申请实施例提供的一种用于工业计算机管理系统的即时性更新系统和设备中未详述的内容,可参照上述实施例中提供的用于工业计算机管理系统的即时性更新方法,在此不再赘述。
以上所述仅为本发明的较佳实施例而已,并不用以限定本发明,对于本技术领域的技术人员来说,在不脱离本发明原理的前提下所作的任何修改、改进和等同替换等,均包含在本发明的保护范围内。
Claims (5)
1.一种用于工业计算机管理系统的即时性更新方法,其特征在于,包括以下步骤:
建立MQTT代理,制定传递信息的Topic;
在服务端设置Socket.io服务器用于监听客户端更新,并在服务端前台部署Socket.io客户端;
在服务端后台设置监听程序,当客户端有状态或资讯更新时,触发Socket.io监听,并向前台Socket.io客户端发送更新通知;
所述当客户端有状态或资讯更新时触发Socket.io监听,并向前台Socket.io客户端发送通知,包括下述步骤:
当客户端有状态或资讯更新时,通过MQTT协定发布更新通知到MQTT代理端,再由MQTT代理端发送给服务端;
服务端接收更新通知,在后台触发Socket.io的监听函数,并向前台部署的Socket.io客户端发送更新通知;
前台Socket.io客户端接收更新通知,自动到资料库获取最新客户状态资讯,并更新系统显示状态资讯。
2.根据权利要求1所述的一种用于工业计算机管理系统的即时性更新方法,其特征在于,所述建立MQTT代理,制定传递信息的Topic,包括下述步骤:
在系统服务端与客户端分别创建MQTT发送和接收端;
制定传递信息的Topic,并在服务端订阅相应的Topic;
客户端有状态或资讯更新时,通过MQTT发布相应的Topic信息。
3.一种用于工业计算机管理系统的即时性更新系统,其特征在于,包括服务端和客户端;
所述服务端和客户端分别创建有MQTT发送和接收端;
所述服务端设置有Socket.io服务器,服务端前台部署有Socket.io客户端,服务端后台设置有监听程序,当客户端有状态或资讯更新时,后台触发Socket.io监听并向前台Socket.io客户端发送更新通知;
所述当客户端有状态或资讯更新时,后台触发Socket.io监听并向前台Socket.io客户端发送更新通知,具体包括:
所述客户端有状态或资讯更新时,通过MQTT协定发布更新通知到MQTT代理端,再由MQTT代理端发送给服务端;
所述服务端接收更新通知,在后台触发Socket.io的监听函数,并向前台部署的Socket.io客户端发送更新通知,前台Socket.io客户端接收更新通知后,自动到资料库获取最新客户状态资讯,并更新系统显示状态资讯。
4.根据权利要求3所述的一种用于工业计算机管理系统的即时性更新系统,其特征在于,所述客户端有状态或资讯更新时,通过MQTT发布相应的Topic信息,服务端订阅相应的Topic。
5.一种计算机设备,其特征在于,包括:至少一个处理器,以及与所述处理器通信连接的至少一个存储器;
所述存储器存储有可在处理器上运行的程序指令;
所述处理器调用所述程序指令能够执行如权利要求1至2中任一项所述的一种用于工业计算机管理系统的即时性更新方法的具体步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010988354.7A CN111949302B (zh) | 2020-09-18 | 2020-09-18 | 一种用于工业计算机管理系统的即时性更新方法、系统和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010988354.7A CN111949302B (zh) | 2020-09-18 | 2020-09-18 | 一种用于工业计算机管理系统的即时性更新方法、系统和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111949302A CN111949302A (zh) | 2020-11-17 |
CN111949302B true CN111949302B (zh) | 2022-05-31 |
Family
ID=73356657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010988354.7A Active CN111949302B (zh) | 2020-09-18 | 2020-09-18 | 一种用于工业计算机管理系统的即时性更新方法、系统和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111949302B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540783B (zh) * | 2020-12-18 | 2024-05-24 | 航天信息软件技术有限公司 | 客户端升级方法、装置、存储介质及电子设备 |
CN114827114A (zh) * | 2022-04-22 | 2022-07-29 | 雷沃工程机械集团有限公司 | 一种工程机械车联网平台的数据孪生的实现方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104601665A (zh) * | 2014-12-22 | 2015-05-06 | 西安电子科技大学 | 一种对物联网感知设备进行云端实时仿真的系统和方法 |
CN106210084A (zh) * | 2016-07-15 | 2016-12-07 | 深圳市丰巨泰科电子有限公司 | 一种基于mqtt的消息插播方法 |
CN111131501A (zh) * | 2019-12-31 | 2020-05-08 | 郑州信大捷安信息技术股份有限公司 | 一种基于mqtt协议的消息推送系统及方法 |
US20200195740A1 (en) * | 2017-08-29 | 2020-06-18 | Huawei Technologies Co., Ltd. | Subscribe and publish method and server |
-
2020
- 2020-09-18 CN CN202010988354.7A patent/CN111949302B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104601665A (zh) * | 2014-12-22 | 2015-05-06 | 西安电子科技大学 | 一种对物联网感知设备进行云端实时仿真的系统和方法 |
CN106210084A (zh) * | 2016-07-15 | 2016-12-07 | 深圳市丰巨泰科电子有限公司 | 一种基于mqtt的消息插播方法 |
US20200195740A1 (en) * | 2017-08-29 | 2020-06-18 | Huawei Technologies Co., Ltd. | Subscribe and publish method and server |
CN111131501A (zh) * | 2019-12-31 | 2020-05-08 | 郑州信大捷安信息技术股份有限公司 | 一种基于mqtt协议的消息推送系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111949302A (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5898980B2 (ja) | ネットワーク環境において非持続性のメッセージの複数のキューを管理する方法、システム及び記憶媒体 | |
US20170149715A1 (en) | System and method for providing an actively invalidated client-side network resource cache | |
CN111949302B (zh) | 一种用于工业计算机管理系统的即时性更新方法、系统和设备 | |
CN109327513B (zh) | 交互方法、装置及计算机可读存储介质 | |
CN107438084B (zh) | 多客户端数据同步方法和装置 | |
US8355401B2 (en) | Controlling access to a destination in a data processing network | |
CN108377247B (zh) | 一种消息推送方法和装置 | |
US20120096073A1 (en) | Local polling method and system for real time updating of web-based services | |
CN112217649B (zh) | 终端设备管理方法、服务器及终端设备 | |
CN107528891B (zh) | 一种基于WebSocket的自动集群方法及其系统 | |
CN114051041A (zh) | 一种基于RabbitMQ及MQTT的智慧农机系统及通信方法 | |
EP2003846A9 (en) | A method for reporting the user agent profile,the server, and the user terminal thereof | |
CN104468380A (zh) | 一种接入点设备与服务器交互的接口通信方法 | |
CN110380967B (zh) | 一种基于sse技术的服务器推送消息方法 | |
CN107508916B (zh) | 用于智能机器人的服务器链接管理方法 | |
CN109450907A (zh) | 基于websocket的通信系统搭建方法及装置 | |
CN113542324B (zh) | 一种消息推送方法和装置 | |
CN108259576B (zh) | 一种软硬件实时信息传输系统和方法 | |
CN116308671A (zh) | 基于mqtt协议的在线竞价方法、电子设备及存储介质 | |
CN108650286A (zh) | 一种基于Socket和WebSocket混合模式的服务器系统的实现方法 | |
CN113301088B (zh) | 消息处理方法、装置、系统、电子设备及可读存储介质 | |
CN109379443B (zh) | 一种面向物联网的分布式消息队列的实现方法 | |
CN113542404A (zh) | 一种政务大厅设备数据交换方法 | |
JP2014146876A (ja) | メッセージ配信システムおよびメッセージ配信方法 | |
CN114385372A (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 |