CN108140008B - 钢处理中间件的事件服务方法和框架*** - Google Patents
钢处理中间件的事件服务方法和框架*** Download PDFInfo
- Publication number
- CN108140008B CN108140008B CN201680062015.8A CN201680062015A CN108140008B CN 108140008 B CN108140008 B CN 108140008B CN 201680062015 A CN201680062015 A CN 201680062015A CN 108140008 B CN108140008 B CN 108140008B
- Authority
- CN
- China
- Prior art keywords
- event
- subscription
- task
- temporary
- 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
- 229910000831 Steel Inorganic materials 0.000 title claims abstract description 42
- 239000010959 steel Substances 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000012545 processing Methods 0.000 title claims description 58
- 238000013507 mapping Methods 0.000 claims abstract description 22
- 238000012217 deletion Methods 0.000 claims description 8
- 230000037430 deletion Effects 0.000 claims description 8
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 19
- 230000004044 response Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000011165 process development Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004886 process control Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000000543 intermediate Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/82—Architectures of general purpose stored program computers data or demand driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- 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/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Manufacturing & Machinery (AREA)
- Multimedia (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
根据本发明的实施方式的钢处理中间件的事件服务方法是由任务应用软件和事件框架执行的钢处理中间件的事件服务方法,该任务应用软件包括允许任务请求事件服务的应用编程接口(API)库,其中,该方法包括以下步骤:服务处理器对事件服务请求做出响应;基于定义事件ID和数据大小的事件定义信息来生成事件;以及如果关于所生成的事件的信息与请求订阅的订阅事件的信息相匹配,则根据事件管理器的映射数据将所生成的事件作为订阅事件发送至映射到订阅事件的订阅任务。
Description
技术领域
本公开内容涉及钢处理中间件的事件服务方法和框架***。
背景技术
中间件在钢处理控制中的功能是响应于由任务发出的请求来执行诸如存储和参考关于任务之间的通信的信息或关于处理控制的信息的处理并且管理当前正在运行的任务。
这样的任务可以是应用软件,其独立排他地负责分段的工厂控制功能,以提高***的性能和稳定性。
另外,为了协作,任务可以指示中间件创建事件并且可以接收由另一任务创建的事件。
通过以一对一的通信方式发送和接收消息来处理相关技术的钢处理中间件的事件服务,因此,当任务必须向多个任务发送事件时,可能需要延长的处理时间。
此外,钢处理中间件反复地创建/删除多项任务,并且在添加新的协作***时,必须将新的协作***的事件服务功能添加到钢处理中间件中。
因此,需要框架***为钢处理中间件的开发者提供用于开发事件服务方法和处理并且根据新的协作***进行维护的环境。
发明内容
技术问题
本公开内容的一方面可以提供一种框架***,该框架***被配置成提高钢处理中间件的事件服务的处理速度并且优化处理开发和管理环境。
另外,当通过发送和接收消息来处理事件服务时,可以保持兼容性。
技术方案
根据本公开内容的一方面,可以提供由任务应用软件和事件框架执行的钢处理中间件的事件服务方法,该任务应用软件包括允许任务发出事件服务请求的应用编程接口(API)库。事件服务方法可以包括:服务处理器对事件服务请求做出响应;基于定义事件ID和数据大小的事件定义信息来创建事件;以及如果关于所创建的事件的信息与关于所请求的订阅事件的信息一致,则根据事件管理器的映射数据将所创建的事件作为所请求的订阅事件发送至映射到所请求的订阅事件的订阅任务。
根据本公开内容的另一方面,可以提供一种钢处理中间件的事件服务框架***,该事件服务框架***由至少一个处理器实现并且包括任务应用软件和事件框架,该任务应用软件包括允许任务请求包括事件订阅的事件服务的API库。事件框架可以包括:服务处理器,其被配置成对事件服务请求做出响应;事件管理器,其被配置成管理定义事件ID和数据大小的事件定义信息并且管理其中所请求的订阅事件被映射到对应的订阅任务的映射数据;以及事件调度接口,其中,如果关于由服务处理器基于事件定义信息创建的事件的信息与关于所请求的订阅事件的信息一致,则事件调度接口可以将所创建的事件作为所请求的订阅事件发送至订阅任务。
有益效果
根据本公开内容的实施方式,事件服务方法和框架***可以提高钢处理中间件的事件服务的处理速度并且提供高效的处理开发和管理环境。
附图说明
图1(a)是示出处理钢处理中间件的事件服务的示例的示意图。
图1(b)是示出根据本公开内容的实施方式的使用钢处理中间件的事件服务框架***的事件服务处理过程的示意图。
图2是示出根据本公开内容的实施方式的钢处理中间件的事件服务框架***的框图。
图3是示出根据本公开内容的实施方式的钢处理中间件的事件服务框架***的应用编程接口(API)库的表格。
图4是具体示出根据本公开内容的实施方式的在钢处理中间件的事件服务框架***中包括的事件框架的框图。
图5是示出根据本公开内容的另一实施方式的钢处理中间件的事件服务框架***的框图。
图6是示出由图5所示的框架***处理的存储器互通服务的框图。
图7是示出图6中示出的存储器互通服务的流程图。
图8是示出根据本公开内容的实施方式的用于在事件服务框架***中处理事件创建请求的处理的时序图。
图9是示出根据本公开内容的实施方式的用于在事件服务框架***中处理事件接收请求的处理的时序图。
具体实施方式
现在将参照附图详细描述本公开内容的示例性实施方式。
然而,本公开内容可以以许多不同形式进行例示,并且本公开内容不应被解释为限于本文中阐述的具体实施方式。
将进一步理解的是,本文中使用的术语“包括”和/或“包含”表明存在所陈述的特征或组件,但不排除存在或者添加了一个或更多个其他特征或组件。
在以下实施方式中,后缀“-er”或“-or”用于指示执行某些任务的软件或硬件组件例如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。然而,后缀“-er”或者“-or”不限于软件或硬件组件。这种具有后缀“-er”或“-or”的组件可以被配置成驻留在可寻址存储介质上或者被配置成执行一个或更多个处理器。因此,这种具有后缀“-er”或“-or”的组件的示例可以包括软件组件、面向对象的软件组件、诸如类组件和任务组件的组件、处理、函数、属性、过程、子例程、程序代码段、驱动器、固件、微代码、电路***、数据、数据库、数据结构、表格、数组和变量。在具有后缀“-er”或“-or”的组件以及其他组件中提供的功能可以组合成更少的组件或者进一步划分成附加的组件。另外,具有后缀“-er”或“-or”的组件以及其他组件可以被实现为使得这些组件可以执行设备或***中的一个或更多个CPU。
图1(a)是示出钢处理中间件的事件服务处理过程的示例的示意图,图1(b)是示出根据本公开内容的实施方式的使用钢处理中间件的事件服务框架***的事件服务处理过程的示意图。
参照图1(a),钢处理中间件可以通过一对一的通信方法来处理事件服务。
详细地,当任务(A)将事件发送至多个任务B1至BN时,中间件响应于来自任务A的事件创建指令而创建事件并且将事件发送至任务B1,然后响应于来自任务A的事件创建指令再次创建事件并且将事件发送至任务B2。可以重复该处理,直到中间件将事件发送至任务BN为止。
相反地,参照1(b),在根据本公开内容的实施方式的使用钢处理中间件的事件服务框架***的事件处理过程中,任务A仅一次生成事件创建指令,然后中间件可以批量处理对于任务A的所有调度工作。
因此,采用本公开内容的实施方式的事件服务框架***的钢处理中间件可以具有提高的事件服务处理速度。
图2是示出根据本公开内容的实施方式的钢处理中间件的事件服务框架***的框图。
参照图2,本实施方式的钢处理中间件可以包括任务应用软件10和事件框架20。任务应用软件10可以包括多个任务11至1N以及应用编程接口(API)库100。事件框架20可以包括多个服务处理器21至2N、事件管理器200和事件调度接口300。
另外,根据设计,事件框架20可以包括以下中的至少一个:已发送事件队列池400、事件服务监测器500、框架管理器600和存储设备30。
多个任务11至1N可以是包括用于操作钢处理的2级***的钢处理操作逻辑的多个应用软件,并且任务11至1N中的每一个可以调用专用于事件框架20的事件服务的API以接收事件服务。此处,用于钢处理的2级***利用任务11至1N、钢处理中间件,并且1级、2级和3级***组成钢处理自动化***。
用于钢处理的1级***在连接到钢厂的生产处理的低级别处执行单元设备控制、顺序控制和PID控制。为此,用于钢处理的1级***可以包括编程逻辑控制器(PLC)、分布式控制***(DSC)、数字直接控制器(DDC)、传感器等。
此外,用于钢处理的3级***可以是用于合同/订单管理、生产/处理管理和质量设计的业务***,并且可以包括企业资源计划(ERP)***和制造执行***(MES)。
API库100是根据作为使用中间件服务来执行逻辑处理的主代理的任务的请求而被调用的一组编程函数,并且每个任务可以调用对应的API以向事件框架20请求包括事件服务的各种服务。
API库100可以包括API,任务可以通过API向事件框架20请求包括事件定义、事件订阅、事件订阅取消、事件创建、事件接收和事件定义删除的事件服务。稍后将参照图3根据实施方式描述API库100可以包括的特定API。
响应于任务应用软件10的API的事件服务请求,可以分配多个服务处理器21至2N。
事件管理器200可以管理事件定义信息并且可以管理关于请求的订阅事件和对应的订阅任务之间的映射的数据。本文中,表述“管理某事物”是指创建、删除和改变该事物。此处,事件定义信息包括事件标识(ID)以及关于可以从任务发送至用于处理事件服务的事件框架20(请参见图2)的变量数据的数据信息。此处,数据信息可以指示变量数据的大小。另外,事件管理器200可以响应于服务处理器21至2N的请求来提供事件定义信息和映射数据。
如果创建了订阅事件,则事件调度接口300可以根据映射数据将订阅事件发送至对应的订阅任务。
已发送事件队列池400可以包括多个已发送事件队列,所述多个已发送事件队列等待直到订阅任务接收到由事件调度接口300发送的订阅事件为止。
事件服务监测器500可以监测事件管理器200、事件调度接口300和已发送事件队列池400,以将与订阅事件的状态有关的信息发送至任务应用软件10。
当事件框架20工作时,首先创建框架管理器600,并且框架管理器600可以在初始化处理之后创建事件框架20的所有组件,并且当事件框架20停止工作时,框架管理器600可以收集分配给事件框架20的组件的资源。
存储设备30可以存储设置数据列表31,该设置数据列表31是包含用于控制事件框架20的组件的处理的设置值的文件数据。另外,设置数据列表31可以包括包含关于订阅事件和订阅任务的事件设置值和映射数据的事件***信息。
后面将参照图4描述事件管理器200、事件调度接口300和已发送事件队列池400的具体示例。
图3是示出根据本公开内容的实施方式的钢处理中间件的事件服务框架***的API库的表格。
参照图3,API库可以包括可以请求事件服务的API,所述事件服务包括:事件定义、事件订阅、事件订阅取消、事件创建、事件接收、事件定义删除、已发送但尚未接收的事件的特定于任务的数目、已发送但尚未接收的事件的特定于任务的列表、订阅事件的特定于任务的列表、订阅任务的特定于事件的列表、已发送事件队列的初始化、事件设置的添加、事件设置的删除、事件订阅任务设置的添加、事件订阅任务设置的删除以及事件***设置。
在下文中,将逐一描述API的功能。事件定义可以命令事件管理器(请参见图2中的附图标记200)在用于确定任务之间的协作的事件框架(请参见图2中的附图标记20)中创建事件定义信息。此处,事件定义信息包括事件ID以及关于可以从任务发送至用于处理事件服务的事件框架(请参见图2中的附图标记20)的变量数据的数据信息。此处,数据信息可以指示变量数据的大小。
事件订阅可以命令事件框架创建关于订阅任务所请求的订阅事件的信息。如果关于创建的事件的信息与关于订阅事件的信息一致,则事件框架可以将订阅事件发送至订阅任务。
事件订阅取消可以命令事件框架取消对于执行逻辑处理的任务不是必需的订阅事件的订阅。
事件创建可以命令事件框架基于事件定义信息来创建事件,并且将事件ID和相关的变量数据发送至订阅任务。事件创建使用由事件定义在事件框架中定义的事件定义信息。也就是说,由事件创建所创建的每个事件与事件框架中创建的多条事件定义信息中的一条事件定义信息一致,从而具有事件ID和对应的数据大小。
事件接收可以向事件框架通知订阅任务处于用于接收订阅事件的待命模式。
事件定义删除可以命令事件框架删除事件框架管理的订阅事件信息和事件定义信息。
已发送但尚未接收的事件的特定于任务的数目可以请求事件框架针对订阅任务发送存储在已发送事件队列池(请参见图2中的附图标记400)中的事件的数目。
已发送但尚未接收的事件的特定于任务的列表可以请求事件框架针对订阅任务发送关于存储在已发送事件队列池中的事件的信息。
订阅事件的特定于任务的列表可以请求事件框架发送关于订阅任务已经确定要订阅的订阅事件的信息。
订阅任务的特定于事件的列表可以请求事件框架发送关于与订阅事件对应的订阅任务的信息。
已发送事件队列的初始化可以命令事件框架通过删除已发送事件队列池的所有已发送事件队列来初始化已发送事件队列池。
事件设置的添加和事件设置的删除可以命令事件框架向存储设备(请参见图2中的附图标记30)中存储的设置数据列表(请参见图2中的附图标记31)中添加事件设置值或者从所述设置数据列表中删除事件设置值。
事件订阅任务设置的添加和事件订阅任务设置的删除可以命令事件框架修改关于在存储设备中存储的设置数据列表中包括的订阅事件和订阅任务的映射数据。
事件***设置可以命令事件框架的事件管理器(请参见图2中的附图标记200)重建事件的***。
包括这些API的API库可以为钢处理中间件的开发者提供高效的处理开发和维护环境。
图4是具体示出根据本公开内容的实施方式的在钢处理中间件的事件服务框架***中包括的事件框架的框图。
参照图4,示出了根据本公开内容的实施方式的在钢处理中间件的事件服务框架***中包括的事件管理器200、事件调度接口300和已发送事件队列池400的具体示例。
事件管理器200可以包括事件***访问调整器210、事件设置数据管理器220、事件定义管理器230、订阅任务-事件映射器240和事件-订阅任务映射器250。
事件调度接口300可以包括临时待命队列管理器310、多个临时待命队列访问调整器311、312和313、多个临时待命队列321、322和323、事件发送器管理器330、多个事件发送器331、332和333以及临时待命队列选择器340。
已发送事件队列池400可以包括多个已发送事件队列管理器410、420和430、多个已发送事件队列访问调整器411、421和431以及多个已发送事件队列412、422和432。
在图4中,每组多个组件被示出为具有三个组件。然而,这是用于描述的示例,而不应被认为出于限制的目的。例如,组件的数目可以随着事件框架20的事件服务处理过程而变化。每个组中的多个组件可以执行相同的功能,并且因此可以在假设每个组中存在单个组件的情况下进行描述。
为了保证事件定义信息和其中订阅事件被映射到对应的订阅任务的映射数据的完整性,当服务处理器21至2N添加/删除/搜索事件定义信息和映射数据时,事件***访问调整器210可以授权服务处理器21至2N访问事件定义信息和映射数据。
事件设置数据管理器220可以获取或者修改关于订阅事件和订阅任务的事件设置值和映射数据。
事件定义管理器230可以通过接收由事件设置数据管理器220获取的事件设置值来创建事件定义信息,或者可以响应于来自任务应用软件10的API的请求来创建或者删除事件定义信息。
订阅任务-事件映射器240可以管理其中任务数据具有优先级的映射数据。也就是说,订阅任务-事件映射器240可以管理映射数据,使得还可以搜索映射到要搜索的订阅任务的订阅事件。
事件-订阅任务映射器250可以管理其中事件数据具有优先级的映射数据。也就是说,事件-订阅任务映射器250可以管理映射数据,使得还可以搜索映射到要搜索的订阅事件的订阅任务。
临时待命队列管理器310可以创建/删除临时存储事件的临时待命队列321,并且可以管理关于临时待命队列321的状态的信息。
临时待命队列访问调整器311可以调整访问权限以防止临时待命队列管理器310和事件发送器331同时访问临时待命队列321,并且因此维护存储在临时待命队列321中的订阅事件的完整性。
临时待命队列321可以被创建为对应于事件发送器331并且可以临时存储订阅事件。事件发送器331可以将订阅事件发送至对应的订阅任务。
事件发送器管理器330可以创建/删除事件发送器331并且可以管理关于事件发送器331的状态的信息。
临时待命队列选择器340从临时待命队列管理器310获取关于临时待命队列321的状态的信息,并且将事件发送器331确定为发送订阅事件的事件发送器。之后,服务处理器21至2N可以将订阅事件存储在临时待命队列321中,并且然后可以请求事件发送器管理器330执行发送处理。
已发送事件队列管理器410可以管理关于已发送事件队列412的状态的信息。已发送事件队列访问调整器411可以调整访问权限以防止从服务处理器和事件发送器301同时访问,并且因此维护存储在已发送事件队列412中的订阅事件的完整性。
已发送事件队列412可以存储由事件调度接口300发送的订阅事件,使得订阅事件可以等待,直到订阅任务接收订阅事件为止。
另外,这样的订阅事件可以是包括事件ID和变量数据的变量事件消息40。
图5是示出根据本公开内容的另一实施方式的钢处理中间件的事件服务框架***的框图。
当与图2所示的框架***相比时,图5所示的框架***还包括用于发送和接收消息的API、互通接口700、消息管理器800和存储器管理器900。
框架***的其他结构可以从参照图2提供的框架***的描述中理解,因此将省略对其重复的描述。
如图5所示,API库100可以具有下述API,所述API具有消息发送功能和消息接收功能,使得任务可以向其他对象(例如,事件框架20)发送消息并且可以从其他对象接收消息。
另外,可以响应于任务应用软件10的API的事件服务请求来分配多个服务处理器21至2N。此处,可以通过诸如事件订阅或创建之类的API或者通过消息发送或接收来进行事件服务请求。
详细地,当从任务11至1N接收到消息时,服务处理器21至2N对消息做出响应,然后事件框架20可以创建事件并且发送订阅事件。
另外,事件调度接口300可以通过将订阅事件转换成消息并且将该消息发送至订阅任务来发送订阅事件。
也就是说,当任务11至1N请求事件创建时,服务处理器21至2N可以对该请求做出响应,然后事件框架20可以将所创建的事件转换成消息,并且可以将该消息发送至订阅任务。
为此,互通接口700将服务处理器21至2N、事件管理器200,消息管理器800和存储器管理器900彼此连接,使得包括消息的发送和接收、事件的创建和订阅事件的发送在内的事件服务可以以交互方式处理。另外,消息管理器800可以根据互通接口700的指令来控制消息的发送和接收。
存储器管理器900是由事件框架20提供的用于存储器互通服务的组件,并且将在下面参照图6进行描述。
图6是示出由图5所示的框架***处理的存储器互通服务的框图。
参照图6,用于单元设备控制的PLC是包括在钢处理1级***中的组件,并且PLC的存储器可以由任务应用软件监测。任务应用软件可以根据事件服务请求运行,并且在这种情况下,PLC存储器的信息可以被API库100包括在消息中,然后被发送至事件框架20。另外,该消息可以包括任务ID。
服务处理器21可以对存储器信息中包括的服务请求做出响应。
由于存储器信息以消息的形式发送至事件框架20,因此互通接口700将存储器信息发送至消息管理器800以执行存储器互通服务,并且消息管理器800可以将存储器信息递送至存储器管理器900。
存储器管理器900可以存储PLC的存储器信息。如果新的存储器信息920从消息管理器800被发送至存储器管理器900,则存储器管理器900可以将新的存储器信息920与先前存储的存储器信息910进行比较以确定是否满足事件标准。另外,如果满足事件标准,则存储器管理器900可以将关于要创建的事件的信息递送至服务处理器,并且可以命令创建事件。此后,已接收到关于事件的信息的服务处理器可以创建事件。
图7是示出图6中示出的存储器互通服务的流程图。
首先,任务应用软件可以检测PLC的存储器区域中的变化(S710),并且可以通过API库100向事件框架20发送服务请求。通过将包括关于存储器区域中的变化的存储器信息的消息发送到事件框架20来进行服务请求(S720)。之后,服务处理器对服务请求做出响应(S730)。
接下来,确定服务请求是否为存储器互通请求(S740),如果服务请求是存储器互通请求,则将存储器信息与先前存储的存储器信息进行比较(S750)。如果比较结果不满足事件标准,则更新存储器信息(S754),如果比较结果满足事件标准,则将它确定为事件服务(S760)。
如果它被确定为事件服务,则可以进行事件创建请求以发送订阅事件(S770),如果它未被确定为事件服务,则可以执行消息处理以发送消息(S780)。
图8是示出根据本公开内容的实施方式的用于在事件服务框架***中处理事件创建请求的处理的时序图。图8中所示的处理是非限制性示例。
参照图8,如果任务请求用于事件服务的服务处理器创建事件(S810),则服务处理器可以请求事件定义管理器发送事件定义信息(S831),并且可以接收对事件定义信息请求的响应(S832)。替选地,为了保证事件定义信息的数据完整性,服务处理器可以在请求事件定义信息之前向事件***访问调整器请求访问事件定义信息(S821),并且可以获得对访问事件定义信息的许可(S822)。
服务处理器使用事件定义信息来创建具有与事件定义信息中的一条一致的信息的事件。
另外,服务处理器请求临时待命队列选择器分配待命队列(S841)。然后,临时待命队列选择器可以向临时待命队列管理器请求待命队列信息(S842),并且可以接收对待命队列信息请求的响应(S843)。临时待命队列选择器可以从对待命队列信息请求的响应中获取关于临时待命队列的状态信息,并且可以确定将发送订阅事件的事件发送器。之后,临时待命队列选择器可以向服务处理器回复已经分配了待命队列(S844)。
在接收到报告完成待命队列分配的回复之后,服务处理器可以将请求创建的事件作为订阅事件存储在临时待命队列中。之后,服务处理器可以请求事件发送器管理器处理订阅事件(S861)并且可以接收订阅事件处理响应(S862)。另外,由于服务处理器和事件发送器可以同时访问临时待命队列,因此,为了保证临时待命队列的数据完整性,服务处理器可以在将请求创建的事件作为订阅事件存储在临时待命队列中之前向临时待命队列访问管理器请求访问临时待命队列(S851),并且可以获得对访问临时待命队列的许可(S852)。
在接收到订阅事件处理响应之后,服务处理器可以向任务回复已经创建了事件(S870)。
另外,在订阅事件处理响应之后,事件发送器管理器可以请求事件发送器执行发送处理(S880)。
因此,根据本公开内容的实施方式,事件服务框架***可以存储可以响应于一次进行的事件创建请求来批量发送的订阅事件,并且可以回复已经创建了事件。因此,可以减少在请求事件创建之后任务等待事件创建完成的响应等待时间。
图9是示出根据本公开内容的实施方式的用于在事件服务框架***中处理事件接收请求的处理的时序图。图9中所示的处理是非限制性示例。
参照图9,如果任务向服务处理器请求事件服务以接收事件(S910),则服务处理器可以请求已发送事件队列访问调整器检查订阅事件(S921)并且可以接收订阅事件响应。如果没有对应的订阅事件,即,如果事件发送器等待调度请求,则已发送事件队列访问调整器可以向订阅事件检查请求回复没有订阅事件(S922)。
如参照图8所述,如果事件发送器管理器请求事件发送器执行发送处理(S880),则事件发送器可以采用存储在临时待命队列中的订阅事件。这可以通过复制关于订阅事件的信息和数据来执行。另外,为了保证临时待命队列的数据完整性,服务处理器可以在采用订阅事件之前向临时待命队列访问调整器请求访问临时待命队列(S931),并且可以获得对访问临时待命队列的许可(S932)。
接下来,事件发送器可以向已发送事件队列访问调整器请求访问已发送事件队列(S941),并且可以获得对访问已发送事件队列的许可(S942)。
之后,事件发送器可以将订阅事件存储在已发送事件队列中,并且可以将存储的订阅事件的状态发送至已发送事件队列访问调整器(S950)。
在订阅事件被存储在已发送事件队列中之后,已发送事件队列访问调整器可以向服务处理器通知订阅事件(S960)。
另外,如果服务处理器请求已发送事件队列访问调整器检查订阅事件(S921'),则已发送事件队列访问调整器可以肯定地回复服务处理器(S970)。
接下来,服务处理器可以对于事件接收请求发送事件接收回复(S980)。也就是说,请求了事件接收的任务可以接收订阅任务。
尽管以上参照附图示出和描述了本公开内容的实施方式,但是本发明的范围不限于此,并且对于本领域技术人员来说明显的是,可以在不脱离由所附权利要求书限定的本发明的范围的情况下进行修改和变化。
Claims (9)
1.一种钢处理中间件的事件服务方法,所述事件服务方法由任务应用软件和事件框架执行,所述任务应用软件包括允许任务发出事件服务请求的应用编程接口API库,所述事件服务方法包括:
服务处理器对所述事件服务请求做出响应;
基于定义事件ID和数据大小的事件定义信息来创建事件;以及
如果关于所创建的事件的信息与关于所请求的订阅事件的信息一致,则通过参考事件管理器的映射数据将所创建的事件作为所请求的订阅事件发送至映射到所请求的订阅事件的订阅任务,
其中,所述事件管理器包括:
事件定义管理器,其被配置成创建和删除所述事件定义信息;
订阅任务-事件映射器,其被配置成管理其中任务数据具有优先级的映射数据;以及
事件-订阅任务映射器,其被配置成管理其中事件数据具有优先级的映射数据;
其中,将所创建的事件作为所请求的订阅事件发送至所述订阅任务是通过经由事件调度接口发送所请求的订阅事件来执行的,或者是在将所请求的订阅事件转换成消息之后执行的;
其中,所述事件调度接口包括:
多个事件发送器,其被配置成将所述订阅事件发送至与所述订阅事件对应的订阅任务;以及
被创建为与所述多个事件发送器中的每一个对应的多个临时待命队列,所述多个临时待命队列用于临时存储所述订阅事件;
其中,
临时待命队列管理器创建或删除临时存储事件的所述多个临时待命队列,并且管理关于所述多个临时待命队列的状态的信息;
事件发送器管理器创建或删除所述多个事件发送器,并且管理关于所述多个事件发送器的状态的信息;并且
多个临时待命队列访问调整器调整访问权限,以防止所述临时待命队列管理器和所述事件发送器同时访问所述临时待命队列,并且维护存储在所述临时待命队列中的订阅事件的完整性。
2.根据权利要求1所述的事件服务方法,其中,事件的创建包括:
如果所述事件服务请求包括存储器信息,则存储器管理器将所述存储器信息与先前存储的存储器信息进行比较,以确定是否满足事件标准;以及
如果满足所述事件标准,则所述服务处理器基于定义事件ID和数据大小的所述事件定义信息来创建事件。
3.一种钢处理中间件的事件服务框架***,所述事件服务框架***由至少一个处理器实现并且包括任务应用软件和事件框架,所述任务应用软件包括允许任务发出事件服务请求的API库,所述事件框架包括:
服务处理器,其被配置成对所述事件服务请求做出响应;
事件管理器,其被配置成管理定义事件ID和数据大小的事件定义信息,并且管理其中关于所请求的订阅事件的信息被映射到对应的订阅任务的映射数据;以及
事件调度接口,其中,如果关于由所述服务处理器基于所述事件定义信息创建的事件的信息与关于所请求的订阅事件的信息一致,则所述事件调度接口将所创建的事件作为所请求的订阅事件发送至订阅任务,
其中,所述事件管理器包括:
事件定义管理器,其被配置成创建和删除所述事件定义信息;
订阅任务-事件映射器,其被配置成管理其中任务数据具有优先级的映射数据;以及
事件-订阅任务映射器,其被配置成管理其中事件数据具有优先级的映射数据;
其中,所述事件调度接口包括:
多个事件发送器,其被配置成将所述订阅事件发送至与所述订阅事件对应的订阅任务;以及
被创建为与所述多个事件发送器中的每一个对应的多个临时待命队列,所述多个临时待命队列用于临时存储所述订阅事件;
其中,
临时待命队列管理器创建或删除临时存储事件的所述多个临时待命队列,并且管理关于所述多个临时待命队列的状态的信息;
事件发送器管理器创建或删除所述多个事件发送器,并且管理关于所述多个事件发送器的状态的信息;并且
多个临时待命队列访问调整器调整访问权限,以防止所述临时待命队列管理器和所述事件发送器同时访问所述临时待命队列,并且维护存储在所述临时待命队列中的订阅事件的完整性。
4.根据权利要求3所述的事件服务框架***,还包括存储器管理器,其中,如果所述事件服务请求包括存储器信息,则所述存储器管理器将所述存储器信息与先前存储的存储器信息进行比较,以确定是否满足事件标准并且命令创建事件。
5.根据权利要求3所述的事件服务框架***,还包括消息管理器,所述消息管理器被配置成将所述订阅事件转换成消息并发送所述消息。
6.根据权利要求3所述的事件服务框架***,其中,所述API库提供API,任务通过所述API请求事件服务,所述事件服务包括:用于创建事件定义信息的事件定义、事件订阅、事件订阅取消、基于事件定义信息的事件创建、事件接收和事件定义删除。
7.根据权利要求3所述的事件服务框架***,其中,所述事件框架还包括已发送事件队列池,所述已发送事件队列池包括多个已发送事件队列,由所述事件调度接口发送的订阅事件在所述已发送事件队列中等待,直到订阅任务接收到所述订阅事件为止。
8.根据权利要求7所述的事件服务框架***,其中,所述事件框架还包括事件服务监测器,所述事件服务监测器被配置成监测所述事件管理器、所述事件调度接口和所述已发送事件队列池,以将关于所述订阅事件的状态的信息发送至所述任务应用软件。
9.根据权利要求3所述的事件服务框架***,其中,所述事件调度接口还包括临时待命队列选择器,所述临时待命队列选择器被配置成选择发送所述订阅事件的事件发送器。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20150146725 | 2015-10-21 | ||
KR10-2015-0146725 | 2015-10-21 | ||
KR1020160132929A KR101889159B1 (ko) | 2015-10-21 | 2016-10-13 | 철강 공정 미들웨어의 이벤트 서비스 방법 및 프레임워크 시스템 |
KR10-2016-0132929 | 2016-10-13 | ||
PCT/KR2016/011586 WO2017069468A1 (ko) | 2015-10-21 | 2016-10-14 | 철강 공정 미들웨어의 이벤트 서비스 방법 및 프레임워크 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108140008A CN108140008A (zh) | 2018-06-08 |
CN108140008B true CN108140008B (zh) | 2022-08-23 |
Family
ID=58743398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680062015.8A Active CN108140008B (zh) | 2015-10-21 | 2016-10-14 | 钢处理中间件的事件服务方法和框架*** |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101889159B1 (zh) |
CN (1) | CN108140008B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102509402B1 (ko) * | 2020-12-09 | 2023-03-13 | 주식회사 에이앤에이 | 플랫폼 상의 이벤트 처리 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6549956B1 (en) * | 1998-11-30 | 2003-04-15 | Hewlett Packard Company | Mechanism for connecting disparate publication and subscribe domains via the internet |
CN104618432A (zh) * | 2014-12-30 | 2015-05-13 | 北京红马传媒文化发展有限公司 | 一种事件发送与接收的处理方法和处理*** |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7774792B2 (en) * | 2005-07-05 | 2010-08-10 | Microsoft Corporation | Automatic create, update and delete event publishing |
US7941448B2 (en) * | 2005-08-26 | 2011-05-10 | At&T Intellectual Property Ii, Lp | System and method for event driven publish-subscribe communications |
KR101091325B1 (ko) | 2008-12-26 | 2011-12-07 | 주식회사 포스코 | 철강 공정 제어를 위한 미들웨어 및 그 미들웨어에서의 서비스 제공 방법 |
US9373102B2 (en) * | 2010-07-30 | 2016-06-21 | Mcgraw Hill Financial, Inc. | System and method using a simplified XML format for real-time content publication |
US20130067024A1 (en) * | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Distributing multi-source push notifications to multiple targets |
US9921882B2 (en) * | 2013-04-17 | 2018-03-20 | Nec Corporation | Information processing system, deployment method, processing device, and deployment device |
US10360523B2 (en) * | 2013-11-18 | 2019-07-23 | Nuwafin Holdings Ltd | System and method for executing business services and enhancing business performance through a business process modeling notation |
CN103927218B (zh) * | 2014-04-30 | 2017-07-04 | 广州唯品会网络技术有限公司 | 事件分发方法及*** |
CN103944924B (zh) * | 2014-05-15 | 2017-04-19 | 重庆邮电大学 | 一种基于RESTful的泛在网发布订阅中间件模型的方法 |
-
2016
- 2016-10-13 KR KR1020160132929A patent/KR101889159B1/ko active IP Right Grant
- 2016-10-14 CN CN201680062015.8A patent/CN108140008B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6549956B1 (en) * | 1998-11-30 | 2003-04-15 | Hewlett Packard Company | Mechanism for connecting disparate publication and subscribe domains via the internet |
CN104618432A (zh) * | 2014-12-30 | 2015-05-13 | 北京红马传媒文化发展有限公司 | 一种事件发送与接收的处理方法和处理*** |
Non-Patent Citations (3)
Title |
---|
可扩展发布/订阅中间件技术研究;王稳军等;《指挥信息***与技术》;20100630(第03期);45-49 * |
基于XML和发布/订阅机制的主动服务***;廖小平等;《计算机应用与软件》;20090115(第01期);205-209 * |
消息中间件在电力调度自动化***中的应用;潘国伟等;《电气应用》;20080520(第10期);61-64 * |
Also Published As
Publication number | Publication date |
---|---|
KR101889159B1 (ko) | 2018-08-17 |
KR20170047169A (ko) | 2017-05-04 |
CN108140008A (zh) | 2018-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10826979B2 (en) | Apparatus and method for logically grouping client nodes in an IoT environment using client identifiers | |
CN107729139B (zh) | 一种并发获取资源的方法和装置 | |
CN108090731B (zh) | 一种信息处理方法及设备 | |
CN112486648A (zh) | 任务调度方法、装置、***、电子设备和存储介质 | |
US11922236B2 (en) | Producer-side prioritization of message processing | |
EP3593496B1 (en) | System and method for low latency node local scheduling in distributed resource management | |
CN101645022B (zh) | 用于多个集群的作业调度管理***及方法 | |
US10686728B2 (en) | Systems and methods for allocating computing resources in distributed computing | |
US9535756B2 (en) | Latency-hiding context management for concurrent distributed tasks in a distributed system | |
WO2018108001A1 (en) | System and method to handle events using historical data in serverless systems | |
JP2011065645A (ja) | マルチコアプロセッサシステム | |
US10080233B2 (en) | Method for providing M2M data | |
US20210389995A1 (en) | Information processing system and control method | |
CN101424941B (zh) | 一种控制实现方法和*** | |
JP2023511467A (ja) | 機械学習ワークロードのためのタスクスケジューリング | |
CN108140008B (zh) | 钢处理中间件的事件服务方法和框架*** | |
CN114168297A (zh) | 一种归集任务调度方法、装置、设备及介质 | |
CN112711522B (zh) | 一种基于docker的云测试方法、***及电子设备 | |
US20200293370A1 (en) | Usecase specification and runtime execution to serve on-demand queries and dynamically scale resources | |
CN109787792B (zh) | 一种管理分布式业务集群的*** | |
CN112486638A (zh) | 用于执行处理任务的方法、装置、设备和存储介质 | |
CN115422277A (zh) | 数据源连接池控制方法、装置及服务器 | |
CN114490000A (zh) | 任务处理方法、装置、设备及存储介质 | |
CN117290083A (zh) | 资源调整方法、装置、计算设备集群及可读存储介质 | |
US11915041B1 (en) | Method and system for sequencing artificial intelligence (AI) jobs for execution at AI accelerators |
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 | ||
CP03 | Change of name, title or address |
Address after: Seoul City, Korea Patentee after: POSCO Holdings Co.,Ltd. Address before: Gyeongbuk, South Korea Patentee before: Style Society POSCO |
|
CP03 | Change of name, title or address | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230612 Address after: Gyeongbuk, South Korea Patentee after: POSCO Co.,Ltd. Address before: Seoul City, Korea Patentee before: POSCO Holdings Co.,Ltd. |
|
TR01 | Transfer of patent right |