CN105340219A - 集成协议的动态管理 - Google Patents

集成协议的动态管理 Download PDF

Info

Publication number
CN105340219A
CN105340219A CN201480034540.XA CN201480034540A CN105340219A CN 105340219 A CN105340219 A CN 105340219A CN 201480034540 A CN201480034540 A CN 201480034540A CN 105340219 A CN105340219 A CN 105340219A
Authority
CN
China
Prior art keywords
group
rule
application
path
program code
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
CN201480034540.XA
Other languages
English (en)
Other versions
CN105340219B (zh
Inventor
L·尼古尔
S·M·古米尼
K·于
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN105340219A publication Critical patent/CN105340219A/zh
Application granted granted Critical
Publication of CN105340219B publication Critical patent/CN105340219B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5025Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

用于集成协议的动态管理的计算机实现的过程示例性实施例连接一组应用到一通信结构,以形成一组连接;该组连接被监测,以收集一组性能指标。响应于确定预定性能指标不在与该组应用的该特定应用相关联的预定容限内,由该一个或多个处理器通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则。

Description

集成协议的动态管理
技术领域
本公开总体涉及数据处理系统中的应用集成,更具体来说,涉及数据处理系统中的集成协议的动态管理。
背景技术
应用或应用组件常常与其它应用或组件通信,以检索和处理相关数据。例如,用于电子商务的应用与搜索装置通信,以检索目录搜索数据,也与订单管理系统通信,以存储订单。随着软件即服务(SaaS)的越来越多的使用以及采用基于云的计算技术的应用的部署,粒状(granular)互联服务的模式已经演变并变得无所不在。
采用这个模式的一个明显的典型问题是,特定类型的集成系统的总体性能一般依赖于系统中最薄弱的环节。因此,当一个组件的负担太重、发生故障或表现不良时,整个集成系统就变差。
发明内容
按照一个实施例,用于集成协议的动态管理的计算机实现的过程包含:由执行存储在连接到一个或多个处理器的存储器中的计算机可执行程序代码的该一个或多个处理器连接一组应用到一通信结构,以形成一组连接;以及由该一个或多个处理器监测该组连接,以收集与该组连接相关联的一组性能指标。
该计算机实现的过程进一步包含:由该一个或多个处理器确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内。响应于确定预定性能指标不在与该组应用的该特定应用相关联的预定容限内,由该一个或多个处理器通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则。
按照另一个实施例,一种用于集成协议的动态管理的计算机程序产品包含含有在其上存储的计算机可执行程序代码的计算机可记录的数据存储设备。所述计算机可执行程序代码包含用于连接一组应用到一通信结构以形成一组连接的计算机可执行程序代码。所述计算机可执行程序代码进一步包含用于监测该组连接,以收集与该组连接相关联的一组性能指标的计算机可执行程序代码。所述计算机程序产品进一步包含用于由该一个或多个处理器确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内的计算机可执行程序代码,以及用于——响应于确定预定性能指标不在与该组应用的该特定应用相关联的预定容限内,通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则——的计算机可执行程序代码。
按照另一个实施例,一种用于集成协议的动态管理的装置包含:通信结构;连接到通信结构的存储器,其中存储器含有计算机可执行程序代码;连接到通信结构的通信单元;连接到通信结构的输入/输出单元;连接到通信结构的显示器;及连接到通信结构的处理器单元。处理器单元执行计算机可执行程序代码,以指令该装置连接一组应用到一通信结构,以形成一组连接,以及监测该组连接,以收集与该组连接相关联的一组性能指标。
处理器单元进一步执行计算机可执行程序代码,以指令该装置确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内,以及响应于确定预定性能指标不在与该组应用的该特定应用相关联的预定容限内,通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则。
附图说明
为了更彻底理解本公开,现在参看下面配合附图和详细说明的简介,其中,相同的附图标记代表相同的部分。
图1是可操作用于本公开的各种实施例的示例性网络数据处理系统的框图;
图2是可操作用于本公开的各种实施例的示例性数据处理系统的框图;
图3是可操作用于本公开的各种实施例的集成控制系统的框图;
图4是按照本公开的一个实施例采用图3的集成控制系统的实施例的框图;
图5是按照本公开的一个实施例采用图3的集成控制系统的实施例的框图;
图6是按照本公开的一个实施例采用图3的集成控制系统的过程的流程图;和
图7是按照本公开的一个实施例的图6的采用集成控制系统的过程内的调整子过程的流程图。
具体实施方式
虽然下面提供了一个或多个实施例的说明性实现,但所披露的系统和/或方法可以使用任意数量的技术来实现。本公开应不局限于说明性的实施、附图和如下例示的技术,包括本文中例示和描述的示范性的设计和实现,而是可以在后附的权利要求的范围及其等同的全部范围内修改的。
本领域的熟练人员将明白,本公开的各方面可以体现为系统、方法或计算机程序产品。因此,本公开的各方面采取的形式可以是完全硬件的实施方式、完全软件的实施方式(包括固件、驻留软件、微代码等)或者是在本文中都被称为“电路”、“模块”或“系统”的、软件和硬件方面相结合的实施方式。
可以采用一个或多个计算机可读数据存储设备的任何组合。计算机可读数据存储设备例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读数据存储设备的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式压缩盘只读存储器(CD-ROM)、光存储设备、或磁存储设备,或者上述的任意合适的组合,但不包括传播介质。在本文的上下文中,计算机可读数据存储设备可以是任何能存储被指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序的有形设备。
用于执行本公开各方面的操作的计算机程序代码可以以一种或多种编程语言的任意组合编写,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。Java和所有基于Java的商标和标志是甲骨文公司和/或其分公司在美国和/或其它国家的商标。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/行动的装置。
也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/行动的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/行动。
现在参看各附图,特别是参看图1-2,提供了在其中可以实现示例性实施例的数据处理环境的示例性示意图。应当理解,图1-2只是示例性的,不是提出或暗示对在其中可以实现不同实施例的环境的任何限制。对于所示环境可以作出很多修改。
图1表现的是在其中可以实现示例性实施例的数据处理系统的网络的图示。网络数据处理系统100是一个在其中可以实现示例性实施例的计算机网络。网络数据处理系统100含有网络102,其是用来提供在网络数据处理系统100内连接在一起的各种设备和计算机之间的通信链路的介质。网络102可以包括诸如有线、无线通信链路或光线电缆的连接。
在所示的例子中,服务器104和服务器106与存储单元108一起连接到网络102。此外,客户机110、112和114也连接到网络102。客户机110、112和114例如可以是个人计算机或网络计算机。在所示的例子中,服务器104向客户机110、112和114提供数据,诸如引导文件、操作系统映像、集成控制系统116的实例和应用。本例中,客户机110、112和114是服务器114的客户机。网络数据处理系统100可以包括额外的服务器、客户机和未予示出的其它设备。
在所示的例子中,网络数据处理系统100是因特网,网络102代表采用传输控制协议/因特网协议(TCP/IP)协议套件互相通信的世界范围的网络和网关的集合。在因特网的核心,是包含成千上万的路由数据和消息的商业、政府、教育和其他计算机系统的主要节点或主机系统之间高速数据通信线路的骨干。当然,网络数据处理系统100也可以实现为许多不同类型的网络,诸如内部网、局域网(LAN)或广域网(WAN)。图1意在举例,而非对不同的示例性实施例的限制。
参看图2,所示是可操作用于本公开的各种实施例的示例性数据处理系统的框图。在这个示意性的例子中,数据处理系统200包括通信结构202,其提供在处理单元204、存储器206、持久性存储器208、通信单元210、输入/输出(I/O)单元212和显示器214之间的通信。
处理单元204用于执行可加载入存储器206的软件的指令。处理单元204可以是一个或多个处理器的集合,或者可以是一个多处理器核,这视具体实现而定。此外,处理单元204可以用一个或多个异类处理器系统实现,其中,主处理器与二级处理器一起存在于单一的芯片上。作为另一个示意性例子,处理单元204可以是含有多个相同的处理器的对称式多处理器系统。
存储器206和持久存储器208是存储设备216的例子。存储设备是任何能够存储信息的硬件,例如—但不限于—数据、功能形式的程序代码和/或其他合适的信息,无论是在临时性的和/或永久性的。在这些例子中,存储器206例如可以是随机存取存储器或任何其他合适的易失性或非易失性储存设备。持久存储器208可以根据特定的实现而采取各种形式。例如,持久存储器208可以包含一个或多个组件或设备。例如,持久存储器208可以是硬盘、闪存、可重写光盘、可重写磁带,或上述的某种组合。持久存储器208所用的介质也可以是移动的。例如,可移动硬盘驱动器可用于持久存储器208。
这些例子中的通信单元210,提供与其它数据处理系统或设备的通信。在这些例子中,通信单元210是一个网络接口卡。通信单元210可以通过使用物理和无线通信链路中的任一种,或者使用这二者,来提供通信。
输入/输出单元212允许与可能连接到数据处理系统200的其它设备之间的数据的输入和输出。例如,输入/输出单元212可以提供一个连接,用于用户通过键盘、鼠标和/或其它合适的输入设备进行输入。此外,输入/输出单元212还可以发送输出到打印机。显示器214提供一种将信息显示给用户的机制。
操作系统、图1的集成控制系统116、应用和/或程序的指令,可以位于通过通信结构202与处理器单元204通信的存储设备216中。在这些说明性的例子中,指令以功能形式位于持久存储器208上。这些指令可以被加载到内存206用于由处理器单元204执行。不同实施例的过程,可以由处理器单元204用可以位于诸如存储器206的存储器中的计算机实现的指令来执行。
这些指令被称为程序代码、计算机可用程序代码、或计算机可读的程序代码,可以被处理器单元204中的处理器读取和执行。在不同的实施例中的程序代码,可以体现在不同的物理或实体的计算机可读存储介质上,例如存储器206或持久存储器208上。
程序代码218——其在一个实施例中包含图1的集成控制系统116,以功能形式位于计算机可读存储介质上,诸如选择性地可移动的计算机可读设备220上,并且可以被加载到或传输到处理器单元200,用于被数据处理系统204执行。程序代码218和计算机可读存储设备220构成这些例子中的计算机程序产品222。在一个例子中,计算机可读的存储设备220可以是一种有形的形式,例如光盘或磁盘,其被插入或放入用于传输到存储设备的持久存储器208的一部分的驱动器或其它设备中,诸如是持久存储器208的一部分的硬盘驱动器中。采用有形的形式的计算机可读的存储设备220,也可采取持久性存储的形式,如连接到数据处理系统200的硬盘驱动器、拇指驱动器(thumbdrive)或闪存。计算机可读存储装置220的有形的形式也被称为计算机可记录存储介质或计算机可读的数据存储设备。在某些情况下,计算机可读存储设备220可能不是可移动的。
或者,程序代码218可以通过至通信单元210的通信链路和/或通过至输入/输出单元212的连接,从计算机可读存储设备220传送到数据处理系统200。在示例性例子中,该通信链路和/或连接可以是物理的或无线的。
在一些说明性实施例中,可以经过网络把程序代码218从另一个设备或数据处理系统200下载到持久存储器208。例如,在一个服务器数据处理系统中的计算机可读数据存储设备中存储的程序代码,可以经过网络从服务器下载到数据处理系统200。提供程序代码218的数据处理系统可以是服务器计算机、客户端计算机或某种能存储和发送程序代码218的其它设备。
以图2的数据处理系统200为例,提出一种计算机实现的、用于集成协议的动态管理的过程。处理单元204执行在连接到处理器单元204的一个或多个处理器的存储器206内存储的计算机可执行的程序代码,包含图1的集成控制系统116,以把一组应用连接到一通信结构以形成一组连接,以及监测该组连接以收集与该组连接相关联的性能指标(performancemetric)。
处理器单元204进一步执行在连接到处理器单元204的一个或多个处理器的存储器206内存储的计算机可执行的程序代码,以确定某预定性能指标是否处于与该组应用中的特定应用相关联的预定容限(tolerance)内。响应于确定该预定性能指标不处于与该组应用中的特定应用相关联的预定容限内,处理器单元204通过以编程方式运用一组规则来调整该组应用中的该特定应用在该组连接中的一个集成路径(integrationpath),其中,该组规则中的每个规则都是性能驱动的(performancedriven)规则。
参看图3,所示的是可操作用于本公开的各种实施例的集成控制系统的框图。集成控制系统300,是用于实时地在运行时用性能特征和实际集成内容的特征自动管理集成协议和通道以控制集成协议和通道的选择的系统或装置的例子。在本公开的上下文中,实时(realtime)是与以时、日、周、月度量的时间期间相比而言较短的时间期间的粗略估计。
集成控制系统300提供定义例如应用A302或应用B304的某应用需要处理的请求的服务和服务质量并且链接性能指标320到用来将该应用与数据处理系统的其他组件集成的一组通信协议320的特定通信协议和集成通道的功能。特定通信协议和集成通道也可以称作路径(paths)或路线(routes)。在本例中,各应用利用对话交换(conversationalexchange)形式的请求306和响应308的联系而互相通信。
不同的应用(或应用的组件),诸如当前例子中的应用A302和应用B304,通过集成总线318互相连接。集成总线318提供一种形式的使得能够在各种应用(或应用的组件)之间通信的通信结构(communicationfabric)。对于每个个别的连接来说,在集成总线318内由从通信协议组320定义集成路径的预定义集合。每个连接都有一个缺省集成路径。集成控制器314利用预定义的规则组316中的一个或多个规则来指示应当采用可用的预定集成路径中的哪个。
规则一般被定义为一个或多个条件,条件在满足时触发特定的行动。例如,某个包含一个或多个条件和一个或多个行动的规则可以被定义为:如果对组件A的请求次数超过100,000,持续两小时用‘批量发送’(batchsend)集成路径来与组件A通信。当该指定的条件出现时,对应的行动是采用集成总线318中该指定的集成路径。不是让同步请求大量涌向组件A,而是将通信协议选择成持续特定时间量的一种批量模式,以减轻对该组件的压力。也可以组合地执行一个或多个规则,以实现特定的结果。
集成控制器314能汇集许多功能,包括作为用于例如规则组316的性能指标驱动的规则的可插储存库(pluggablerepository),作为用于集成路径选择的控制器,以及作为用于测量插件(measurementplugins)的可插储存库,以由监测器310测量起初不被本公开的实施例的实现支持的性能指标312。
可以利用集成控制系统300,以根据正被路由的数据的某些额外属性,同时地使用不同的集成路径。例如,某电子商务网站既销售高度时间敏感的物品,也销售不是非常时间敏感的物品,用预定的规则来把大多数请求路由到一个等待批量(waitbatch)队列,但是,用相关联的数据的时间敏感性作为触发特征(triggercharacteristic),将也允许一些请求通过。
参看图4,所示的是按照本公开的一个实施例采用图3的集成控制系统的实施例的框图。集成控制系统400是图3的集成控制系统300的一个变体,其中,用简化表示的转换器404来代表集成控制器314和集成总线318的功能。
源402代表一个由一个或多个应用组成的集合或一个由一个或多个应用的组件组成的集合,它们需要与另一个由一个或多个应用组成的集合或另一个由一个或多个应用的组件组成的集合通信。在有些情况下,一个由一个或多个应用组成的集合或一个由一和个或多个应用的组件组成的集合可能需要与同一个由一个或多个应用组成的集合或同一个由一个或多个应用的组件组成的集合通信。
集成控制系统400(和集成控制系统300)之所以与以前尝试的解决不同,是因为运用基于性能的指标来根据实时测量的数据和可用性参数在不同的可用通信架构(协议和通道)之间进行选择。由于采用为后续使用而以性能指标组422的形式保存的性能指标420、以通信架构和目的地(协议和通道)的动态选择为形式的程序化管理,如所披露的服务的类型,适合于由特定的服务级别协议管理的基于服务的/云模型。性能指标组422可以被高速缓存起来,在协议选择活动期间提供增强的性能。
动态选择也意味着由转换器404根据以性能指标组422为形式的性能指标420来实际地转换通信协议。转换器404用消息/数据408、消息/数据410、消息/数据412和消息/数据414中的各个消息/数据,来与源402以及或者目标406或者目标416进行通信。
使用图3的例子,某电子商务网站既销售高度时间敏感的物品,也销售不是非常时间敏感的物品。转换器404运用特定的预定规则,用消息/数据410的路线(route)或路径(path),把来自源402的请求的大多数,路由到一个等待批量队列。等待批量队列起着缓冲器(buffer)的作用,用来捕获请求,直到进一步处理的时间已到。转换器404同时也用相关联的数据的时间敏感性作为触发特征(triggercharacteristic)、用消息/数据412的路线或路径,允许一些请求通过。在另一个变体中,转换器404运用特定的预定规则,用消息/数据410的一个路线或路径,把来自源402的请求的一部分路由到一个等待批量队列。然而在这种情况下,转换器404同时也用相关联的数据的时间敏感性作为触发特征,用消息/数据418至以目标416为形式的第二目标的路线或路径,允许一些请求通过。
在刚刚描述的例子中,提供了避免目标406的过载(overload)或潜在故障的能力,在一个实例中,实现这种能力的方式是,用一种队列管理技术把请求保持在等待批量队列中,直到目标406能处理负载(load)。在另一个实例中,将负载的一部分转移到另一个目标,如目标416。对要用哪个路线或路径的选择,由转换器运用性能指标组422来动态地管理。
参看图5,所示的是按照本公开的一个实施例采用图3的集成控制系统的实施例的框图。集成控制系统500是图3的集成控制系统300的变体,其中展现了涉及集成总线508和集成控制器510的相互作用。
如应用A502、应用B504、应用C506所示的应用(或应用的组件),每个都用集成总线508与另一个应用(或应用的组件)通信。通信路径被表示为与消息/数据512的标签相关联的实线。尽管通信路径是用相同的标识符标记的,这些通信路径可以按需在集成总线508与一个或多个应用(或应用的组件)之间传输不同的消息(命令、请求、响应)和数据。由消息/数据512的通信路径代表的路径的每一个都代表集成总线508与应用A502、应用B504、应用C506中的各个之间的一个或多个可能的路径。例如,集成总线508与应用A502之间的消息/数据512可以是单一的路径,或者是几个路径,这由集成总线508内定义并因此支持的协议组中的、在集成总线508与应用A502之间链接的协议来定义。
集成控制器510也与应用A502、应用B504、应用C506的每一个通信,以通过集成控制器510的监测组件实时地接收性能指标514。集成控制器510维护性能指标514,其中包括处理以下选项:合并、聚集、减少或高速缓存和让性能指标成为原始数据(rawdata)。
集成控制器510把运用用于获得要向集成总线508传递的行动的一组性能驱动的规则中的一个或多个规则实时地处理当前的性能指标514集合的结果,通知集成总线508。响应于确定与特定应用相关联的当前的性能指标514集合不在一个或多个性能指标的预定容限内,集成总线508通知该特定应用执行集成控制器因运用一组性能驱动的规则中的一个或多个规则的结果而指定的行动。
如果确定当前的性能指标514集合在一个或多个性能指标的预定容限内,集成控制器510不指定任何行动。集成控制器510返回去实时监测应用和收集性能指标514。
在一个示意性实例中,一个包含电子商务网站和结算室(backoffice)履行应用(fulfillmentapplication)的电子商务系统接收通过网站提交的订单,订单被传送到该履约应用。网站销售易腐坏的物品,包括鲜花,所以订单必须非常迅速地得到履行,因此从网站向履行应用的传送,是实时进行的。
在网站处的处理,通常工作良好。然而在特定的节日期间,例如在情人节期间,收到的订单多到履行应用跟不上趟。后端机器上的处理器使用率达到100%,存储器的耗费也达到顶峰,履行应用很快就崩溃。尽管网站能运行,网站却不能传送订单至履行应用,因此不能正常工作,因此网站也就瘫痪。企业因此蒙受潜在的利润损失。
下一个特定的节日,实行本公开的一个实施例。采用本公开的实施例后,网站和履行应用通过集成总线508相互通信。由集成控制器510维护着诸如图3的规则组316的一组性能驱动的规则中的一个特定规则,该规则被用来在履行应用机器上的处理器使用率超过70%时在集成总线508让订单排队,只有当处理器利用率降到70%以下时,才开始处理队列中的订单。
在本例的这个变体中,即使收到的订单比上一年的节日收到的多,由于现在利用集成总线508控制履行应用机器的负载,履行应用机器不会瘫痪。因此整个系统如预期的那样运行。尽管对急匆匆的订单的履行被延迟(由于队列处的延迟),整个系统的功能却得到维持。
来年,在本例的另一个变体中,下一年要把网站的功能增强到能提供一些需要超急处理的物品,例如需要在4小时内送达的物品。为了管理新的超急订单,开发了对应的规则。这个规则像从前一样,让使集成总线508在履行应用机器上的处理器使用率超过70%时,把请求路由到队列。不过,需要超急处理的物品的订单,不受这个规则的约束,仍然被径直传送到履行应用。采用本公开的具有新定义的规则的实施例,能减少履行应用上的负载,同时不会失去或者不必要地耽搁超急订单。
参看图6,所示的是按照本公开的一个实施例采用图3的集成控制系统的过程的流程图。过程600是采用图3的集成控制系统的过程的高级例子。
过程600开始(步骤602),将一个应用(或应用的组件)集合连接到通信结构,形成一组连接。这些连接使得能够在不同的应用以及不同应用的组件之间进行通信。通信结构进一步包含集成总线318形式的控制机构,控制机构进一步包含通信协议组320,如图3的集成控制系统中的那样。
过程600运用与该应用(或应用的组件)集合相关联的性能指标和一组规则中的一个或多个性能驱动的规则来监测该组连接(步骤606)。与该应用(或应用的组件)集合相关联的性能指标包含关于与该应用(或应用的组件)集合相关联的处理活动的使用信息。例如,可以针对诸如托管该应用(或应用的组件)集合中的一个或多个应用(或应用的组件)的服务器的资源,就处理器利用率和存储器利用率进行性能指标的收集和处理。在另一个例子中,可以就集成总线与应用之间的特定通信路径的通信路径使用率进行性能指标的收集和处理。
在本公开的一个实施例中,监测器是集成控制器的一个组件。集成控制器从是用性能指标610驱动的性能的一组规则608中识别一个或多个性能驱动的规则。性能指标610是由集成控制器的监测组件在与应用(或应用的组件)的每个相关联的监测活动期间获得的。
过程600确定预定性能指标是否在特定应用、应用的组件或路径的预定容限内(步骤612)。响应于确定预定性能指标是在特定应用、应用的组件或路径的预定容限内,处理600循环返回,如前面那样地去执行步骤606。在这种情况下,集成控制器已经使用该组性能驱动规则的一个或多个,结合为该特定应用、应用的组件或路径获得的各个性能指标,确定不需要采取进一步行动。不需要采取进一步行动的指示被传送到集成总线。
响应于确定预定性能指标不是在特定应用、应用的组件或路径的预定容限内,处理600用该组性能驱动规则的一个或多个,结合为该特定应用、应用的组件或路径获得的各个性能指标,为该组应用的特定应用调整该组连接中的集成路径(步骤614)。过程600然后终止(步骤616)。
使用如图3的集成控制系统300中的过程600的实施例,因此使性能触发器(performancetrigger)能够使用(用一组规则处理的)集成控制器收集的信息(性能指标),配合提供应用和应用的组件在其上通讯的集成总线,动态地将集成从一个路线(route)转换到另一个路线。
参看图7,介绍按照本公开的一个实施例在采用图3的集成控制系统的过程内的一个调整子过程的流程图。过程700是采用图3的集成控制系统300的图6的过程600的调整部分(步骤614)内的一个调整子过程的例子。
过程700开始(步骤702),确定调整行动是否包括改变一个或多个路径的选择(步骤704)。调整行动是由集成控制器用一组规则中的一个或多个性能驱动的规则处理与特定应用、应用的组件或路径相关联的性能指标的结果。响应于确定的调节作用不包括改变一个或更多的路径的选择,过程700向前直接执行步骤710。响应于确定调整行动包括改变一个或多个路径的选择,过程700确定改变行动是否包括一个或多个路径的激活(步骤706)。
响应于确定改变行动包括一个或多个路径的激活,过程700激活一个或多个路径(步骤708),然后终止(步骤714)。响应于确定改变行动不包括一个或多个路径的激活,过程700确定改变行动是否包括调整该一个或多个路径上的流量组合(trafficmix)(步骤710)。
响应于确定改变行动包括调整该一个或多个路径上的流量组合,处理700调整该一个或多个路径上的流量组合(步骤712),然后终止(步骤714)。响应于确定改变行动不包括调整该一个或多个路径上的流量组合,处理700然后终止(步骤714)。
因此总体看来,图6的过程600和图7的过程700定义了一个集成协议的动态管理的过程。因此,该组合的过程在被数据处理系统的一个或多个处理器执行时,定义了一个包含把包括应用需要处理的请求的服务定义和服务质量的性能指标链接到用于将应用与系统的其它组件集成的特定协议和集成通道的过程的实施例。该过程在被该一个或多个处理器执行时,进一步将应用和应用组件连接到通信互连结构(communicationinterconnectfabric),以形成一组连接,其中每个应用和应用组件都是互连的,各个连接都有包括默认路径(defaultpath)在内的定义的一组集成路径。
该过程在被该一个或多个处理器执行的过程时,进一步用一个集成控制器来监测该组连接,其中,集成控制器使用一组规则,该组规则是可选择的,并被保持在与集成控制器相关联的性能指标驱动的规则和测量插件(measurementplugins)的存储库中。该过程进一步确定特定应用的性能指标是否在预定容限内,并且,响应于确定该特定应用的该性能指标不在该预定容限内,集成控制器指示变更集成路径,其中,该变更包括改变一个或多个路径的选择,包括为该特定应用激活一个或多个路径和调整所选择的路径上的流量组合。
至此介绍了一个说明性实施例中的用于集成协议的动态管理的计算机实现的过程,包含:由执行存储在连接到一个或多个处理器的存储器中的计算机可执行程序代码的该一个或多个处理器连接一组应用到一通信结构,以形成一组连接;以及由该一个或多个处理器监测该组连接,以收集与该组连接相关联的一组性能指标。该计算机实现的过程进一步包含:由该一个或多个处理器确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内;以及响应于确定预定性能指标不在与该组应用的该特定应用相关联的预定容限内,由该一个或多个处理器通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
下面的权利要求书中的装置或步骤加功能元件的相应的结构、材料、行为和对等物,旨在包括用于以与具体要求保护的其它权利要求的元件相结合的方式执行功能的任何结构、材料和行为。对本发明的描述,是为了例示和说明的目的,而不是穷尽性的,也不是要把本发明限制到所披露的形式。在不背离本发明的范围和精神的情况下,许多的修改和变化对于所属技术领域的普通熟练人员来说都将是明显的。对实施例的选择和描述,旨在最好地解释本发明的原则和实际应用,并使所属技术领域的普通熟练人员能理解,本发明可以有适合于特定的预期用途的、具有各种修改的各种实施方式。
本发明可以采取全部硬件实现的形式、全部软件实现的形式、或者包含硬件和软件的实现的形式。在优选实施例中,本发明以软件实现,包括并不限于固件、驻留软件、微代码等等。
重要的是要注意,尽管在一个全功能的数据处理系统的上下文中描述了本发明,所属技术领域的普通熟练人员将明白,本发明的方法,可以以具有以各种形式在其中存储的包含计算机可执行程序代码的计算机可执行指令的计算机可记录数据存储设备的形式发布。计算机可记录数据存储设备包括可记录型介质,如软盘、硬盘、RAM、CD-ROM、DVD-ROM。计算机可执行指令可采取为在特定数据处理系统中使用而解码的编码格式的形式。
适用于存储和/或执行包含程序代码的计算机可执行指令的数据处理系统,将包括直接地耦合到或通过系统总线间接地耦合到存储器元件的一个或多个处理器。存储器元件可以包括在实际执行过程中所使用的本地存储器、大容量存储器(bulkstorage),以及提供至少部分程序代码的临时存储,以减少在执行过程中必须从大容量存储器中检索代码的次数的高速缓冲存储器。
输入/输出或I/O设备(包括但不限于键盘、显示器、指示设备等),可直接地或通过其间的输入/输出控制器耦合到该系统。
网络适配器也可被耦合到系统中,使数据处理系统通过其间的私人或公共网络耦合到与其他数据处理系统或远程打印机或存储设备。调制解调器、电缆调制解调器和以太网卡只是一些目前可用的类型的网络适配器。

Claims (20)

1.一种用于集成协议的动态管理的计算机实现的过程,该计算机实现的过程包含:
由执行存储在连接到一个或多个处理器的存储器中的计算机可执行程序代码的该一个或多个处理器连接一组应用到一通信结构,以形成一组连接;
由该一个或多个处理器监测该组连接,以收集与该组连接相关联的一组性能指标;
由该一个或多个处理器确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内;和
响应于确定预定性能指标不在与该组应用的该特定应用相关联的预定容限内,由该一个或多个处理器通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则。
2.按照权利要求1的计算机实现的过程,其中,所述通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则还包含:
确定调整行动是否包括改变一个或多个路径的选择;
响应于确定该调整行动包括改变一个或多个路径的选择,确定该改变行动是否包括该一个或多个路径的激活;
响应于确定该改变行动包括该一个或多个路径的激活,激活该一个或多个路径。
3.按照权利要求2的计算机实现的过程,其中,所述确定是否该改变行动包括调整该一个或多个路径上的流量组合还包含:
响应于确定该改变行动包括调整该一个或多个路径上的流量组合,调整该一个或多个路径上的流量组合。
4.按照权利要求1的计算机实现的过程,其中,该通信结构包含一个集成总线,并且其中该集成总线进一步包含由该组应用中的应用使用的一组通信协议。
5.按照权利要求1的计算机实现的过程,其中,由该一个或多个处理器确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内还包含:
使用结合为该组应用中的该特定应用获得的一个或多个性能指标使用的一组规则,其中该组规则中的每个规则都是性能驱动的规则,其中一集成控制器维护该组规则。
6.按照权利要求1的计算机实现的过程,其中,由该一个或多个处理器监测该组连接,以收集与该组连接相关联的一组性能指标还包含:
高速缓存该组性能指标以便随后与该组规则一起使用。
7.按照权利要求1的计算机实现的过程,其中,由执行存储在连接到一个或多个处理器的存储器中的计算机可执行程序代码的该一个或多个处理器连接一组应用到一通信结构,以形成一组连接还包含:
将包括与该组应用中的一个应用相关联请求的服务定义和服务质量的该组性能指标中的性能指标链接到用于将该应用与一个系统的其它组件集成的特定协议和集成通道,其中,该系统中的每个应用和应用组件是互连的并且每个连接都有包括默认路径的定义的一组集成路径。
8.一种用于集成协议的动态管理的计算机程序产品,该计算机程序产品包含:
含有在其上存储的计算机可执行程序代码的计算机可记录的数据存储设备,所述计算机可执行程序代码包含:
用于连接一组应用到一通信结构以形成一组连接的计算机可执行程序代码;
用于监测该组连接,以收集与该组连接相关联的一组性能指标的计算机可执行程序代码;
用于由该一个或多个处理器确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内的计算机可执行程序代码;和
用于响应于确定预定性能指标不在与该组应用的该特定应用相关联的预定容限内,通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则的计算机可执行程序代码。
9.按照权利要求8的计算机程序产品,其中,所述用于通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则的计算机可执行程序代码还包含:
用于确定调整行动是否包括改变一个或多个路径的选择的计算机可执行程序代码;
用于响应于确定该调整行动包括改变一个或多个路径的选择,确定该改变行动是否包括该一个或多个路径的激活的计算机可执行程序代码;
用于响应于确定该改变行动包括该一个或多个路径的激活,激活该一个或多个路径的计算机可执行程序代码。
10.按照权利要求9的计算机程序产品,其中,所述确定是否该改变行动包括调整该一个或多个路径上的流量组合还包含:
响应于确定该改变行动包括调整该一个或多个路径上的流量组合,调整该一个或多个路径上的流量组合。
11.按照权利要求8的计算机程序产品,其中,该通信结构包含一个集成总线,并且其中该集成总线进一步包含由该组应用中的应用使用的一组通信协议。
12.按照权利要求8的计算机程序产品,其中,用于由该一个或多个处理器确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内的计算机可执行程序代码还包含:
用于使用结合为该组应用中的该特定应用获得的一个或多个性能指标使用的一组规则的计算机可执行程序代码,其中该组规则中的每个规则都是性能驱动的规则,其中一集成控制器维护该组规则。
13.按照权利要求8的计算机程序产品,其中,用于由该一个或多个处理器监测该组连接,以收集与该组连接相关联的一组性能指标的计算机可执行程序代码还包含:
用于高速缓存该组性能指标以便随后与该组规则一起使用的计算机可执行程序代码。
14.按照权利要求8的计算机程序产品,其中,用于由执行存储在连接到一个或多个处理器的存储器中的计算机可执行程序代码的该一个或多个处理器连接一组应用到一通信结构,以形成一组连接的计算机可执行程序代码还包含:
用于将包括与该组应用中的一个应用相关联请求的服务定义和服务质量的该组性能指标中的性能指标链接到用于将该应用与一个系统的其它组件集成的特定协议和集成通道的计算机可执行程序代码,其中,该系统中的每个应用和应用组件是互连的并且每个连接都有包括默认路径的定义的一组集成路径。
15.一种用于集成协议的动态管理的装置,该装置包含:
通信结构;
连接到通信结构的存储器,其中存储器含有计算机可执行程序代码;
连接到通信结构的通信单元;
连接到通信结构的输入/输出单元;
连接到通信结构的显示器;及
连接到通信结构的处理器单元,其中处理器单元执行计算机可执行程序代码,以指令该装置:
连接一组应用到一通信结构,以形成一组连接;
监测该组连接,以收集与该组连接相关联的一组性能指标;
确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内;和
响应于确定预定性能指标不在与该组应用的该特定应用相关联的预定容限内,通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则。
16.按照权利要求15的装置,其中,处理器单元执行计算机可执行程序代码以通过以编程方式使用一组规则,为该组应用的该特定应用调整该组连接中的集成路径,其中该组规则中的每个规则都是性能驱动的规则还指令该装置:
确定调整行动是否包括改变一个或多个路径的选择;
响应于确定该调整行动包括改变一个或多个路径的选择,确定该改变行动是否包括该一个或多个路径的激活;和
响应于确定该改变行动包括该一个或多个路径的激活,激活该一个或多个路径。
17.按照权利要求16的装置,其中,处理器单元执行计算机可执行程序代码响应于确定该改变行动不包括该一个或多个路径的激活,还指令该装置确定是否该改变行动包括调整该一个或多个路径上的流量组合;和
响应于确定该改变行动包括调整该一个或多个路径上的流量组合,调整该一个或多个路径上的流量组合。
18.按照权利要求15的装置,其中,该通信结构包含一个集成总线,并且其中该集成总线进一步包含由该组应用中的应用使用的一组通信协议。
19.按照权利要求15的装置,其中,处理器单元执行计算机可执行程序代码以确定预定性能指标是否在与该组应用的一个特定应用相关联的预定容限内还指令该装置:
使用结合为该组应用中的该特定应用获得的一个或多个性能指标使用的一组规则,其中该组规则中的每个规则都是性能驱动的规则,其中一集成控制器维护该组规则。
20.按照权利要求15的装置,其中,处理器单元执行计算机可执行程序代码以连接一组应用到一通信结构,以形成一组连接还指令该装置:
将包括与该组应用中的一个应用相关联请求的服务定义和服务质量的该组性能指标中的性能指标链接到用于将该应用与一个系统的其它组件集成的特定协议和集成通道,其中,该系统中的每个应用和应用组件是互连的并且每个连接都有包括默认路径的定义的一组集成路径的。
CN201480034540.XA 2013-06-21 2014-05-15 集成协议的动态管理 Active CN105340219B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CA2819539 2013-06-21
CA2819539A CA2819539C (en) 2013-06-21 2013-06-21 Dynamic management of integration protocols
PCT/CA2014/050458 WO2014201553A1 (en) 2013-06-21 2014-05-15 Dynamic management of integration protocols

Publications (2)

Publication Number Publication Date
CN105340219A true CN105340219A (zh) 2016-02-17
CN105340219B CN105340219B (zh) 2019-07-19

Family

ID=52103738

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480034540.XA Active CN105340219B (zh) 2013-06-21 2014-05-15 集成协议的动态管理

Country Status (6)

Country Link
US (1) US10348588B2 (zh)
JP (1) JP6529488B2 (zh)
CN (1) CN105340219B (zh)
CA (1) CA2819539C (zh)
GB (1) GB2529601B (zh)
WO (1) WO2014201553A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107197315A (zh) * 2016-03-15 2017-09-22 奥多比公司 确定用于认证或者授权的多频道媒体分发者的恢复可用性
US10348588B2 (en) 2013-06-21 2019-07-09 International Business Machines Corporation Dynamic management of integration protocols

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1620781A (zh) * 2002-04-25 2005-05-25 国际商业机器公司 动态改变数据处理网络中的连接的系统和方法
US7275103B1 (en) * 2002-12-18 2007-09-25 Veritas Operating Corporation Storage path optimization for SANs
US20090320073A1 (en) * 2002-05-10 2009-12-24 Richard Reisman Method and Apparatus for Browsing Using Multiple Coordinated Device Sets
CN101981539A (zh) * 2008-03-31 2011-02-23 国际商业机器公司 使用优先级确定是否对指向存储器的输入/输出(i/o)请求进行排队
CN102460391A (zh) * 2009-05-01 2012-05-16 思杰系统有限公司 用于在应用传送结构中提供虚拟设备的系统和方法

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09289531A (ja) 1996-04-24 1997-11-04 Hitachi Ltd ネットワークにおける通信プロトコル自動選択装置及びその方法
US6738975B1 (en) 1998-11-18 2004-05-18 Software Ag, Inc. Extensible distributed enterprise application integration system
US6618378B1 (en) * 1999-07-21 2003-09-09 Alcatel Canada Inc. Method and apparatus for supporting multiple class of service connections in a communications network
US7269580B2 (en) 2000-10-03 2007-09-11 Celcorp, Inc. Application integration system and method using intelligent agents for integrating information access over extended networks
WO2002039351A2 (en) 2000-11-01 2002-05-16 Seebeyond Technology Corporation Sytems and methods for providing centralized management of heterogeneous distributed enterprise application integration objects
US7373349B2 (en) 2001-04-18 2008-05-13 International Business Machines Corporation Process for data driven application integration for B2B
US7260104B2 (en) * 2001-12-19 2007-08-21 Computer Network Technology Corporation Deferred queuing in a buffered switch
US7227841B2 (en) * 2001-07-31 2007-06-05 Nishan Systems, Inc. Packet input thresholding for resource distribution in a network switch
US20030093471A1 (en) 2001-10-18 2003-05-15 Mitch Upton System and method using asynchronous messaging for application integration
US7606929B2 (en) * 2003-06-30 2009-10-20 Microsoft Corporation Network load balancing with connection manipulation
US7404185B2 (en) 2003-12-02 2008-07-22 International Business Machines Corporation Method and apparatus of adaptive integration activity management for business application integration
US7843843B1 (en) * 2004-03-29 2010-11-30 Packeteer, Inc. Adaptive, application-aware selection of differntiated network services
US7496661B1 (en) * 2004-03-29 2009-02-24 Packeteer, Inc. Adaptive, application-aware selection of differentiated network services
US7644184B2 (en) 2004-12-08 2010-01-05 International Business Machines Corporation Universal adapter
US9654383B2 (en) * 2005-08-17 2017-05-16 Avaya Inc. Route optimization using measured congestion
US7606159B2 (en) * 2005-08-30 2009-10-20 Cisco Technology, Inc. Method and apparatus for updating best path based on real-time congestion feedback
GB0702583D0 (en) * 2006-05-05 2007-03-21 Omnifone Ltd PC tools
EP1936907A1 (en) * 2006-12-12 2008-06-25 The Sporting Exchange Ltd. Transaction processing system
US7584394B2 (en) * 2007-07-18 2009-09-01 International Business Machines Corporation System and method for pseudo-random test pattern memory allocation for processor design verification and validation
US8645960B2 (en) * 2007-07-23 2014-02-04 Redknee Inc. Method and apparatus for data processing using queuing
JP2009075718A (ja) 2007-09-19 2009-04-09 Hitachi Ltd 仮想i/oパスの管理方法、情報処理システム及びプログラム
US9009709B2 (en) * 2010-03-16 2015-04-14 Salesforce.Com, Inc. Asynchronous rollup numbers forecasting methods and systems
US8856364B2 (en) * 2011-03-11 2014-10-07 Google Inc. Conducting opportunistic network updates on a mobile device
JP2013258525A (ja) * 2012-06-12 2013-12-26 Hitachi Ltd 無線通信システム、ゲートウェイ装置、及びデータ配信方法
US8891357B2 (en) * 2012-08-31 2014-11-18 Cisco Technology, Inc. Switching to a protection path without causing packet reordering
CA2791771C (en) * 2012-10-05 2019-09-10 Ibm Canada Limited - Ibm Canada Limitee Dynamic and selective management of integration points using performance metrics
US8736629B1 (en) * 2012-11-21 2014-05-27 Ncomputing Inc. System and method for an efficient display data transfer algorithm over network
US9077758B1 (en) * 2013-03-14 2015-07-07 Mobile System 7 Test mode authorization logging
CA2819539C (en) 2013-06-21 2021-01-12 Ibm Canada Limited - Ibm Canada Limitee Dynamic management of integration protocols

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1620781A (zh) * 2002-04-25 2005-05-25 国际商业机器公司 动态改变数据处理网络中的连接的系统和方法
US20090320073A1 (en) * 2002-05-10 2009-12-24 Richard Reisman Method and Apparatus for Browsing Using Multiple Coordinated Device Sets
US7275103B1 (en) * 2002-12-18 2007-09-25 Veritas Operating Corporation Storage path optimization for SANs
CN101981539A (zh) * 2008-03-31 2011-02-23 国际商业机器公司 使用优先级确定是否对指向存储器的输入/输出(i/o)请求进行排队
CN102460391A (zh) * 2009-05-01 2012-05-16 思杰系统有限公司 用于在应用传送结构中提供虚拟设备的系统和方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10348588B2 (en) 2013-06-21 2019-07-09 International Business Machines Corporation Dynamic management of integration protocols
CN107197315A (zh) * 2016-03-15 2017-09-22 奥多比公司 确定用于认证或者授权的多频道媒体分发者的恢复可用性
CN107197315B (zh) * 2016-03-15 2020-10-30 奥多比公司 确定用于认证或者授权的多频道媒体分发者的恢复可用性

Also Published As

Publication number Publication date
GB2529601B (en) 2016-08-10
US20160127212A1 (en) 2016-05-05
US10348588B2 (en) 2019-07-09
JP2016524879A (ja) 2016-08-18
JP6529488B2 (ja) 2019-06-12
CA2819539A1 (en) 2014-12-21
CA2819539C (en) 2021-01-12
WO2014201553A1 (en) 2014-12-24
GB2529601A (en) 2016-02-24
GB201522214D0 (en) 2016-01-27
CN105340219B (zh) 2019-07-19

Similar Documents

Publication Publication Date Title
US10841241B2 (en) Intelligent placement within a data center
US10650424B2 (en) Dynamic cloud solution catalog
US20180300829A1 (en) System for intellectual property landscape analysis, risk management, and opportunity identification
US11516154B2 (en) Systems for managing messaging conversations
US20140278807A1 (en) Cloud service optimization for cost, performance and configuration
JP2020514881A (ja) キー付きネットワークデータストリームを処理するパラメータ化アプリケーションのダイナミック実行
US20140269256A1 (en) Network capacity planning
US20190199785A1 (en) Determining server level availability and resource allocations based on workload level availability requirements
CN107105064A (zh) 一种交易信息的推送方法及系统
US20180232807A1 (en) Advanced decentralized financial decision platform
Giunta et al. Providing QoS strategies and cloud‐integration to web servers by means of aspects
US8458323B1 (en) Associating problem tickets based on an integrated network and customer database
CN108476175A (zh) 使用对偶变量的传送sdn流量工程方法与系统
US20210042851A1 (en) Automonous multi-cloud solution design and fulfillment via crowdsourcing
US20240211311A1 (en) System and method for a decentralized financial simulation and decision platform
CN105340219A (zh) 集成协议的动态管理
US20150326660A1 (en) Devices, Methods, and Computer Readable Storage Devices for Collecting Information and Sharing Information Associated with Session Flows Between Communication Devices and Servers
CN114466005A (zh) 物联网设备编排
US20160189188A1 (en) Dynamic pricing based on transaction models
JP2021512521A (ja) グループビデオ通話におけるサイマルキャストストリームを最適化するためのシステムおよび方法
US20140173012A1 (en) System and method for managing email send jobs
JP2009157786A (ja) メッセージ送信制御方法、メッセージ送信制御装置、及びメッセージ送信制御プログラム
CN114610454A (zh) 一种微服务架构运行资源调度方法及装置
CN113435937A (zh) 广告创建方法及装置
US10904359B2 (en) Systems and methods for smart scheduling of outbound data requests

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