CN112925655A - 划分服务的解耦系统及其方法 - Google Patents
划分服务的解耦系统及其方法 Download PDFInfo
- Publication number
- CN112925655A CN112925655A CN202011356223.3A CN202011356223A CN112925655A CN 112925655 A CN112925655 A CN 112925655A CN 202011356223 A CN202011356223 A CN 202011356223A CN 112925655 A CN112925655 A CN 112925655A
- Authority
- CN
- China
- Prior art keywords
- minimum service
- service unit
- domain
- point number
- event
- 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
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000006870 function Effects 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims description 44
- 238000010586 diagram Methods 0.000 claims description 23
- 238000000638 solvent extraction Methods 0.000 claims description 17
- 238000007726 management method Methods 0.000 description 9
- 230000008878 coupling Effects 0.000 description 7
- 238000010168 coupling process Methods 0.000 description 7
- 238000005859 coupling reaction Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- 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/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种划分服务的解耦系统及其方法,其中一个服务由一到多个软件程序组成,上述方法包括步骤:搜索一软件程序中多个命名空间中的多个领域关键字;搜索包含有上述领域关键字的多个软件程序;建立所述多个领域关键字的一领域关键字图;选择上述领域关键字的一者,并依据该领域关键字图选择所有包含被选择的领域关键字所在的多个功能;计算每个上述功能的一发送点数及一接收点数;依据发送点数及接收点数产生多个功能集合。
Description
技术领域
本发明涉及一种解耦系统及其解耦方法,特别涉及一种划分服务的解耦系统及其解耦方法。
背景技术
一般而言,在两个不同的系统之间要互相交换信息时,会通过应用程序接口(Application Programming Interface,API)进行数据的交换。任何一方系统因需求改变而演化,往往对应用程序接口也会有连动的变化产生;当有连动变化产生时,会很难被维护。实务上,常常系统要先关机,再将全部相关影响范围的应用程序接口修改,再重新上线,此方式在修改过程中容易产生其他错误,且需要找到哪些程序区段需要被修改,十分耗时费工。
因此如何自动降低系统中各功能的耦合性,使得两个系统需要介接时,能够只针对受影响的子系统进行维护,已成为本领域需解决的问题之一。
发明内容
为了解决上述的问题,本公开内容的一实施方式提供了一种划分服务的解耦系统,其中一个服务由一到多个软件程序组成。划分服务的解耦系统包括一处理器以及一存储装置。处理器用以执行以下步骤:搜索一软件程序(software program)中多个命名空间(name space)中的多个领域关键字(domain keywords);搜索包含有上述领域关键字的多个软件程序;建立上述领域关键字的一领域关键字图;选择上述领域关键字的一者,并依据领域关键字图选择所有包含被选择的领域关键字所在的多个功能(function);计算每个上述功能的一发送点数(out-degree)及一接收点数(in-degree);依据发送点数及接收点数产生多个功能集合,依据上述功能集合产生一事件处理图。存储装置耦接于处理器,存储装置用以存储事件处理图。
本发明的又一实施方式是于提供一种划分服务的解耦方法,包括步骤:搜索一软件程序中多个命名空间中的多个领域关键字;搜索包含有上述领域关键字的多个软件程序;建立所述多个领域关键字的一领域关键字图;选择上述领域关键字的一者,并依据该领域关键字图选择所有包含被选择的领域关键字所在的多个功能;计算每个上述功能的一发送点数及一接收点数;依据发送点数及接收点数产生多个功能集合,依据上述功能集合产生一事件处理图;以及存储事件处理图于一存储装置中。
综上,本发明所述的划分服务的解耦系统及其方法,其中一个服务由一到多个软件程序组成。通过分析软件程序中命名空间内的关键字并找出与关键字有关的功能,以分析出不同软件程序内部各功能的边界,将软件程序(系统)内部解耦,降低系统内部的耦合性,使系统的模块在解耦后,可以在需要维护或变更需求时,处理器只针对系统的子系统(即相关功能)进行修改即可,无须动到系统的整体,在不同的系统之间的握手,也只需要针对握手时会用到的相关功能作调整,无须动到两个系统的整体架构,故本发明的解耦方法通过事件传送端建立事件处理图,事件处理图中的信息是公开的,事件接收端可以在任何时刻取得事件处理图中的信息,无须向事件传送端申请,也不用担心取不到数据。
附图说明
图1A是依照本发明一实施例示出划分服务的解耦系统的方框图。
图1B是依照本发明一实施例示出划分服务的解耦系统的运行示意图。
图2是依照本发明一实施例示出划分服务的解耦方法的流程图。
图3是依照本发明一实施例示出划分服务的解耦方法的流程图。
图4是依照本发明一实施例示出第一类型最小服务单元群聚的示意图。
图5是依照本发明一实施例示出执行划分服务的解耦系统执行过程的示意图。
附图标记说明:
100:划分服务的解耦系统
ER:事件接收端
MEU:最小服务单元
CN:中央节点
CTN:虚拟容器
EPG:事件处理图
BK:代理程序
MT:管理工具
ET:事件传送端
200:划分服务的解耦方法
210~270:步骤
SP:软件程序
PA,PB,PC:程序
A1~A3,B1~B3,C1~C3:功能
MEU_A,MEU_B,MEU_B2,MEU_C,MEU_C1,
MEU_C2:最小服务单元群聚
具体实施方式
以下说明为完成发明的优选实现方式,其目的在于描述本发明的基本构思,但并不用以限定本发明。实际的发明内容必须参考的后的权利要求范围。
必须了解的是,使用于本说明书中的“包括”等词,是用以表示存在特定的技术特征、数值、方法步骤、作业处理、元件以及/或组件,但并不排除可加上更多的技术特征、数值、方法步骤、作业处理、元件、组件,或以上的任意组合。
于权利要求中使用如“第一”、“第二”、“第三”等词是用来修饰权利要求中的元件,并非用来表示之间具有优先权顺序,先行关系,或者是一个元件先于另一个元件,或者是执行方法步骤时的时间先后顺序,仅用来区别具有相同名字的元件。
请参照图1A至图3,图1A是依照本发明一实施例示出划分服务的解耦系统100的方框图。图1B是依照本发明一实施例示出划分服务的解耦系统的运行示意图。图2是依照本发明一实施例示出划分服务的解耦方法200的流程图。图3是依照本发明一实施例示出划分服务的解耦方法300的流程图。
于一实施例中,划分服务的解耦系统100包括一处理器及一存储装置。于一实施例中,划分服务的解耦系统100可以是图1中的事件传送端ET。于一实施例中,事件传送端ET例如是笔电、桌机、手机、平板等可以运行服务(service)并传送事件(event)的装置。于一实施例中,事件接收端也包含处理器及存储装置。
于一实施例中,处理器例如是微控制单元(microcontroller)、微处理器(microprocessor)、数字信号处理器(digital signal processor)、特殊应用集成电路(application specific integrated circuit,ASIC)或一逻辑电路。
于一实施例中,存储装置例如是只读存储器、快闪存储器、软碟、硬盘、光盘、U盘、磁带、可由网络存取的数据库或熟悉此技艺者可轻易思及具有相同功能的存储媒体。
于一实施例中,划分服务的解耦系统100包含最小服务单元MEU、虚拟容器(container)CTN、事件处理图(event processing graph)EPG及/或管理工具MT。于一实施例中,管理工具MT管理系统面的资源,例如是管理最小服务单元MEU、虚拟容器CTN、事件处理图EPG、记录档(log file)的配置。
于一实施例中,事件传送端ET可以运行人资系统,事件传送端ET将可公开的信息,例如员工姓名及分机,传到事件处理图EPG。事件处理图EPG可以由事件传送端ET建立,类似公布栏的概念,将可以向外公开的信息写在事件处理图EPG上,让其他装置,例如事件接收端ET进行存取,事件接收端ET可以运行信息管理系统。
于一实施例中,事件可以是指微服务或是一般服务。举例而言,当有新进员工且完成报到手续时,事件传送端ET运行的人资系统将完成报到手续视为一事件,将此事件发送给事件接收端ET。事件接收端ET运行的信息管理系统,收到此事件后,则到事件传送端ET的事件处理图EPG上读取新进员工的姓名与分机,并依据上述信息,进行配置身分给新进员工的动作(action),并使用自动化代理人(agent)传送电子邮件到新进员工的电子信箱,因此,信息管理系统告知人资系统已经开通新进员工的电子信箱(此视为一事件),人资系统收到此事件后,开启员工基础训练课程的线上课程服务(此视为一事件)。
在这个例子中,人资系统与信息管理系统所进行的许多操作都视为服务,要完成这些服务人资系统需要与信息管理系统作对接。通过事件传送端ET建立的事件处理图EPG,可以让其他装置,例如事件接收端ET存取事件处理图EPG中所需的信息。
换言之,事件传送端ET将可公开的信息贴到事件处理图EPG后,即不会被后续事件接收端ET的操作干扰,因为事件接收端ET可自行存取事件处理图EPG中所需的信息。
于一实施例中,事件传送端ET可以因为人资的业务需求,新增对应员工姓名及分机的部门信息贴到事件处理图EPG中。因此,事件处理图EPG中的内容是可以通过事件传送端ET自由新增或删除的。因此,事件处理图EPG类似电子公布栏的概念,提供了更有弹性的公开信息给其他系统存取。使用事件处理图EPG作为信息提供的媒介,则不需要仰赖传统靠网际协定位址(Internet Protocol,IP)或指定器到特定物体接口作介接。
于一实施例中,事件传送端ET与事件接收端ET可以是指同一台设备,例如人资系统与信息管理系统位于同一台服务器中;但两个系统各自运行的服务若需互动,仍使用事件处理图EPG作为信息提供的媒介。
然而,两个系统各自运行的服务若需互动,可能只需要对方的部分功能,并不需要整个系统的所有功能。
更具体而言,耦合是指两个或两个以上的装置或系统间通过相互作用而彼此影响以至联合起来的现象。在软件工程中,物件之间的耦合度就是物件之间的依赖性。物件之间的耦合越高,维护成本越高,因此物件的设计应使物件之间的耦合度的最小。
因此,在程序作规划时,必须将服务进行解耦,以拆解出最小服务单元MEU,每个最小服务单元MEU可以提供至少一功能(或微服务)。如图1B所示,图1B是依照本发明一实施例示出划分服务的解耦系统的运行示意图,中央节点(central node)CN中的代理程序BK依据读取一或多个事件处理图EPG,进行解耦,以解耦出多个最小服务单元MEU,有一些功能会互相呼叫的多个最小服务单元MEU可以存放在同一个虚拟容器CTN里,也可以在虚拟容器CTN里存放单一个多个最小服务单元MEU,最小服务单元MEU亦可以不存放于虚拟容器CTN里。
以下叙述划分服务的解耦方法200,划分服务的解耦方法200可以由划分服务的解耦系统100实现的。
于步骤210中,处理器搜索一软件程序SP中多个命名空间中的多个领域关键字。
请参阅图3,软件程序SP是由程序码组成。在程序码中,命名空间表示着一个识别码(identifier)。一个识别码可在多个命名空间中定义,它在不同命名空间中的含义是互不相干的。在一个新的命名空间中可定义任何识别码,它们不会与任何已有的识别码发生冲突,因为已有的定义都处于其他命名空间中。在大型的电脑程序或文件中,往往会出现数百或数千个识别码。命名空间提供一隐藏区域标识符的机制。通过将逻辑上相关的识别码组织成相应的命名空间,可使整个系统更加模块化。
在程序语言中,命名空间是对作用域(domain)的一种特殊的抽象标识符,域中包含了多个领域关键字,领域关键字是作用域内的识别码,且本身也用一个识别码来表示,这样可以让一系列在逻辑上相关的识别码用一个识别码组织了起来。许多现代程序语言都支援命名空间。在一些程序语言(例如C++和Python)中,命名空间本身的识别码也属于一个外层的命名空间,也即命名空间可以巢状,构成一个命名空间树,树根则是无名的全域命名空间。
函式和类别(class)的作用域可被视作隐式命名空间,它们和可见性、可存取性和物件生命周期不可分割的联络在一起。其中,函式是一种子程序,利用函式名称,可以接收回传值。类别在物件导向程序设计中是一种物件导向电脑程序语言之构造,是建立物件的蓝图,描述了所建立的物件共同的属性和方法。类别的出现,为物件导向程序设计的三个最重要的特性:封装性、继承性、多型性,提供了实现的手段。
于步骤220中,处理器搜索包含有上述领域关键字的多个软件程序PA~PC。
于一实施例中,领域关键字的相关性说明了关键概念和业务域流程之间的图形关系。这些领域概念是新分组的基础,以将现有软件分解为较小的部分。例如,软件程序SP中的程序码包含上述领域关键字的程序有程序PA、程序PB及程序PC,如图3所示,处理器会将这些程序PA~PC列举出来。
于步骤230中,处理器建立上述领域关键字的一领域关键字图。
于一实施例中,处理器获取软件程序SP的程序码中的上述命名空间,拆解分析上述命名空间,以得到上述领域关键字之间的一关联性。
于一实施例中,处理器依据关联性产生领域关键字图。
举例而言,多个领域关键字之一为员工识别码(employee_ID),以员工识别码为例,处理器搜索软件程序SP的程序码中,包含有员工识别码的功能,并建立这些功能之间的关联性(关联性可以是指功能之间呼叫、被呼叫或是参数传递…等等),以建立领域关键字图。
举例而言,多个领域关键字可以包含员工识别码(employee_ID)及部门代号(department_ID),则处理器可以找到每个部门代号底下的多个员工识别码,并找出相关于员工识别码及部门代号的功能,建立这些功能之间的关联性,以建立领域关键字图。
于一实施例中,当领域关键字为多个时,处理器可依据多个领域关键字,建立对应这些领域关键字的一或多个领域关键字图,领域关键字图用于描述领域关键字的关联性。
于一实施例中,领域关键字图是以一可延伸标记式语言(Extensible MarkupLanguage,XML)档描述关联性的一阶层式关系。
于步骤240中,处理器选择上述领域关键字的一者,并依据领域关键字图选择所有包含被选择的领域关键字所在的多个功能。
于一实施例中,处理器选择上述领域关键字的一者后,从软件程序SP搜索出图3中的功能A1~A3、B1~B3及C1~C3。
于一实施例中,处理器将每个所述多个功能集合视为一最小服务单元(minimumessential unit,MEU)。其中上述最小服务单元各自运行于各自的一虚拟容器CTN中。其中软件程序SP由一事件传送端ET运行,当事件传送端ET与一事件接收端ER握手时,事件接收端ER读取存储装置中的上述最小服务单元之一。
于一实施例中,虚拟容器CTN可以运行在任何电脑云端、电脑数据中心、虚拟机上,一个虚拟容器CTN可以加载多个最小服务单元。不同程序语言写的服务在虚拟容器CTN运行后,运行结果也可以互相协助。最小服务单元可通过虚拟容器CTN可以作生命周期的管理。
然而,在不使用虚拟容器CTN的情况下,则最小服务单元需要补充更多的逻辑(例如相连的路径)进行转传、及/或记录最小服务单元的边界(例如图3上虚线可称为边界,此例中有六个边界)。
于一实施例中,无论有没有使用虚拟容器CTN,处理器仍以业务流程(businessprocess)为重,若没有没用到虚拟容器CTN,则会需要用程序码说明最小服务单元的代理程序BK,代理程序BK是一个执行档或服务器,可以在IP和端口监听远程命令,用于在业务关键行业务的应用程序之间转换和取得路由消息。
于一实施例中,使用记录档加上数据服务虚拟容器CTN可以增加弹性,不用仰赖传统靠IP或指定器到特定物理界面,虚拟容器CTN方便于扩充,只要有机器能运行,虚拟容器CTN即可让不同的服务之间作对接,若有不同的程序语言,虚拟容器CTN也能让服务之间作对接。
于步骤250中,处理器计算每个上述最小服务单元A1~A3、B1~B3及C1~C3的一发送点数及一接收点数。
于一实施例中,发送点数是指一功能呼叫其他功能的次数(于图3中,箭头由内往外指的数量),接收点数是指一功能被另一功能呼叫的次数(于图3中,箭头由往外往内指的次数)。以图3为例,最小服务单元A1的发送点数为4,接收点数为1,最小服务单元B1的发送点数为1,接收点数为1,最小服务单元C1的发送点数为2,接收点数为2。
于一实施例中,处理器产生一可延伸标记式语言档,以描述每个上述最小服务单元的发送点数及接收点数。
于步骤260中,处理器依据发送点数及接收点数产生多个功能集,依据上述功能集合产生一事件处理图。
于一实施例中,以程序PC为例,当处理器判断已知最小服务单元C3的发送点数为1或小于1且接收点数为1,则处理器将已知最小服务单元C3视为一第一类型最小服务单元群聚MEU_C。第一类型最小服务单元群聚MEU_C代表是结尾的最小服务单元,或是比较线性的程序结构,收到来自上游的最小服务单元的信息往下游的最小服务单元传送。
于一实施例中,信息例如是参数、指令、函式、应用程序接口、信息…等等。
于一实施例中,以程序PA为例,当处理器判断已知最小服务单元A3的发送点数为大于0且接收点数为1,则处理器将已知最小服务单元A3视为一第一类型最小服务单元群聚MEU_A。第一类型最小服务单元群聚MEU_A中还包含已知最小服务单元A1、A2。
请参阅图4,图4是依照本发明一实施例示出第一类型最小服务单元群聚MEU_A的示意图,程序PA在实际执行时,此三个已知最小服务单元A1~A3会密切的彼此呼叫(传送API及/或信息),因此,处理器将已知最小服务单元A1~A3划分在第一类型最小服务单元群聚MEU_A中。
于一实施例中,以程序PB为例,当处理器判断已知最小服务单元B2的发送点数为1且接收点数为大于1,则处理器将已知最小服务单元B2视为一第二类型最小服务单元群聚MEU_B2。第二类型最小服务单元群聚MEU_B2通常是用以接收信息的汇整,最后发送到下游的已知最小服务单元(例如已知最小服务单元B3)。
于一实施例中,以程序PC为例,当处理器判断已知最小服务单元C2的发送点数为大于1且接收点数为大于1,则处理器将已知最小服务单元视为一第三类型最小服务单元群聚MEU_C2。于一实施例中,程序PC中的已知最小服务单元C1的发送点数为大于1且接收点数为大于1,则处理器将已知最小服务单元视为一第三类型最小服务单元群聚MEU_C1。由于第三类型最小服务单元群聚MEU_C1、MEU_C2属于枢纽型的已知最小服务单元(如已知最小服务单元C1、C2),其传输数据的压力较大,很容易碰到其他的应用,因此,第三类型最小服务单元群聚皆独立各自分为一组。
于步骤270中,存储装置用以存储事件处理图。
于一实施例中,上述的最小服务单元群聚分类方式,亦可以通过事件处理图论演算法,通过可延伸标记式语言档,描述阶层式关系图或树状图,以记录在事件处理图中,并将事件处理图存储于存储装置中。因此,事件处理图中也包含最小服务单元群聚分类方式的信息。
请参阅图5,图5是依照本发明一实施例示出执行划分服务的解耦系统100执行过程的示意图。图5中,实线箭头表是功能呼叫(function call),虚线表示信息。
处理器接收一事件处理图EPG执行请求(步骤S0)后,进入执行时期(Run time),并传送一事件及一参数到容器10中(步骤S1),处理器取得容器10中所存储的最小服务单元群聚MEU_A(步骤S2),并执行最小服务单元群聚MEU_A中的最小服务单元(例如为最小服务单元A1~A3),执行完后,处理器查看容器10中的事件处理图EPG所记载的路径(routing)(步骤S3),取得下一路径后,传送最小服务单元群聚MEU_A执行结果的事件给容器20(步骤S4),处理器取得容器20中所存储的最小服务单元群聚MEU_B,并执行最小服务单元群聚MEU_B(步骤S5),执行完后,处理器查看容器20中的事件处理图EPG所记载的路径(步骤S6),并判断事件处理图EPG所记载的尚未拜访的路径是否已为空(empty)(步骤S7);若是,则代表已完成访问,执行步骤S9,若否,则执行步骤S8。
于步骤S8中,处理器传送最小服务单元群聚MEU_B执行结果到后续的流程(其执行方法,依前述流程类推,故此处不赘述)。
于步骤S9中,处理器传送最小服务单元群聚MEU_B的执行结果。
于步骤S10中,处理器将此执行结果作为事件处理图EPG执行结果。
综上,本发明所述的划分服务的解耦系统及其方法通过分析软件程序中命名空间内的关键字并找出与关键字有关的功能,以分析出不同软件程序内部各功能的边界,将软件程序(系统)内部解耦,降低系统内部的耦合性,使系统的模块在解耦后,可以在需要维护或变更需求时,处理器只针对系统的子系统(即相关功能)进行修改即可,无须动到系统的整体,在不同的系统之间的握手,也只需要针对握手时会用到的相关功能作调整,无须动到两个系统的整体架构,故本发明的解耦方法通过事件传送端建立事件处理图,事件处理图中的信息是公开的,事件接收端可以在任何时刻取得事件处理图中的信息,无须向事件传送端申请,也不用担心取不到数据。
虽然本发明已以实施方式公开如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的构思和范围内,当可作各种的变动与润饰,因此本发明的保护范围当视权利要求所界定者为准。
Claims (11)
1.一种划分服务的解耦系统,包括:
一处理器,用以执行以下步骤:
搜索一软件程序中多个命名空间中的多个领域关键字;
搜索包含有所述多个领域关键字的多个软件程序;
建立所述多个领域关键字的一领域关键字图;
选择所述多个领域关键字的一者,并依据该领域关键字图选择所有包含被选择的该领域关键字所在的多个功能;
计算每个所述多个功能的一发送点数及一接收点数;
依据该发送点数及该接收点数产生多个功能集合,依据所述多个功能集合产生一事件处理图;以及
一存储装置,耦接于该处理器,该存储装置用以存储该事件处理图。
2.一种划分服务的解耦方法,包括:
搜索一软件程序中多个命名空间中的多个领域关键字;
搜索包含有所述多个领域关键字的多个程序;
建立所述多个领域关键字的一领域关键字图;
选择所述多个领域关键字的一者,并依据该领域关键字图选择所有包含被选择的该领域关键字所在的多个功能;
计算每个所述多个功能的一发送点数及一接收点数;
依据该发送点数及该接收点数产生多个功能集合,依据所述多个功能集合产生一事件处理图;以及
存储该事件处理图于一存储装置中。
3.如权利要求2所述的划分服务的解耦方法,还包含:
将每个所述多个功能集合视为一最小服务单元;
其中所述多个最小服务单元各自运行于各自的一虚拟化容器中;
其中该软件程序由一事件传送端运行,当该事件传送端与一事件接收端握手时,该事件接收端读取该存储装置中的所述多个最小服务单元之一。
4.如权利要求2所述的划分服务的解耦方法,其中于选择所述多个领域关键字的一者,并依据该领域关键字图选择所有包含被选择的领域关键字所在的所述多个功能的步骤中,还包含:
获取该软件程序的程序码中的所述多个命名空间,拆解分析所述多个命名空间,以得到所述多个领域关键字之间的一关联性。
5.如权利要求4所述的划分服务的解耦方法,还包含:
依据该关联性产生该领域关键字图。
6.如权利要求5所述的划分服务的解耦方法,其中该领域关键字图以一可延伸标记式语言档描述该关联性的一阶层式关系。
7.如权利要求2所述的划分服务的解耦方法,其中该事件处理图以一可延伸标记式语言档描述每个所述多个最小服务单元的该发送点数及该接收点数。
8.如权利要求2所述的划分服务的解耦方法,其中所述多个最小服务单元包含一已知最小服务单元,该划分服务的解耦方法还包含:
判断该已知最小服务单元的该发送点数为1或小于1且该接收点数为1,则将该已知最小服务单元视为一第一类型最小服务单元群聚。
9.如权利要求2所述的划分服务的解耦方法,其中所述多个最小服务单元包含一已知最小服务单元,该划分服务的解耦方法还包含:
判断该已知最小服务单元的该发送点数为大于0且该接收点数为1,则将该已知最小服务单元视为一第一类型最小服务单元群聚。
10.如权利要求2所述的划分服务的解耦方法,其中所述多个最小服务单元包含一已知最小服务单元,该划分服务的解耦方法还包含:
判断该已知最小服务单元的该发送点数为1且该接收点数为大于1,则将该已知最小服务单元视为一第二类型最小服务单元群聚。
11.如权利要求2所述的划分服务的解耦方法,其中所述多个最小服务单元包含一已知最小服务单元,该划分服务的解耦方法还包含:
判断该已知最小服务单元的该发送点数为大于1且该接收点数为大于1,则将该已知最小服务单元视为一第三类型最小服务单元群聚。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109142719A TWI765447B (zh) | 2019-12-05 | 2020-12-04 | 劃分服務的解耦系統及其方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962943988P | 2019-12-05 | 2019-12-05 | |
US62/943,988 | 2019-12-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112925655A true CN112925655A (zh) | 2021-06-08 |
CN112925655B CN112925655B (zh) | 2024-02-27 |
Family
ID=76163072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011356223.3A Active CN112925655B (zh) | 2019-12-05 | 2020-11-27 | 划分服务的解耦系统及其方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112925655B (zh) |
TW (1) | TWI765447B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050091672A1 (en) * | 2003-10-24 | 2005-04-28 | Microsoft Corporation | Facilitating presentation functionality through a programming interface media namespace |
US20070005410A1 (en) * | 2005-06-30 | 2007-01-04 | Ebay Inc. | Business event processing |
US20110295898A1 (en) * | 2010-05-28 | 2011-12-01 | International Business Machines Corporation | System And Method For Incident Processing Through A Correlation Model |
CN109542734A (zh) * | 2018-12-15 | 2019-03-29 | 深圳壹账通智能科技有限公司 | 事件处理方法、装置、计算机设备及存储介质 |
CN109947512A (zh) * | 2019-03-18 | 2019-06-28 | 北京字节跳动网络技术有限公司 | 一种文本适配显示方法、装置、服务器及存储介质 |
CN109983738A (zh) * | 2016-11-21 | 2019-07-05 | 贝克霍夫自动化有限公司 | 用于控制自动化系统的通信参与者之间的消息传送的概念 |
CN110442464A (zh) * | 2019-07-31 | 2019-11-12 | 中国工商银行股份有限公司 | 业务处理方法、业务处理装置、电子设备和介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2179352A4 (en) * | 2007-08-17 | 2010-12-29 | Salesforce Com Inc | SYSTEM, METHOD, AND DATA BASE COMPUTING SERVICE PRODUCT ON DEMAND TO VERIFY THAT A DEVELOPED APPLICATION WILL WORK PROPERLY WITH AT LEAST ONE OTHER APPLICATION |
US8914780B2 (en) * | 2011-03-04 | 2014-12-16 | Microsoft Corporation | Incremental generation of managed assemblies |
US9613095B2 (en) * | 2014-09-23 | 2017-04-04 | Quixey, Inc. | Entity-based external functionality for software developers |
CN109933362A (zh) * | 2019-01-24 | 2019-06-25 | 优信拍(北京)信息科技有限公司 | 一种平台功能调用方法、系统及设备 |
CN109947464A (zh) * | 2019-03-22 | 2019-06-28 | 优信拍(北京)信息科技有限公司 | 一种配置更新方法及装置 |
-
2020
- 2020-11-27 CN CN202011356223.3A patent/CN112925655B/zh active Active
- 2020-12-04 TW TW109142719A patent/TWI765447B/zh active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050091672A1 (en) * | 2003-10-24 | 2005-04-28 | Microsoft Corporation | Facilitating presentation functionality through a programming interface media namespace |
US20070005410A1 (en) * | 2005-06-30 | 2007-01-04 | Ebay Inc. | Business event processing |
US20110295898A1 (en) * | 2010-05-28 | 2011-12-01 | International Business Machines Corporation | System And Method For Incident Processing Through A Correlation Model |
CN109983738A (zh) * | 2016-11-21 | 2019-07-05 | 贝克霍夫自动化有限公司 | 用于控制自动化系统的通信参与者之间的消息传送的概念 |
CN109542734A (zh) * | 2018-12-15 | 2019-03-29 | 深圳壹账通智能科技有限公司 | 事件处理方法、装置、计算机设备及存储介质 |
CN109947512A (zh) * | 2019-03-18 | 2019-06-28 | 北京字节跳动网络技术有限公司 | 一种文本适配显示方法、装置、服务器及存储介质 |
CN110442464A (zh) * | 2019-07-31 | 2019-11-12 | 中国工商银行股份有限公司 | 业务处理方法、业务处理装置、电子设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
TWI765447B (zh) | 2022-05-21 |
TW202123001A (zh) | 2021-06-16 |
CN112925655B (zh) | 2024-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11924021B1 (en) | Actionable event responder architecture | |
US11481396B2 (en) | Executing untrusted commands from a distributed execution model | |
US11580107B2 (en) | Bucket data distribution for exporting data to worker nodes | |
US10558651B2 (en) | Search point management | |
CN101246486B (zh) | 用于改进的表达式处理的方法和装置 | |
CN110471949B (zh) | 数据血缘分析方法、装置、系统、服务器及存储介质 | |
US10768919B2 (en) | Package installation on a host file system using a container | |
US7650346B2 (en) | User-defined type consistency checker | |
WO2006026659A2 (en) | Services oriented architecture for data integration services | |
JP2718607B2 (ja) | アプリケーションインタフェースによる実行のための構造化オブジェクトの管理方法 | |
US11875275B1 (en) | Custom time series models in computer analytics systems | |
US11068496B2 (en) | System and method for data management | |
CN111324619B (zh) | 微服务系统中的对象更新方法、装置、设备和存储介质 | |
US20190324763A1 (en) | Insertion of custom activities in an orchestrated application suite | |
CN111045928B (zh) | 一种接口数据测试方法、装置、终端及存储介质 | |
CN112883088B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN116151631A (zh) | 一种业务决策处理系统、一种业务决策处理方法和装置 | |
CN116204540A (zh) | 操作日志记录方法、装置、设备及存储介质 | |
CN112925655B (zh) | 划分服务的解耦系统及其方法 | |
US20200301922A1 (en) | Multiform persistence abstraction | |
Leida et al. | Facing big data variety in a model driven approach | |
CN113792008A (zh) | 网络拓扑结构的获取方法、装置、电子设备及存储介质 | |
CN112035471A (zh) | 一种事务处理方法及计算机设备 | |
CN115052035B (zh) | 消息推送方法、设备及存储介质 | |
CN114064617A (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 |