CN109799981B - 一种基于执行链的集成系统及方法 - Google Patents
一种基于执行链的集成系统及方法 Download PDFInfo
- Publication number
- CN109799981B CN109799981B CN201811561047.XA CN201811561047A CN109799981B CN 109799981 B CN109799981 B CN 109799981B CN 201811561047 A CN201811561047 A CN 201811561047A CN 109799981 B CN109799981 B CN 109799981B
- Authority
- CN
- China
- Prior art keywords
- execution
- chain
- service
- equipment
- nodes
- 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
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于执行链的集成系统及方法,涉及信息集成技术领域,解决了现有协同软件开发量大,跨组织协同困难,集成耦合度高,重复开发大量存在的问题。本发明把传统使用API进行对接的系统集成方法,简化为使用执行链进行集成;这样使系统有更低的耦合度,更明确的客户端/服务端功能划分,明确的交互对象有利于系统模块的重复利用,有利于标准化服务的定制与开发。
Description
技术领域
本发明涉及信息集成技术领域,具体涉及一种基于执行链的集成系统及方法。
背景技术
系统集成(SI,System Integration),是通过结构化的综合布线系统和计算机网络技术,将各个分离的设备(如个人电脑)、功能和信息等集成到相互关联的、统一和协调的系统之中,使资源达到充分共享,实现集中、高效、便利的管理。
系统集成包括计算机软件、硬件、操作系统技术、数据库技术、网络通讯技术等各方面的技术。当前流行的中小系统集成是以关系数据库为核心,在数据库的基础上建立软件服务,然后软件服务以API的形式开放接口,提供服务。各种应用程序或终端使用用户接口接收操作请求,然后通过网络调用API,完成系统功能;造成处理逻辑复杂,独立性差,系统耦合度的要求非常高。
本发明使用一种链式存储结构,加上消息通知服务完成上述API调用过程,使整个系统有更简洁的处理逻辑,各个模块有更高的独立性,系统耦合度大幅度降低。在大规模流程系统,流程数据共享,跨部门系统,跨组织协同,等方面更有优势。
发明内容
本发明的目的在于:为解决现有协同软件开发量大,跨组织协同困难,集成耦合度高,重复开发大量存在的问题,提供了一种基于执行链的集成系统及方法。
为了实现上述目的,本发明采用的方案为:
一种基于执行链的集成系统,其特征在于:由UI设备,执行链库,项目服务设备,服务设备组成;
UI设备:用于操作员向执行链库发起记录一个执行节点的服务请求;
执行链库:用于存储大量的执行链,同时依照执行链上的项目管理标记,向项目服务设备发送消息通知;其中,执行链为一种数据结构,由多个节点组成,每个节点包含:操作人,操作号,结果,附件,所有的操作人,操作号,结果组成一条主链,而附件独立存储,在需要时依靠执行链ID和执行节点序号查询附件内容;
项目服务设备:用于接收消息通知,读取主链内容,然后依照内部规则进行操作;
服务设备:用于接项目服务设备发送的消息后,读取主链,然后提取服务需要处理的节点,读取附件内容,结合服务设备内部的数据内容进行处理后,向执行链回写1个或多个节点,完成服务处理。
一种基于执行链的集成方法,其特征在于:具体步骤如下:
步骤1:用户或设备启动流程,向执行链库请求记录一个执行节点;
步骤2:执行链库记录数据,然后向项目服务设备发送消息通知;
步骤3:项目服务接收消息通知,读取主链内容,然后依照内部规则进行操作,操作包括任务分配,设备消息分发,日志记录;
步骤4:服务设备接收项目服务设备发送的消息后,读取主链,然后提取服务需要处理的节点,读取附件内容,结合服务设备内部的数据内容进行处理,完成后,向执行链回写1个或多个节点,完成服务处理;
步骤5:判断请求是否结束,若否,返回步骤2,循环处理事件,若是,结束流程。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、本发明简化了系统结构使系统从繁杂的API调用中独立出各个独立运行的服务,各个服务只需面向执行链;
2、本发明要求明确的岗位报告或服务请求,可以推动各个工作岗位的报告标准化;
3、本发明中的执行链自然地记录了流程的全生命周期数据,可按照逻辑直接导出为数据库表,避免了数据分析时对异构数据库的ETL操作;
4、本发明中的执行链数据与服务内部数据分离,逻辑独立,可轻松实现不同部门,不同企业,不同行业,不同软件系统之间的任务协同。
5、本发明通过执行链上设计的请求、响应编码,可轻松实现流程的并发操作,可高效地驱动协同软件运行;
6、使用RFID,IC卡,二维码,U盘等小容量存储器,存储执行链,可以让流程在离线环境下运行。
7、“执行链库”可以采用分离式部署,让“主链”完全或部分公开,而“执行节点”的附件保留在局域网内部,这样可以让具体流程只能在局域网中正常执行,而在局域网外部可以驱动流程运行,但无法访问敏感数据。再加上离线流程的支持能力,可以在系统中按照需要提供安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明的执行链数据结构示意图;
图2为本发明的实施例1中的电商销售流程示意图;
图3为本发明的实施例1中商品在生产线上的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
一种基于执行链的集成系统,由UI设备,执行链库,项目服务设备,服务设备组成;
UI设备:用于操作员向执行链库发起记录一个执行节点的服务请求;
执行链库:用于存储大量的执行链,同时依照执行链上的项目管理标记,向项目服务设备发送消息通知;其中,执行链为一种数据结构,由多个节点组成,每个节点包含:操作人,操作号,结果,附件,所有的操作人,操作号,结果组成一条主链,而附件独立存储,在需要时依靠执行链ID和执行节点序号查询附件内容;
项目服务设备:用于接收消息通知,读取主链内容,然后依照内部规则进行操作;
服务设备:用于接项目服务设备发送的消息后,读取主链,然后提取服务需要处理的节点,读取附件内容,结合服务设备内部的数据内容(“数据内容”是一个抽象词语,对不同的服务有不同的内容。比如视频网站,它管理的是视频文件,那么这个视频网站可以依照要求,写入视频地址,如果是地理信息系统,它会写入一个GIS坐标,如果是电子商务网站,则会回写满足要求的商品信息。对于SAAS服务提供商,一方面它会大规模管理本服务相关的数据资源,另一方面,针对一个有效的需求请求单,SAAS服务会从自己的资料库中筛选出满足需求的一份或多份结果,以满足客户需求)进行处理后,向执行链回写1个或多个节点,完成服务处理。
一种基于执行链的集成方法,具体步骤如下:
步骤1:用户或设备启动流程,向执行链库请求记录一个执行节点;
步骤2:执行链库记录数据,然后向项目服务设备发送消息通知;
步骤3:项目服务接收消息通知,读取主链内容,然后依照内部规则进行操作,操作包括任务分配,设备消息分发,日志记录;
步骤4:服务设备接收项目服务设备发送的消息后,读取主链,然后提取服务需要处理的节点,读取附件内容,结合服务设备内部的数据内容进行处理,完成后,向执行链回写1个或多个节点,完成服务处理;
步骤5:判断请求是否结束,若否,返回步骤2,循环处理事件,若是,结束流程。
执行链:一种数据结构,由多个节点组成,每个节点包含:操作人,操作号,结果,操作时间,附件。其中操作人,操作号,结果,操作时间组成“主执行节点”,一条执行链上的所有“主执行节点”组成一个数组,这个数组加上“链头”称为“主链”。其中“链头”包含“ID”,节点个数,同步时间戳,时间偏移标记等。附件独立存储,由ID及节点序号标记。一般情况下,主链会被整体全部查询,而且它只能附加,不能修改删除。执行链是一种区别于文件系统,数据库二维表,对象数据库等数据管理逻辑的数据管理接口。它一方面有对象数据库的各种优势:表达能力强,可维护性强,无需数据库设计,易大规模扩展等等,另一方面执行链的特殊结构让他有了支持原子性和事务性的能力。
UI设备:人机交互设备可以是PC程序,移动设备,设备控制面板,电子按钮等等,它是操作员向系统发起服务请求的一种手段。UI设备通过网络与各种服务链接,在本发明的系统中,它可以只与“执行链库”交换数据,由项目服务调集资源完成协同;它也可以根据需要与特定的服务连接,调用这些服务的API,用以辅助UI设备运行,提高UI设备功能或增强体验。当UI设备内部包含执行链完整结构时,流程将可以在离线环境中运行。UI设备与服务设备可以直接交换数据,在执行链的末尾附加新的节点,同时向服务设备内部传输数据,让服务内部完成特定的数据集管理。
执行链库:存储大量执行链的设备,同时依照执行链上的项目管理标记,发送通知。“执行链库”是UI设备和后台服务间必然的通路,可以通过TCP,HTTP文件传输等等方式输入数据。在执行链的节点编号中有一段预留的项目管理操作号:操作号20-40为系统预留的项目相关操作号,其中操作号26表示纳入项目,其值表示项目ID,27表示退出项目,其值表示项目ID。当一条执行链变动时,“执行链库”会扫描“主链”查找所有未退出的项目,然后向这些项目发送执行链改变通知。
项目服务设备:一种资源的集合体,以及消息分发调度的处理装置。其内部一般包含:任务分配模块,用户管理模块,角色管理模块,服务管理模块等。项目服务可以是通过“通用流程引擎”配置而成的中小项目,也可以是通过代码固化任务分配规则的独立服务,后一种服务在面对高并发高吞吐量的需求时有更大的容量。
服务设备:是各种各样实现特定功能的软、硬件。服务设备是整个系统的基础,它可以是一个播放器,通过注册到项目,等待接收执行上的明确的播放指令;也可以是微信,支付宝这样的大规模数据处理服务;在本系统中,这种数据处理服务不再依靠API与客户端通讯,而是依靠项目服务,直接处理执行链上的服务请求。以支付为例,当用户确定订单后,存储服务计算订单的价格后发送支付请求单,在“项目服务设备”中通过指定的规则,该支付请求单会被通知到支付服务,支付服务接收到支付单后,依照支付单的内容,分别在向支付人发送支付消息,向收款人发送待收款消息;支付人按照支付系统内部规则完成支付后,支付系统向执行链回写支付完成节点。由于支付要求较高的安全性,在支付完成节点后可以附加数字签名节点,以避免非法的回写节点或非法的数据修改。在本系统中,“服务设备”可以在服务器端的内网中工作不用向公网公开端口;但实际部署时,由于服务可能需要向UI程序提供API用以辅助UI程序运行:所以在标准的流程处理逻辑之外,也会出现服务设备与UI设备直接通讯的C/S结构;这种结构不再是必须,但它可以让系统更灵活,也可以让许多旧系统得到重用。
以下结合实施例对本发明的特征和性能作进一步的描述。
实施例1
如图2所示为电商销售流程,即电商销售执行链,居中的执行链记录了电商销售过程中的各种单据,周围的操作员或软件服务以执行链为核心发送单据,接收请求,发送处理结果。
在执行链之外,Web服务器提供浏览器显示的文档。浏览器中,使用ajax方式与各种服务发生交互。Web服务器与应用服务器分离部署以提高系统的稳定性及安全性。
如图3所求为记录一个商品在生产线上的流程,即生产线信息集成,其中执行链记录了一个商品在生产线上的所有生产信息。考虑到生产线可能的恶劣环境,系统使用离线设备,在线设备复合工作的模式。执行链信息存储在标签中,标签可以是RFID卡,IC卡,二维码等,每经过一个生产步骤,执行链上即附加上该步骤上的生产信息。
其中的“流程引擎及相关服务”用以收集数据,监控整个生产线的运行情况。它可以不部署,或则是仅仅部署在某一个生产步骤的设备内部,还可以让它在不同的生产步骤内多次部署,以提供不同方向的监控和分析能力。
代理模式是指在云端和局域网内部同时部署两套“执行链库”,其中局域网中的一套处于“代理工作模式”。这时,终端设备的所有执行链结构操作都通过局域网内的“执行链库”进行操作。
代理模式下的“执行链库”,会缓存执行链,在终端请求时,会到云端检查版本是否同步,如果是,那么由代理返回执行链内容,否则更新后返回数据。代理可以通过配置,将操作号指定为“敏感节点”,当终端上传这些操作号的节点时,代理会拦截这些节点的附件,仅仅上传主节点内容到云端。这些“敏感节点”的附件只能在局域网内部时才能正确查询,在公网或其他局域网时,查询将会失败。通过这种方式提供一定的数据安全行。
代理模式下,还可以配置操作号为“隐藏节点”,这些“隐藏节点”将完全被存储在代理“执行链库”中,在查询时代理将自动合并这些“隐藏节点”,在更新时,自动拦截,隐藏节点会在云端存储一个占位节点,其他信息都将被隐藏。
流程信息:网由于执行链的特殊性,它可以在任意位置读取全部的流程信息。它并不要求在服务器端一定存在其数据备份。在实时数据处理过程中,各种软件服务不是流程必然需要的模块。依靠RFID等小容量存储器内的执行链,在系统的任何一个部位都可以读取到全部的历史数据信息。在执行链内部,操作号1-10记录了执行链相互引用的过程:
操作号1:表示分支流程;值:子链ID。
操作号2:表示流程组装;值:组装到的父执行链ID。
操作号3:表示拆分;值:拆分出来的子执行链ID。
操作号4:表示压缩;值:原始执行链ID,当前执行链是由原始执行执行链去除不相干节点后形成的新执行链。
操作号5:续接;值:父执行链ID。
操作号6:存储代理;值:类型---在执行链有内网代理的情况下,使用该节点描述本执行链的秘级,以支持执行链代理的存储策略。
通过这些链间引用信息,在逻辑上最终会形成事物的关联信息网。该信息网对数据分析有完整的数据逻辑,可以在上面建立复杂的统计模型。
附件:
在附件1中,记录第一版本的操作号编码,它仅作为岗位操作编码参考。其中包含了CMS,电商,仓库,财务,物流等方面的操作号。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (2)
1.一种基于执行链的集成系统,其特征在于:由UI设备,执行链库,项目服务设备,服务设备组成;
UI设备:用于操作员向执行链库发起记录一个执行节点的服务请求;
执行链库:用于存储大量的执行链,同时依照执行链上的项目管理标记,向项目服务设备发送消息通知;其中,执行链为一种数据结构,由多个节点组成,每个节点包含:操作人,操作号,结果,附件;所有的操作人,操作号,结果组成一条主链,而附件独立存储,在需要时依靠执行链ID和执行节点序号查询附件内容;
项目服务设备:用于接收消息通知,读取主链内容,然后依照内部规则进行操作,操作包括任务分配,设备消息分发,日志记录;
服务设备:用于接项目服务设备发送的消息后,读取主链,然后提取服务需要处理的节点,读取附件内容,结合服务设备内部的数据内容进行处理后,向执行链回写1个或多个节点,完成服务处理。
2.一种基于执行链的集成方法,其特征在于:具体步骤如下:
步骤1:用户或设备启动流程,向执行链库请求记录一个执行节点;
步骤2:执行链库记录数据,然后向项目服务设备发送消息通知;
其中,执行链为一种数据结构,由多个节点组成,每个节点包含:操作人,操作号,结果,附件;所有的操作人,操作号,结果组成一条主链,而附件独立存储,在需要时依靠执行链ID和执行节点序号查询附件内容;
步骤3:项目服务接收消息通知,读取主链内容,然后依照内部规则进行操作,操作包括任务分配,设备消息分发,日志记录;
步骤4:服务设备接收项目服务设备发送的消息后,读取主链,然后提取服务需要处理的节点,读取附件内容,结合服务设备内部的数据内容进行处理,完成后,向执行链回写1个或多个节点,完成服务处理;
步骤5:判断请求是否结束,若否,返回步骤2,循环处理事件,若是,结束流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811561047.XA CN109799981B (zh) | 2018-12-19 | 2018-12-19 | 一种基于执行链的集成系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811561047.XA CN109799981B (zh) | 2018-12-19 | 2018-12-19 | 一种基于执行链的集成系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109799981A CN109799981A (zh) | 2019-05-24 |
CN109799981B true CN109799981B (zh) | 2022-09-09 |
Family
ID=66557251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811561047.XA Active CN109799981B (zh) | 2018-12-19 | 2018-12-19 | 一种基于执行链的集成系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109799981B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116521400B (zh) * | 2023-07-04 | 2023-11-03 | 京东科技信息技术有限公司 | 文章信息处理方法、装置、存储介质及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105745675A (zh) * | 2013-11-29 | 2016-07-06 | 联邦快递服务公司 | 用于使用无线节点网络来管理物品的装运的方法和系统 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6745027B2 (en) * | 2000-12-22 | 2004-06-01 | Seekernet Incorporated | Class switched networks for tracking articles |
US8150818B2 (en) * | 2003-08-25 | 2012-04-03 | International Business Machines Corporation | Method and system for storing structured documents in their native format in a database |
CN101697214A (zh) * | 2009-11-02 | 2010-04-21 | 重庆大学 | 一种用于仪器仪表研发的集成管理系统及方法 |
US20120303398A1 (en) * | 2011-05-26 | 2012-11-29 | Entercoms, Inc. | Method for management of post-sales services supply chain |
CN103297381B (zh) * | 2012-02-22 | 2017-01-18 | 阿里巴巴集团控股有限公司 | 一种基于插件的业务访问方法及其系统 |
CN104168250B (zh) * | 2013-05-15 | 2018-06-15 | 腾讯科技(深圳)有限公司 | 基于cgi框架的业务流程控制方法及装置 |
US9904899B2 (en) * | 2014-08-27 | 2018-02-27 | Software Ag | Systems and/or methods for reactive, distributable, and extensible process execution |
CN104517189B (zh) * | 2014-12-26 | 2017-10-20 | 北京邮电大学 | 一种基于事件的工作流间协作的系统及方法 |
CN105554011A (zh) * | 2015-12-29 | 2016-05-04 | 杭州东信北邮信息技术有限公司 | Ims网络下应用服务器业务组合部署的实现方法和系统 |
CN105654251A (zh) * | 2016-02-19 | 2016-06-08 | 浪潮通用软件有限公司 | 一种erp领域的业务流实现方法 |
CN107944662B (zh) * | 2017-10-30 | 2020-09-11 | 贝壳找房(北京)科技有限公司 | 一种业务流程控制处理方法及装置 |
CN109002462B (zh) * | 2018-06-04 | 2020-11-27 | 北京明朝万达科技股份有限公司 | 一种实现分布式事务的方法及系统 |
-
2018
- 2018-12-19 CN CN201811561047.XA patent/CN109799981B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105745675A (zh) * | 2013-11-29 | 2016-07-06 | 联邦快递服务公司 | 用于使用无线节点网络来管理物品的装运的方法和系统 |
Non-Patent Citations (1)
Title |
---|
扩展企业资源计划及其若干关键技术研究;林中伟;《中国优秀博硕士学位论文全文数据库(博士)社会科学Ⅰ辑》;20040315(第03期);J152-10 * |
Also Published As
Publication number | Publication date |
---|---|
CN109799981A (zh) | 2019-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11422873B2 (en) | Efficient message queuing service using multiplexing | |
CN107995169B (zh) | 一种基于微服务架构的手机游戏服务端框架系统 | |
CN103532780A (zh) | 用于it领域的运维监控一体化系统及一体化监控方法 | |
US11875275B1 (en) | Custom time series models in computer analytics systems | |
CN110610376A (zh) | 行为数据的响应方法、装置、计算机设备及存储介质 | |
CN114880240B (zh) | 一种物联网设备自动化测试系统、方法、存储介质及设备 | |
US11144336B1 (en) | Customization tool for dashboards | |
CN113254320A (zh) | 记录用户网页操作行为的方法及装置 | |
CN108520063A (zh) | 事件日志的处理方法、装置及终端设备 | |
CN109799981B (zh) | 一种基于执行链的集成系统及方法 | |
CN113220403B (zh) | h5拦截Android返回事件的方法、装置及电子设备 | |
CN117215867A (zh) | 一种业务监控方法、装置、计算机设备及存储介质 | |
CN109992614B (zh) | 数据获取方法、装置和服务器 | |
CN112783886B (zh) | 缓存清理方法、装置、计算机设备及存储介质 | |
CN114742547A (zh) | 一种互联网在线收款控制方法、装置、介质及电子设备 | |
CN115062084A (zh) | 基于数据库元数据构建api接口方法及装置 | |
CN114064429A (zh) | 审计日志的采集方法、装置、存储介质和服务器 | |
CN112288509B (zh) | 订单跟踪方法及装置、计算机可读存储介质及电子设备 | |
CN113779026A (zh) | 业务数据表的处理方法和装置 | |
CN113434585A (zh) | 资源保存方法及设备 | |
CN113127099A (zh) | 服务器配置方法、装置、设备及存储介质 | |
CN112860456A (zh) | 日志处理方法和装置 | |
CN110320825A (zh) | 一种统计设备状态的方法和装置 | |
US11550555B2 (en) | Dependency-based automated data restatement | |
CN115658131A (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 |