CN103748858A - 灵活的数据通信 - Google Patents

灵活的数据通信 Download PDF

Info

Publication number
CN103748858A
CN103748858A CN201180073153.3A CN201180073153A CN103748858A CN 103748858 A CN103748858 A CN 103748858A CN 201180073153 A CN201180073153 A CN 201180073153A CN 103748858 A CN103748858 A CN 103748858A
Authority
CN
China
Prior art keywords
data
value
quoting
processing
described data
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
Application number
CN201180073153.3A
Other languages
English (en)
Other versions
CN103748858B (zh
Inventor
R.莱文什泰恩
R.奎内特
I.费科拉斯
J.尼默勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN103748858A publication Critical patent/CN103748858A/zh
Application granted granted Critical
Publication of CN103748858B publication Critical patent/CN103748858B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及用于在分布式处理布置中在过程运行时期间提供用于过程的数据的处理实体(100)。处理实体包括用于依据数据处理准则,根据值或根据引用在过程运行时期间提供用于过程的数据的提供器(101)。

Description

灵活的数据通信
技术领域
本发明涉及管理具体而言在通信网络中的合成服务。
背景技术
用于跨固定和移动接入网络输送多媒体服务的新兴通信技术之一是IP多媒体子系统(IMS)。根据IMS的网络体系结构包括服务层、控制和连接层及接入层。控制层包括形成用于提供SIP信令(SIP:会话启动协议)的中心节点的呼叫会话控制功能(CSCF)。SIP协议是IMS用于控制组合了话音和数据流的多媒体会话的核心技术之一。
IMS网络体系结构的又一核心组件是服务能力交互管理器(SCIM),该组件在3GPP TS 23.002标准中作为IMS体系结构的SIP应用服务器域内的功能引入。SCIM的角色是在通过服务过滤机制不能支持的更复杂服务交互情形中服务中介的角色。如向3GPP提议的SCIM使用ISC接口以允许实现利用更简单的服务能力的合成服务行为。实际上,“能力”是可能可与其它组件一起使用以实现封装并输送到网络的最终用户的“服务”的系统组件。例如,群组列表服务器和存在服务器可均被认为用于实现完善会话服务的“能力”。在此方面,3GPP第9版规范中的一个未解决问题是更大网络中表示为SIP应用服务器实例的“能力”之间交互的编排。
SCIM能够使用服务合成方案实现,其中,也称为组成服务的服务可聚集成合成服务。合成服务解决了现有服务通常不能覆盖的复杂的用户要求。因此,与其构件块的功能性之和相比,合成服务以新功能性的形式提供了增加值。
服务合成功能性通常引入为应用负责处理此复杂性的实体 - 服务合成引擎。在此情形中,应用只实现其核心逻辑,而诸如“基于位置的天气预报”等使能功能性通过合成引擎显露为应用可轻松发现和绑定的单个服务。在此情况下,合成引擎执行以合成服务“基于位置的天气预测”的定义形式的应用逻辑。此合成服务描述要求服务的类型,以便在运行时的引擎可发现、绑定和执行适当服务。合成功能性因此允许例如在处理诸如故障使能器等事件方面有很大的灵活性。在此情况下,引擎能够绑定备选服务而对最终用户应用无任何中断。
执行合成服务时合成会话结果可包含会话数据。会话数据通常由过程根据在其合成服务描述中的指令操纵,即,根据合成服务设计者的愿望操纵。根据这些指令直接操纵数据,例如,指派值到变量,或者例如由于服务调用而间接操纵数据。有时,这种合成会话状态数据也称为“共享状态数据”,这是因为它们表示在参与给定合成会话的所有服务之间共享的状态。
上述合成会话形成分布处理的一实施例,根据该实施例,不同过程在不同实体上执行。用于分布式处理的其它实施例是带有多个计算节点的云计算情形或带有甚至可在相同运行时环境内执行的共同部署的过程的处理布置。
通常,象在合成引擎中存在的过程等分布式过程对诸如输入数据等数据进行操作或者要求此类数据以做进一步处理。因此,向过程提供所有可能数据以确保平滑处理。然而,如果要交换的数据量大,则要为数据传送预留诸如带宽等大量的网络资源或诸如CPU负载等处理资源。此外,由于例如条件处理分支原因,相应过程可不一定在过程运行时期间,即在执行过程时要求与所有可能条件分支相关联的所有数据。
因此,在分布处理布置中需要更有效的数据管理。
发明内容
本发明是基于在根据值或根据引用向相应过程传送数据时可获得分布式处理布置中有效数据管理的发现。是根据值还是根据引用传送数据的决定可基于例如可以是数据特定或网络特定的准则做出。例如,如果看起来过程可能需要数据,则准则是数据特定的。
因此,随后可根据值向过程传送数据。相反,如果看起来过程更不可能要求数据,则可仅根据引用向过程传送数据。根据引用传送数据时,可向过程传送例如统一资源定位符(URL)等引用以指示包括数据的存储空间。因此,例如API(应用编程接口)等控制到过程的数据输入的过程或控制实体可涉及由URL指示的存储空间以仅在需要时获得数据。
根据一方面,本发明涉及用于在分布式处理布置中在过程运行时期间提供用于过程的数据的处理实体。处理实体包括用于依据数据处理准则,根据值或根据引用在过程运行时期间提供用于过程的数据的提供器。数据处理准则例如可以是数据特定或网络特定的。此外,数据处理准则可以是由处理实体可推导的准则。
根据一实施例,数据处理准则包括以下至少之一:在过程运行时期间过程要求数据的概率,或可用网络资源,具体而言带宽或CPU负载或数据大小或频隙或时隙或网络延迟,其可用于根据值或根据引用在过程运行时期间向过程提供数据,或者必需的网络资源,具体而言带宽或CPU负载或数据大小或频隙或时隙或网络延迟,其是根据值或根据引用在过程运行时期间向过程提供数据所必需的,或者复杂性度量,指示与在过程运行时期间向过程提供数据有关的复杂性,例如网络负载或等待时间或带宽。例如,处理准则可包括上面提及的准则的任何一个准则或任何组合。
根据一实施例,数据处理准则包括在过程运行时期间过程要求数据的概率,以及其中,提供器配置成如果确定的概率在第一概率范围内,则根据值提供数据,或者如果确定的概率在第二概率范围内,则根据引用提供数据。第一概率范围可包括等于1的概率,其中第二概率范围可包括小于1的概率,具体而言小于1并且大于0。
根据一实施例,处理实体可包括用于确定数据处理准则的确定器。
根据一实施例,处理实体可还包括用于存储数据的可寻址存储装置,其中,提供器配置成提供可寻址存储装置的地址,具体而言统一资源定位符,以便根据引用提供数据。
根据一实施例,提供器可配置成向过程提供值指示符或者传送值指示符,值指示符指示根据值提供或传送数据,或者用于向过程提供引用指示符或传送引用指示符,引用指示符指示根据引用提供数据。指示符可包括指示根据值或根据引用提供和/或传送数据的数字。
根据一实施例,提供器可配置成根据值或者根据引用,通过通信网络向过程传送数据。
根据一实施例,提供器可配置成分析过程的运行时行为以确定是根据值还是根据引用在用于过程的运行时期间提供数据。
根据一实施例,过程指执行合成服务的组成服务,以及其中,提供器配置成基于指示至少以下之一的合成服务信息,分析运行时行为:合成服务的结构、合成服务的组成服务或与合成服务的执行有关的会话信息。
根据一实施例,处理实体可以为以下至少之一:用于根据IMS技术操作的合成执行代理或用于根据IMS技术操作的合成服务引擎或在分布式计算网络中,具体而言在云计算网络中或者在ESB环境中的计算节点。
根据一实施例,处理实体可实现为软件模块,具体而言基于面向对象或基于规则或动态或脚本或功能编程语言实现。
根据一实施例,处理实体可以为软件实现的过程。
根据一实施例,提供器可基于编程语言实现,提供器包括计算机可执行指令,计算机可执行指令生成根据值表示数据的第一信号,或者生成根据引用表示数据的第二信号。
根据一实施例,过程可以是SIP(会话启动协议)过程,具体而言SIP库过程,其中,数据与SIP库数据,具体而言SIP库数据有关。
根据又一方面,本发明涉及一种用于在分布式处理布置中执行过程的处理客户端。处理客户端包括:处理器,用于执行过程,过程对数据进行操作;以及接口,用于在过程运行时期间获得用于过程的数据,接口配置成检测数据集是否根据值包括数据,或者数据集是否根据引用指示数据,以及如果数据集根据引用包括数据,则用于连接到引用指示的地址空间以便根据值得到数据。
根据一实施例,数据集包括控制字段,如果数据集根据值包括数据,则控制字段包括值指示符,或者如果数据集根据引用指示数据,则控制字段包括引用指示符,以及其中,接口配置成从控制字段检索相应指示符。
根据一实施例,接口可配置成接收数据集,具体而言通过通信网络接收数据集。
根据一实施例,过程可以是以下至少之一:因特网协议多媒体子系统(IMS)合成服务或业务过程执行语言(BPEL)过程的实例,或业务过程建模语言(BPML)过程的实例或企业服务总线(ESB)过程的实例或SIP过程,具体而言SIP库过程或软件实现的过程。
根据一实施例,过程客户端可以为以下至少之一:用于根据IMS技术操作的合成执行代理或用于根据IMS技术操作的合成服务引擎或在分布式计算网络中,具体而言在云计算网络中或者在ESB环境中的计算节点。
根据一实施例,处理客户端可实现为软件模块,具体而言基于面向对象或基于规则的编程语言实现。
根据又一方面,本发明涉及用于在分布式处理布置中在过程运行时期间提供用于过程的数据的方法。方法包括用于依据例如如本文中所述的数据处理准则,根据值或根据引用在过程运行时期间提供用于过程的数据的提供器。
其它方法步骤或特性可从处理实体的功能性直接推导。
根据又一方面,本发明涉及一种用于在分布式处理布置中执行过程的方法。方法包括执行过程,过程对数据进行操作,例如通过通信网络接收数据集,以及在过程运行时期间检测数据是否根据值包括数据,或者数据集是否根据引用包括数据,以及如果数据集根据引用包括数据,则连接到引用指示的存储地址以得到数据,以便在过程运行时期间获得数据。
根据又一方面,本发明涉及一种用于在计算机上运行时执行发明方法至少之一的计算机程序。
根据又一方面,本发明涉及一种用于执行计算机可执行过程的分布式计算布置。分布式计算布置包括处理实体和客户端实体,其中,处理实体和客户端实体是共同部署或远程部署的软件实现的过程。
根据一些方面,本发明可涉及一种用于借助于只传递此信息的接收器实际要求或使用的信息的子集,降低在合成引擎(CE)与CE客户端之间交换的信息量的方法,或者一种用于为CE客户端提供此信息的接收器实际要求/使用的信息的子集的描述的方法。信息的接收器实际要求或使用的信息的确定可基于合成应用的分析,例如使用在下述内容中描述的构架和组成服务的描述。此外,CE客户端可通过支持在CE客户端侧上例如API等专用接口以指示它们有关信息的子集,获得CE实际要求/使用的信息的子集的描述。根据一些实施例,根据引用传递一些数据,例如只通过合成有条件使用的信息的某些大的子集。如果存在访问信息的此类子集的实际需要,则可在以后从CE客户端获取完整值。根据一些实施例,CE可通过在任何颗粒度提供有关信息的要求子集的信息来指示CE客户端,例如按CE客户端,这可应用到CE客户端控制的所有CE客户端和所有合成会话的CE通信,按CE客户端控制的合成会话,这可应用到给定合成会话的所有CE客户端和CE通信,对于每个或一些CE客户端请求,这可应用到给定合成会话的一些或每个CE客户端和CE通信。根据一些实施例,根据值传递要求的信息的所有部分。存储信息的任何其它非要求的部分不是必需的。根据一些实施例,可根据值传递信息的一些部分,并且可根据引用传递信息的一些其它部分,例如通过提供能够用作引用的特殊令牌。CE能够通过使用在CE客户端侧上的专用API/协议,轮询根据引用提供的信息的部分。因此,存储信息的任何其它非要求的部分不是必需的。根据一些实施例,根据值传递信息的一些部分,并且根据引用传递一些其它部分,例如通过提供能够用作引用的令牌。信息的任何其它非要求的部分仍能够存储在CE客户端侧上。因此,通过使用CE客户端侧上的专用API/协议,CE能够轮询CE客户端存储的信息的任何部分。
附图说明
其它实施例将参照附图进行描述,其中:
图1根据一实施例示出处理实体;
图2根据一实施例示出处理客户端;
图3示出应用构架。
图4根据一实施例示出企业服务总线(ESB)布置。
具体实施方式
图1示出用于在分布式处理布置中在过程运行时期间提供用于过程的数据的处理实体100。处理实体包括用于依据例如如本文所述的至少一个数据处理准则,根据值或根据引用在过程运行时期间提供用于过程的数据的提供器101。可选的是,处理实体可包括用于确定(例如,计算或提供)到提供器101的数据处理准则的确定器101。确定器103可配置成依据至少一个数据处理准则,确定是根据值还是根据引用传送数据。处理实体可还包括用于存储数据的存储装置105。
图2示出用于在分布式处理布置中执行过程的处理客户端200。处理客户端包括:处理器201,用于执行过程,过程对数据进行操作;以及接口203,例如,应用可编程接口(API),用于在过程运行时期间获得或接收数据集,接口配置成检测数据集是否根据值包括数据,或者数据集是否根据引用指示数据,以及如果数据集根据引用包括数据,则用于连接到引用指示的地址空间以便根据值得到数据。
根据一些实施例,处理实体和/或处理客户端可包括其它实体,如跟踪在合成服务执行情形中合成会话数据分析要求的信息的合成会话数据监视器、执行本文中所述的不同分析的一个或多个分析实体、将分析实体执行的分析的结果考虑在内,执行例如成本估计并且做出例如将提供和/或传送什么子集数据以及如何(根据值或根据引用)提供和/或传送等有关数据通信的决定的数据通信决策实体。此外,可提供执行如数据通信决策实体决定的数据通信决定的数据通信实体。另外,可提供用于指示CE客户端要求的数据和/或协议/API以便例如CE(合成引擎)客户端等处理客户端获取根据引用传递的数据子集的值的协议/API。
根据一些实施例,可在合成引擎与其客户端(例如CEA和组成服务)之间提供应用编程接口(API),客户端允许在运行时动态指定应向合成引擎报告有关例如SIP信令等当前信令的总体信息的哪个子集。此外,合成引擎(CE)可执行例如合成构架和组成服务描述的分析,以便确定有关合成会话实际要求的信令的信息的子集。通过告诉客户端哪些信息是CE感兴趣的信息,CE可还使用提供的API指示客户端。例如,CE客户端可向CE报告仅总体信息的子集、仅CE实际要求的子集。
例如,CE客户端可通过只提供能够用于获得此信息的完整值的引用,例如URL,根据需要提供信息的子集,例如,具有大的大小的那些子集。
根据一些实施例,CE或与CE客户端进行通信的其它节点可使用引用获取根据引用指向的信息的完整值。
根据一些实现,引用可以是透明的,即,CE或与CE客户端进行通信的其它节点以相同方式应访问它们,例如,使用与用于根据值提供的信息相同的协议或API。在内部,在收到通常访问请求时,此类引用可获取并最后缓存根据引用引用的完整值。
然而,引用可以是非透明的,即,CE或与CE客户端进行通信的其它节点可区分它们和根据值提供的信息。在此情况下,CE可使用CE客户端提供的专用API,通过向它传递引用以作为可充当用于查找要求的信息的关键字的参数,访问信息的值。
因此,根据一些实现,通过例如使用有关当前合成会话和构架结构的知识以只传递需要的内容,进行更智能的通信和数据报告,可降低用于处理在CE与CE客户端之间发送的数据的通信和处理开销。这可通过只传递要求的信息和/或按需慢慢传递具有大的大小的信息的子集以降低信息量来实现。
要注意的是,前面的描述仅举例论述合成引擎和合成引擎客户端。然而,本文中所述实施例也可在更广的系统领域中采用,具体而言在中心节点编排其它服务的执行的情况下。示例有BPEL引擎、工作流引擎、带有中心控制节点的分布式系统。
另外,本文中所述实施例也涉及要求数据传递的灵活概念的编程语言和系统。
根据与合成服务有关的一些实施例,可执行合成的分析。例如,可借助于构架描述合成。分析可分析构架的结构,并且得出在合成会话执行期间使用的合成会话数据。具体而言,分析可尝试确定在合成会话执行期间要求的数据和/或在合成会话执行期间预期何时要访问数据或数据的给定子集和/或预期哪些组成服务或其它服务在给定时间访问数据的给定子集。此外,可确定有关预期在给定时间访问数据的给定子集的组成服务或其它服务的位置的信息,例如网络中的网络位置。
图3举例示出包括布置在块A内的服务模板301和303、布置在块B内的服务模板305和307及布置在块C内的服务模板309和311的应用构架。此外,提供了带有两个分支315和317的条件语句313,分支315、317分别引导向块B或块C。虽然例如块A中的服务模板301和303可始终得以执行,但块B中模板305、307和块C中模板309和311的执行可取决于条件语句313的评估的结果。因此,视条件语句313的结果而定,将执行块B的服务模板305、307或块C的服务模板309、311。
根据一些实施例,上面提及的分析可以是悲观的。这意味着例如如果从合成描述不能得出有关给定准则的信息,则可假设更差的情况。例如,如果有关预期访问数据的给定子集的组成服务的信息不可用,则分析可假设任何服务能够访问此数据。如果信息在预期要访问数据或数据的子集的某个时刻不可用,则可假设可在任何时候执行数据访问。
上面提及的分析可使用例如合成步骤的描述作为其输入,具体而言明确访问合成会话数据的那些描述,例如,共享的状态操纵、评估表达式等,包括以前步骤的结果和/或来自服务数据库的组成服务的正式描述,具体而言此类服务可访问的数据的描述,和/或在运行时由组成服务经可为此目的提供的API对合成会话数据的动态访问。这种信息相当动态,并且优选能够在运行时获得。
基于通过此分析收集的信息,系统可得出此类属性或判定,如:
-预期要通过合成(服务/内置功能)的给定步骤访问数据的给定子集,
-在合成执行的某个点后,不能访问数据的给定子集,这例如可基于“活性”分析。因此,之后无需访问该数据。
根据一些实施例,可执行合成会话数据的分析。例如,在运行时,合成引擎可收集有关合成会话数据的统计。例如,它可包括:数据的给定子集的类型,数据的给定子集的大小,哪些组成服务在访问数据的给定子集,哪些合成步骤明确访问数据的给定子集,从当前节点转移到不同节点的信息量或例如在时间、带宽或等待时间等方面从当前节点到不同节点的数据转移有多贵。
基于此信息,能够为每个数据或为每个数据子集计算“权重”度量。此权重可反映传递此数据有多贵。例如,极大数据或由极多服务访问的数据可得到极大的权重。
根据一些实施例,可执行参与合成会话的组成服务的分析。此分析可分析合成的描述并且基于服务模板的分析,例如得出例如以声明方式(例如,借助于约束)描述合成要求哪些组成服务,合成将使用的潜在服务是什么的组件。在一些实现中,甚至可在合成会话开始前静态执行此分析。可假设服务数据库的内容在合成会话之前或期间不更改,因为这可更改分析的结果。另外或备选,可在合成会话的运行时执行分析。在此情况下,分析可另外使用有关已经为在此合成会话的范围中的执行选择的具体组成服务的信息。
根据一些实施例,可确定可传递的数据。在此方面,可将合成会话、例如数据的权重等合成会话数据的分析或参与合成会话的组成服务的分析考虑在内。
系统或相应实体或相应方法可确定下一合成步骤或合成会话的剩余部分可能要求数据的哪个子集,例如,可能要访问数据的哪个子集。另外或备选,基于分析,系统或相应实体或相应方法可确定无条件要求数据的哪些子集,即,在任何情况下预期访问数据的哪些子集,以及有条件要求数据的哪些子集,即在某些条件下将访问数据的哪些子集。
根据一些实现,可提供协议和/或至少一个API以便指示例如CE客户端等处理客户端有关要求的数据。在此方面,CE客户端可提供能够由例如CE等处理实体用于指示它有关要求的数据的专用协议和/或API。此协议和/或API可采用例如上面提及的确定应传递数据的分析的结果作为输入参数。
根据一些实现,协议或API可允许指定和/或描述要传递的要求的数据,例如:
-按处理客户端,例如,按CE客户端,这也可应用到CE客户端控制的所有合成会话的所有CE客户端和CE通信,
-按处理客户端控制的合成会话,这可应用到在给定合成会话的CE客户端与CE之间的所有通信,
-对于一些或对于每个处理客户端请求,这可应用到在CE客户端与CE之间给定合成会话的一些或每个通信。
另外,它可允许数据或每个要求的数据集指示是无条件还是有条件要求数据或相应子集。
协议和/或API也可允许为某些数据子集指定应根据值或根据引用传递其值,具体而言始终传递其值。
根据一些实施例,可为处理客户端,例如为CE客户端提供协议和/或至少一个API,以获取根据引用传递的数据子集的值。如果CE客户端支持根据引用传递数据,则它可提供协议和/或API以便获取根据诸如URL等那些引用指向的信息的值。此类协议或API可采用数据的以前发送的引用作为参数。在返回要求的完整值时,它们也可在结果中指示是否允许在调用者侧缓存此值。
通过此类协议或PI,例如与诸如合成引擎客户端等处理客户端进行通信的CE或其它节点等处理实体可使用引用获取根据此类引用指向的信息的完整值。
根据一些实施例,引用可以是非透明或透明的。
对于非透明引用,例如,诸如与合成引擎客户端进行通信的CE或其它节点等处理实体可区分此类引用和根据值提供的信息。在此情况下,通过例如传递引用作为此类协议/API的参数,处理实体可使用处理客户端提供的专用协议和/或API访问信息的值。这可用于查找用于查找要求的信息的关键字。
对于透明引用,例如,在诸如与CE客户端进行通信的CE或其它节点等处理实体上执行的合成应用可以相同方式使用此类引用,例如,通过使用与使用根据值提供的信息时相同的命令、协议或API。在内部,可根据以下方案部署此类透明引用:
在合成应用尝试访问根据引用引用的数据时,系统或方法或相应实体可获得或最终缓存根据引用引用的完整值或其一部分。有利的是,在此情况下,无需要设计时区分根据值传递的数据或数据集与根据引用传递的数据或数据集。与静态类型编程语言和系统相比,这是优点。在所有那些系统中,开发人员要在设计时区分是根据值还是根据引用传递某些数据。视决定而定,要使用不同的操作或功能访问数据。例如,可如下定义根据值传递的参数:
void funcByValue(ClassA inParam) {
ClassA localObj;
int localField1;
localObj = inParam;
localFieldl = inParam.field1; 
}
相反,根据引用传递的参数可使用指针:
void funcByReference(ClassA *inParam) {
ClassA localObj;
int localField1;
// 使用特殊语法解引用
localObj = *inParam;
// 使用特殊语法解引用
localFieldl = inParam->field1;
}
因此,如果以后更改有关数据传递的决定,则结果代码可进行更改。
在基于软件的环境中,可借助于代理对象实现透明引用。代理对象可与例如远程目标对象提供相同的协议/API,但实际上通常只向例如远程目标对象转发所有请求/API调用。为实现透明引用,以例如CE客户端作为目标对象的代理对象可检测读取数据的第一CE请求,并且可使用在例如CE客户端等目标对象上的远程调用以获得数据的完整值。随后,可返回此值,好象在本地读取它一样。另外,可缓存例如返回值的CE客户端等处理客户端可支持的值,以便避免每次获取它。
根据一些实施例,可确定用于数据的传递的复杂性度量,例如成本估计。在此方面,可将例如合成会话和/或合成会话数据的分析和/或数据的权重和/或参与合成会话的组成服务的分析和/或来自诸如CE等处理实体的有关要传递的要求的数据子集的指示考虑在内。因此,CE客户端侧上的系统能够尝试估计根据值或根据引用传递要求的数据的子集的成本。目的是根据诸如时间、业务量等某个度量最小化成本。
可为由于例如业务、存储空间或时间度量等原因传递更贵的数据提供比与无条件要求的数据有关的成本更高的成本。
根据一些实施例,为确定可根据值和根据引用传递哪些数据,可将用于数据传递的成本估计(即,复杂性估计)考虑在内。因此,系统或方法或任何实体可决定应根据值传递哪些数据。
根据一些实施例,根据值传递成本低于某个阈值的所有数据,这是因为它很小或便宜,或者它是无条件要求的,并且因此应以任何方式传递。如果成本高于阈值,则它可根据引用传递。在此情况下,可将另外的考虑事项考虑在内,如诸如存储器等资源的当前可用性、业务或等待时间或CE客户端侧上的一些其它策略。
例如,此类阈值能够由系统的操作员设置。
根据一些实现,可基于上面提及的特性动态设置阈值。根据一些实施例,例如CE等处理实体可动态指示例如CE客户端等处理客户端有关要使用的阈值。在后一情况下,阈值也可隐含反映在CE侧上资源和策略的可用性。
参照传递数据,在系统已决定应从例如CE客户端等处理客户端向例如CE等处理实体传递数据的哪个子集,并且已决定可根据值和根据引用传递数据的哪些部分后,CE客户端可根据所做的决定传递这些数据集。
根据一些实现,可为诸如CE客户端等处理客户端提供数据保留策略。视应传递所有数据或仅要求的数据的事实而定,CE客户端可相对于数据保留表现不同。例如,如果预期只传送要求的数据,例如,如果CE指示CE客户端哪些数据子集要传递,则可释放为用于数据的数据的所有非要求的子集的资源,这是因为在这些数据子集中不存在需要。此外,如果预期要传送任何数据,其中CE已指示它需要所有数据,或者没有来自CE的指示,并且悲观地假设要求所有数据,则可采用另一数据保留策略。
视根据值还是根据引用传递数据的事实而定,例如CE客户端等处理客户端可相对于数据保留表现不同:就根据值发送数据而言,CE客户端可释放为数据分配的资源,这是因为随后将不存在再次传送它的需要。就根据引用发送数据而言,例如CE客户端等处理客户端应保留数据,至少直至根据值获取它的后一时间点。
第二策略可在第一策略之后应用并且可取代它。也就是说,即使第一策略指出由于没有来自CE的指示,因此数据应保留,但数据要根据值发送,则第二策略将应用,并且允许释放资源。
根据一些方面,本文中所述实施例也涉及其它系统或编程语言。例如,可为服务合成系统或者为要求数据传递的灵活概念的编程语言和系统应用本文中所述实施例。
此外,可为库和框架部署本文中所述实施例。例如,实现SIP栈的框架可以是形成处理实体或处理客户端的组件。
此外,本文中所述实施例可涉及企业服务总线(ESB)。通常,ESB可具有与其连接的许多组件。通常,ESB使用所谓的归一化消息格式,该格式经常是基于XML和编程语言,并且是平台独立式。预期在ESB内和在与其连接的组件与ESB之间发送的所有消息以此格式发送。在许多情况下,此类ESB起到在连接的组件之间此类消息的中介体或路由器。
图4示出带有ESB核401、生产者A实体403和生产者B实体405的ESB布置。在许多情形中,一个组件可产生输出消息,示为组件A和消息MSG,并且发送它到ESB,并且另一组件将从ESB获得它并且使用此消息,示为组件B。ESB表示松散耦合的体系结构,生产者A无需知道谁(和多少使用者)将使用该消息,并且使用者B无需知道谁产生了该消息。在一些使用情况下,归一化消息能够大小相当大。可能所有消息内容能够对假设使用者有用。因此,当前技术发展水平中,整个消息应由组件提交到ESB并且发送到组件。但在具体部署/设置中,经常发生消息的实际使用者只要求消息内信息的小子集,并且不存在它的其它使用者。因此,将在生产者与ESB或使用者之间交换的信息量降低到仅实际要求的该子集,这将有很大的意义。
在此类情况下,通过使用本发明的原理,可能扩展现有ESB产品的API,使得使用者组件可向ESB指示它们对来自消息的信息的哪个子集感兴趣。通过使用此信息,ESB可向使用者指示此信息,以便它例如根据值只将信息的要求的部分作为消息的部分提供。另外或备选,它可要求使用者根据引用提供其它部分。备选或另外,可产生整个消息,其中,ESB核可只从中提取消息的要求的部分,并且例如根据值将此子集发送到使用者。另外,它可根据引用提供其它部分。
此外,本文中所述实施例可还涉及现有编程语言及其运行时或运行时环境。在许多编程语言系统中,有诸如远程方法调用(RMI)等在语言中和在运行时环境中支持的某种RPC(远程过程调用)。其它协议有CORBA、SOAP和用于RPC类功能性的其它协议。
例如调用方和通过RPC调用的代码等RPC调用中涉及的各方经常不共享共同存储器地址空间,例如,这是因为它们在不同计算机/节点上,在虚拟机的不同实例上或在不同类加载器中运行。在此类情况下,如果应在各方之间传递任何参数,则通常根据值发送它们。这意味着数据的副本被创建并作为RPC调用的参数传递。有时根据引用发送完整的数据,即,只发送到调用者侧上数据的“链接”,并且被调用功能在需要数据时,可需要明确获取数据。在任何情况下,静态,在设计时或者在部署时做出根据值或根据引用传递的决定。
根据本文中所述原理,能够扩展语言和运行时环境,使得存在能够由调用者、远程组件或运行时系统在运行时动态使用的专用API/协议,以通知另一方只要求并且应根据值传递总体参数或其部分的某些特定子集。也可指示可选择性地根据引用发送其它部分。
在此方面,RPC通信的各方能够明确使用它通知其它方它只想获得根据值或根据引用传递的数据的一些子集。此类命令应极可能由开发人员在设计时预见到,但仅在对应用特定的某些条件下在运行时发出。
根据一些实施例,基于在各方之间RPC交换的自动分析以例如确定交换的数据量、等待时间是什么等和在可能时各方的实现的分析,例如,表示应用的Java字节代码的静态和动态程序分析,运行时系统可在运行时发出此类命令。
在两种情况下,此类决定可由一侧/两侧上的运行时系统执行而无需开发人员更改组件的任何源代码。例如,可使用如前面所述基于代理对象的方案。这是由于事实是RPC消息的实际串行化、反串行化和传送通常由运行时环境而不是由组件本身处理。组件通常不取决于RPC调用和协议的具体实现。因此,只要在两侧以符合彼此的方式修改/更改参数传递,运行时便仍能够理解RPC请求,并且RPC调用的组件/各方继续象平常一样运行。
根据一些实施例,通过最小化在合成会话的范围内交换的信息量,可改进服务组件的性能。因此,借助于更智能的通信,例如,使用有关当前会话和构架结构的知识以只传递实际需要的内容,可降低在CE客户端与CE之间的通信开销。此外,可根据需要传递例如信息的子集的增大的数据量。
此外,本文中所述实施例也可涉及更广的系统领域,其中,中心节点编排其它服务的执行,例如,BPEL引擎、工作流引擎、带有中心控制节点的分布式系统。

Claims (24)

1. 一种用于在分布式处理布置中在过程运行时期间提供用于过程的数据的处理实体,所述处理实体包括:
提供器(101),用于依据数据处理准则,根据值或根据引用在所述过程运行时期间提供用于所述过程的所述数据。
2. 如权利要求1所述的处理实体,其中所述数据处理准则包括以下至少之一:
在所述过程运行时期间所述过程要求所述数据的概率,或者
可用网络资源,具体而言带宽或CPU负载或数据大小或频隙或时隙或网络延迟,其可用于根据值或根据引用在过程运行时期间向所述过程提供所述数据,或者
必需的网络资源,具体而言带宽或CPU负载或数据大小或频隙或时隙或网络延迟,其是根据值或根据引用在过程运行时期间向所述过程提供所述数据所必需的,或者
复杂性度量,指示与在所述过程运行时期间向所述过程提供所述数据有关的复杂性。
3. 如前面权利要求任一项所述的处理实体,其中所述数据处理准则包括在所述过程运行时期间所述过程要求所述数据的概率,以及其中提供器(101)配置成如果所述确定的概率在第一概率范围内,则根据值提供所述数据,或者如果所述确定的概率在第二概率范围内,则根据引用提供所述数据。
4. 如前面权利要求任一项所述的处理实体,还包括用于确定所述数据处理准则的确定器(103)。
5. 如前面权利要求任一项所述的处理实体,还包括用于存储所述数据的可寻址存储装置(105),其中所述提供器(101)配置成提供所述可寻址存储装置的地址,具体而言统一资源定位符,以便根据引用提供所述数据。
6. 如前面权利要求任一项所述的处理实体,其中所述提供器(101)配置成向所述过程提供值指示符或者传送所述值指示符,所述值指示符指示根据值提供或传送所述数据,或者向所述过程提供引用指示符或者传送所述引用指示符,所述引用指示符指示根据引用提供或传送所述数据。
7. 如前面权利要求任一项所述的处理实体,其中所述提供器(101)配置成根据值或者根据引用通过通信网络向所述过程传送所述数据。
8. 如前面权利要求任一项所述的处理实体,其中所述提供器(101)配置成分析所述过程的运行时行为以确定是根据值还是根据引用在运行时期间为所述过程提供所述数据。
9. 如权利要求8所述的处理实体,其中所述过程指执行合成服务的组成服务,以及其中所述提供器(101)配置成基于指示至少以下之一的合成服务信息,分析所述运行时行为:所述合成服务的结构、所述合成服务的组成服务或与所述合成服务的执行有关的会话信息。
10. 如前面权利要求任一项所述的处理实体,是以下至少之一:
合成执行代理,用于根据IMS技术操作,或者
合成服务引擎,用于根据IMS技术操作,或者
在分布式计算网络中,具体而言在云计算网络中或者在ESB环境中的计算节点。
11. 如前面权利要求任一项所述的处理实体,实现为软件模块,具体而言基于面向对象或基于规则或动态或脚本或函数编程语言实现。
12. 如前面权利要求任一项所述的处理实体,其中所述过程是软件实现的过程。
13. 如前面权利要求任一项所述的处理实体,其中所述提供器(101)基于编程语言实现,所述提供器包括用于在所述过程运行时期间提供用于所述过程的所述数据的计算机可执行指令,所述计算机可执行指令生成根据值表示所述数据的第一信号,或者生成根据引用表示所述数据的第二信号。
14. 如前面权利要求任一项所述的处理实体,其中所述过程是SIP(会话启动协议)过程,具体而言SIP库过程,以及其中所述数据与SIP库数据,具体而言SIP库数据有关。
15. 一种用于在分布式处理布置中执行过程的处理客户端,所述处理客户端包括:
处理器(201),用于执行所述过程,所述过程对数据进行操作;以及
接口(203),用于在过程运行时期间获得数据集,所述接口配置成检测所述数据集是否根据值包括所述数据,或者所述数据集是否根据引用包括所述数据,以及如果所述数据集根据引用包括所述数据,则用于连接到所述引用指示的地址空间以便根据值得到所述数据。
16. 如权利要求15所述的处理客户端,其中所述数据集包括控制字段,如果所述数据集根据值包括数据,则所述控制字段包括值指示符,或者如果所述数据集根据引用指示所述数据,则所述控制字段包括引用指示符,以及其中所述接口(203)配置成从所述控制字段检索相应指示符。
17. 如权利要求15或16所述的处理客户端,其中所述接口(203)配置成检索所述数据集,具体而言通过通信网络接收所述数据集。
18. 如权利要求15到17任一项所述的处理客户端,其中所述过程是以下至少之一:
因特网协议多媒体子系统(IMS)合成服务,或者
业务过程执行语言(BPEL)过程的实例,或者
业务过程建模语言(BPML)过程的实例,或者
企业服务总线(ESB)过程的实例,或者
SIP过程,具体而言SIP库过程,或者
软件实现的过程。
19. 如权利要求15到18任一项所述的处理客户端,是以下至少之一:
合成执行代理,用于根据IMS技术操作,或者
合成服务引擎,用于根据IMS技术操作,或者
在分布式计算网络中,具体而言在云计算网络中或者在ESB环境中的计算节点。
20. 如权利要求15到19任一项所述的处理客户端,实现为软件模块,具体而言基于面向对象或基于规则的编程语言实现。
21. 一种用于在分布式处理布置中在过程运行时期间提供用于过程的数据的方法,所述方法包括:
依据数据处理准则,根据值或根据引用在所述过程运行时期间提供用于所述过程的所述数据。
22. 一种用于在分布式处理布置中执行过程的方法,所述方法包括:
执行所述过程,所述过程对数据进行操作;
通过通信网络接收数据集;
在过程运行时期间,检测所述数据集是否根据值包括所述数据,或者所述数据集是否根据引用包括所述数据,以及
如果所述数据集根据引用包括所述数据,则连接到所述引用指示的存储地址以得到所述数据,以便在所述过程运行时期间获得所述数据。
23. 一种在计算机上运行时用于执行如权利要求22或23所述的方法的计算机程序。
24. 一种用于执行计算机可执行过程的分布式计算布置,所述分布式计算布置包括:
如权利要求1到14任一项所述的处理实体;以及
如权利要求15到20任一项所述的客户端实体;其中
所述处理实体和所述客户端实体是共同部署或远程部署的软件实现的过程。
CN201180073153.3A 2011-06-30 2011-06-30 灵活的数据通信 Expired - Fee Related CN103748858B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2011/003234 WO2013000494A1 (en) 2011-06-30 2011-06-30 Flexible data communication

Publications (2)

Publication Number Publication Date
CN103748858A true CN103748858A (zh) 2014-04-23
CN103748858B CN103748858B (zh) 2018-10-26

Family

ID=44774016

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180073153.3A Expired - Fee Related CN103748858B (zh) 2011-06-30 2011-06-30 灵活的数据通信

Country Status (4)

Country Link
US (1) US10536508B2 (zh)
EP (1) EP2727314A1 (zh)
CN (1) CN103748858B (zh)
WO (1) WO2013000494A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103748858B (zh) * 2011-06-30 2018-10-26 瑞典爱立信有限公司 灵活的数据通信

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1399741A (zh) * 1999-11-25 2003-02-26 艾利森电话股份有限公司 分布式处理系统中的内部进程通信
US20030084106A1 (en) * 2001-10-31 2003-05-01 Comverse, Ltd. Efficient transmission of multi-media contents as electronic mail
US20050138009A1 (en) * 2003-12-19 2005-06-23 Deshpande Sachin G. Systems and methods for providing access to an embedded thumbnail image
GB2430110A (en) * 2005-08-31 2007-03-14 Canon Kk Method and System for Transferring Electronic Document Data
CN101072172A (zh) * 2006-05-10 2007-11-14 李晓耕 一种实现网络数据高效传递的方法及其装置
CN101320336A (zh) * 2007-06-05 2008-12-10 Sap股份公司 异构环境中的组件的部署计划

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004002044A2 (en) * 2002-02-01 2003-12-31 John Fairweather A system for exchanging binary data
US6963870B2 (en) * 2002-05-14 2005-11-08 Microsoft Corporation System and method for processing a large data set using a prediction model having a feature selection capability
US8201082B1 (en) * 2002-06-17 2012-06-12 Amazon.Com, Inc. Dynamic generation of documents
WO2004021207A1 (en) * 2002-08-29 2004-03-11 Telegea Systems and methods for improving service delivery
US20040060054A1 (en) * 2002-09-20 2004-03-25 International Business Machines Corporation Composition service for autonomic computing
US7178131B2 (en) * 2003-09-29 2007-02-13 International Business Machines Corporation Inspecting the runtime behavior of a program while minimizing perturbation
US20060190218A1 (en) * 2005-02-22 2006-08-24 Agrawal Subhash C Generative instrumentation framework
US20070150568A1 (en) * 2005-12-28 2007-06-28 Jon Ruiz Non-destructive synthetic transaction configuration
US7765307B1 (en) * 2006-02-28 2010-07-27 Symantec Operating Corporation Bulk network transmissions using multiple connections primed to optimize transfer parameters
US7954094B2 (en) * 2006-03-27 2011-05-31 International Business Machines Corporation Method for improving performance of executable code
US8750336B1 (en) * 2006-08-23 2014-06-10 Sprint Communications Company L.P. Distributed multimedia system for IP networks
US8929360B2 (en) * 2006-12-07 2015-01-06 Cisco Technology, Inc. Systems, methods, media, and means for hiding network topology
WO2008119364A1 (en) 2007-04-02 2008-10-09 Telefonaktiebolaget Lm Ericsson (Publ) Technique for creating, modifying and executing composite services in a telecommunication network
US8832220B2 (en) * 2007-05-29 2014-09-09 Domingo Enterprises, Llc System and method for increasing data availability on a mobile device based on operating mode
US20090024755A1 (en) * 2007-07-16 2009-01-22 Amit Singh Rathore Method And Apparatus For Transferring Large Quantities Of Data
US8213416B2 (en) * 2008-05-30 2012-07-03 Tekelec, Inc. Methods, systems, and computer readable media for early media connection proxying
US9170787B2 (en) * 2008-06-27 2015-10-27 Microsoft Technology Licensing, Llc Componentization of compiler functionality
US8224933B2 (en) * 2009-02-26 2012-07-17 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for case-based service composition
US8332871B2 (en) * 2009-02-27 2012-12-11 Red Hat, Inc. Mechanism for improved integration of JSLEE and SIP servlets in a JAVA virtual machine
US8448139B2 (en) * 2009-10-05 2013-05-21 International Business Machines Corporation Automatic correction of application based on runtime behavior
US10462206B2 (en) * 2009-10-16 2019-10-29 Real Innovations International Llc Bidirectional networked real-time data exchange using a spreadsheet application
JP5488178B2 (ja) * 2010-04-30 2014-05-14 富士通株式会社 データ管理プログラム及び方法、並びにノード装置
US8453123B2 (en) * 2010-07-16 2013-05-28 International Business Machines Corporation Time-based trace facility
CN103069748B (zh) * 2010-08-06 2018-04-10 英派尔科技开发有限公司 通信网络监视
JP2013533553A (ja) * 2010-09-07 2013-08-22 ヒョンダイ モーター カンパニー システムテスト方法
US8924539B2 (en) * 2010-11-24 2014-12-30 Red Hat, Inc. Combinatorial optimization of multiple resources across a set of cloud-based networks
US8572504B1 (en) * 2010-12-09 2013-10-29 The Mathworks, Inc. Determining comprehensibility of a graphical model in a graphical modeling environment
US8856767B2 (en) * 2011-04-29 2014-10-07 Yahoo! Inc. System and method for analyzing dynamic performance of complex applications
US8689226B2 (en) * 2011-05-11 2014-04-01 Hewlett-Packard Development Company, L.P. Assigning resources to processing stages of a processing subsystem
CN103748858B (zh) * 2011-06-30 2018-10-26 瑞典爱立信有限公司 灵活的数据通信
US8689228B2 (en) * 2011-07-19 2014-04-01 International Business Machines Corporation Identifying data communications algorithms of all other tasks in a single collective operation in a distributed processing system
US20140067994A1 (en) * 2012-08-29 2014-03-06 Krishna P. Puttaswamy Naga Reducing costs related to use of networks based on pricing heterogeneity
US20140324928A1 (en) * 2013-04-29 2014-10-30 Hewlett-Packard Development Company, L.P. Large-scale data transfer

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1399741A (zh) * 1999-11-25 2003-02-26 艾利森电话股份有限公司 分布式处理系统中的内部进程通信
US20030084106A1 (en) * 2001-10-31 2003-05-01 Comverse, Ltd. Efficient transmission of multi-media contents as electronic mail
US20050138009A1 (en) * 2003-12-19 2005-06-23 Deshpande Sachin G. Systems and methods for providing access to an embedded thumbnail image
GB2430110A (en) * 2005-08-31 2007-03-14 Canon Kk Method and System for Transferring Electronic Document Data
CN101072172A (zh) * 2006-05-10 2007-11-14 李晓耕 一种实现网络数据高效传递的方法及其装置
CN101320336A (zh) * 2007-06-05 2008-12-10 Sap股份公司 异构环境中的组件的部署计划

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ROCKFORD LHOTKA: "《VB.NET业务对象专家指南》", 30 September 2004 *

Also Published As

Publication number Publication date
CN103748858B (zh) 2018-10-26
EP2727314A1 (en) 2014-05-07
WO2013000494A1 (en) 2013-01-03
US20140136592A1 (en) 2014-05-15
US10536508B2 (en) 2020-01-14

Similar Documents

Publication Publication Date Title
Aksakalli et al. Deployment and communication patterns in microservice architectures: A systematic literature review
CN109284197B (zh) 基于智能合约的分布式应用平台及实现方法
US10715388B2 (en) Using a container orchestration service for dynamic routing
CN109889575B (zh) 一种边缘环境下的协同计算平台系统及方法
JP6408545B2 (ja) ロケーションニュートラルソフトウェアの需要増大に伴う展開に対するシステム及び方法
US20080049022A1 (en) Distributing Services in Graph-Based Computations
US8640149B2 (en) Method and apparatus for dynamic web service composition and invocation
Bouloukakis et al. Automated synthesis of mediators for middleware-layer protocol interoperability in the IoT
WO2007028994A1 (en) Improvements in and relating to service oriented architecture
CN110555550B (zh) 在线预测服务的部署方法、装置及设备
CN114490268A (zh) 全链路监控方法、装置、设备、存储介质和程序产品
Aljazzaf Bootstrapping quality of web services
CN110769018A (zh) 一种消息推送方法及装置
Schaeffer et al. A service-oriented framework for real-time and distributed geoprocessing
US8930935B2 (en) Composite service refactoring
KR20180118393A (ko) 분산형 클라우드 컴퓨팅 시스템, 이에 적용되는 장치 및 장치의 동작 방법
US8966094B2 (en) Managing session data of a composite service session in a communication network
US20200310828A1 (en) Method, function manager and arrangement for handling function calls
CN113010561B (zh) 基于超级账本的数据获取方法、装置、计算机系统
EP1574980A1 (en) Context objects for accessing message content
Cheung et al. Towards autonomous service composition in a grid environment
CN103748858A (zh) 灵活的数据通信
Aubonnet et al. Service creation and self-management mechanisms for mobile cloud computing
Nilsson et al. Performance evaluation of message-oriented middleware
US10817334B1 (en) Real-time analysis of data streaming objects for distributed stream processing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181026

Termination date: 20200630

CF01 Termination of patent right due to non-payment of annual fee