CN101663661B - 建模应用程序的分布式行为受控执行 - Google Patents

建模应用程序的分布式行为受控执行 Download PDF

Info

Publication number
CN101663661B
CN101663661B CN200880013198XA CN200880013198A CN101663661B CN 101663661 B CN101663661 B CN 101663661B CN 200880013198X A CN200880013198X A CN 200880013198XA CN 200880013198 A CN200880013198 A CN 200880013198A CN 101663661 B CN101663661 B CN 101663661B
Authority
CN
China
Prior art keywords
distributed
service
model
software application
read
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.)
Expired - Fee Related
Application number
CN200880013198XA
Other languages
English (en)
Other versions
CN101663661A (zh
Inventor
I·塞杜金
D·埃什纳
S·斯沃茨
U·K·巴斯卡拉
N·D·P·S·潘迪塔拉迪亚
A·S·库卡尼
H·A·伍
M·G·博尔萨
M·O·尼亚里
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN101663661A publication Critical patent/CN101663661A/zh
Application granted granted Critical
Publication of CN101663661B publication Critical patent/CN101663661B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

本发明涉及用于建模应用程序的分布式行为受控执行的方法、系统和计算机程序产品。本发明的各实施例方便了中央数据存储以及各种对等功能的互操作。因此,可以在利用中央数据存储和对等消息收发两者的优点的环境中执行分布式应用程序。中央数据存储的只读部分可用于提供在分布式应用程序的执行期间对各种处理系统的某种行为控制。因此,可以使用本发明的各实施例来形成策略驱动的节点集合,该节点集合形成用于基于模型的应用程序的分布式、分散型运行时环境。利用遵循集中式策略并通过对等结构执行应用程序的协作节点集合允许分布式应用程序运行时环境适应大规模地分布与分散。

Description

建模应用程序的分布式行为受控执行
背景
1.背景和相关技术
计算机系统和相关技术影响社会的许多方面。的确,计算机系统处理信息的能力已改变人们生活和工作的方式。计算机系统现在通常执行在计算机系统出现以前手动执行的许多任务(例如,文字处理、日程安排和会计等)。最近,计算机系统彼此耦合并耦合到其它电子设备以形成计算机系统和其它电子设备可以在其上传输电子数据的有线和无线计算机网络。因此,许多计算任务的执行分布在多个不同的计算机系统和/或多个不同的计算组件上。
可以利用各种不同的网络体系结构来允许计算机系统彼此交互。网络体系结构在某种程度上可以根据存在于该网络体系结构的计算机系统之间的功能关系来分类。例如,网络体系结构可被分类为客户机-服务器体系结构、对等体系结构等等。
客户机-服务器体系结构在不同计算机系统之间分离客户机功能和服务器功能。不同客户机-服务器体系结构的用途可以变化和/或以各种方式应用。然而,一般而言,客户机-服务器体系结构内的计算机系统之间的关系在所有客户机-服务器体系结构之间是非常相似的。通常将多个客户机计算机系统配置成向服务器计算机系统(或在某些环境中是服务器场)发送请求(例如,对数据)。服务器计算机系统(或服务器场)接收和处理请求(例如,访问所请求的数据)并将合适的响应(例如,所请求的数据)发送回客户机。
一种常见的客户机-服务器关系是万维网(“WWW”)的关系。Web服务器(服务器)维护并控制对可以从Web浏览器(客户机)通过因特网请求的内容(例如网页)的访问。
客户机-服务器体系结构出于多个原因是有利的,其中主要是由于将数据存储在中央位置处。例如,因为将数据存储在中央位置处,所以可以更容易地实现关于该数据的安全和访问控制。此外,因为存在客户机与服务器的功能之间的清晰划分,所以可以在不影响服务器的操作的情况下容易地升级客户机,反之亦然。
不幸的是,客户机-服务器体系结构还具有一定数量的缺点。一个主要缺点是缺乏稳健性,该缺点也是因将数据存储在中央位置中所导致的。即,如果服务器误工作,则可能无法满足客户机请求。在所接收到的请求的数量大到使服务器资源超载时,服务器还可能遭遇通信量阻塞。此外,在许多环境中用于建立服务器的资源通常超过多数家庭计算机系统的资源,从而令用户不能够创建服务器。
对等网络体系结构不具有服务器和客户机的概念。对等网络中的每一计算机系统被视作同等的对等节点。因此,对等网络体系结构依赖于网络上的所有计算机系统的计算能力和带宽,而不是将资源集中在少量服务器中(或甚至在单个服务器中)。对等网络体系结构通常用于将计算机系统连接在一起以形成自组织(ad hoc)网络,如,以便例如共享文件或交换实时数据。
对等网络体系结构出于多个原因是有利的,其中主要是由于资源在计算机系统之间被共享。例如,在新计算机系统加入对等网络时,该网络的资源容量增加,因为该加入计算机的资源可供该对等网络上的其它计算机系统使用。相反,客户机-服务器网络中的资源容量在新客户机发送请求到服务器时不增加。此外,因为资源在计算机系统之间共享,所以对等网络通常比客户机-服务器网络更稳健。即,如果能访问数据的一个计算机系统失效,则一个或多个其它计算机系统有可能也能访问相同的数据。
然而,对等网络也具有各种缺点。因为将每一计算机系统视为同等,所以任何一个计算机系统都难以控制其它计算机系统的行为,如,以便例如实现访问控制或其它安全措施。此中央控制的缺乏使得对等网络比客户机-服务器网络更易受恶意攻击(例如,中毒攻击、污染攻击、拒绝服务攻击、垃圾邮件等)得多。
此外,实质上没有对计算机系统何时可以加入或离开对等网络的限制。因此,为维护关于可请求数据的稳健性,可能在网络(例如,因特网)上将数据的相同部分在计算机系统之间传送多次。例如,在计算机系统离开对等网络时它可以将可请求数据传送到另一计算机系统以使该可请求数据保持可用。因此,每次计算机系统离开对等网络,就将数据的某些部分(可能第二、第三、第……次)传送到保持计算机系统。
企业软件通常被开发成用于客户机-服务器网络体系结构中(并因此遭受客户机-服务器所固有的问题)。企业软件通常是用于自动化诸如,例如会计、销售等商业过程的专有软件。由此,开发企业软件的公司通常期望企业软件被控制在它们的公司环境中使用。企业软件通常非常复杂且不是很好地适于在预期操作环境以外使用。因此,通常阻止企业软件在基于Web的环境中操作,并因此阻止了利用万维网(“WWW”)的简单性和动态性。
某种程度上相反的,基于Web的应用程序可以将整个因特网视作单个(但非受控)数据中心并容易地访问来自整个WWW上的各位置的数据。基于所访问的数据,基于Web的应用程序可以被容易地再混合并使用新设置来运行以便于改变开发者的期望。然而,因为使得数据对各种可能的非受控位置可访问并且可从这些位置访问,快速开发并且重混合的基于Web的应用程序(在某种程度上遭受对等体系结构所固有的问题)通常具有不合需要的低等级的相关安全性和可靠性。
简要概述
本发明涉及用于建模应用程序的分布式行为受控执行的方法、系统和计算机程序产品。本发明的各实施例包括被配置成执行分布式软件应用程序的系统。该系统包括多个处理系统。用于执行分布式软件应用程序的可配置分布式逻辑分布在多个处理系统之间。
一数据存储被连接到该分布式逻辑并在其之中共享。该数据存储包括只读数据和读写数据。只读数据规定了在执行分布式软件应用程序时分布式逻辑的行为。多个处理系统使用读写数据以在执行分布式软件应用程序时存储并共享分布式软件应用程序数据。
一消息基础结构被连接到该分布式逻辑并在其之中共享。该消息基础结构被配置成在处理系统之间交换消息以便a)发现处理系统处用于执行分布式软件应用程序的可配置分布式逻辑的存在,以及b)在执行分布式软件应用程序时协调处理系统来实现在只读数据中所规定的行为。
在某些实施例中,一分布式处理系统执行基于模型的分布式软件应用程序。该分布式处理系统包括一组共同表示分布式应用程序运行时环境的协作执行服务。该分布式运行时环境的执行服务接收执行存储在公共数据储存库的只读部分中的基于模型的软件应用程序的命令。该执行服务经由被标识为服务总线的指定种类的消息收发基础结构来发现分布式运行时环境的其它执行服务。服务总线允许执行服务彼此进行信号通信。该执行服务和其它执行服务协作地组合在一起以提供用于执行基于模型的软件应用程序的分布式逻辑。
该组执行服务组根据存储在公共数据储存库的只读部分中的策略经由服务总线来协调以执行基于模型的软件应用程序。执行该基于模型的软件应用程序包括:a)使用公共数据储存库的读写部分来反映基于模型的软件应用程序的状态,以及b)使用公共数据储存库的读写部分来反映对应于该基于模型的软件应用程序的操作数据。
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。该概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的附加特征和优点将在以下描述中叙述,且其部分根据本描述将是显而易见的,或可通过对本发明的实践获知。本发明的特征和优点可通过在所附权利要求书中特别指出的手段和组合来实现和获得。本发明的这些和其他特征将通过以下描述和所附权利要求书而变得更加完全明显,或可通过对下文中所述的本发明的实践来获知。
附图简述
为了描述可获得本发明的上述和其它优点和特征的方法,将通过引用附图中示出的本发明的具体实施例来呈现以上简要描述的本发明的更具体描述。可以理解,这些附图仅描述本发明的典型实施例,从而不被认为是对其范围的限制,本发明将通过使用附图用附加特征和细节来描述和说明,在附图中:
图1示出了方便了建模应用程序的分布式行为受控执行的示例计算机体系结构。
图2示出了方便根据行为执行策略在分布式执行逻辑之间执行应用程序的示例计算机体系结构。
图3示出了用于根据行为执行策略在分布式执行逻辑之间执行应用程序的示例方法的流程图。
详细描述
本发明涉及用于建模应用程序的分布式行为受控执行的方法、系统和计算机程序产品。本发明的各实施例包括被配置成执行分布式软件应用程序的系统。该系统包括多个处理系统。用于执行分布式软件应用程序的可配置分布式逻辑分布在多个处理系统之间。
一数据存储被连接到该分布式逻辑并在其之中共享。该数据存储包括只读数据和读写数据。只读数据规定在执行分布式软件应用程序时分布式逻辑的行为。多个处理系统使用读写数据以在执行分布式软件应用程序时存储并共享分布式软件应用程序数据。
一消息基础结构被连接到该分布式逻辑并在其之中共享。该消息基础结构被配置成在处理系统之间交换消息以便a)发现处理系统处用于执行分布式软件应用程序的可配置分布式逻辑的存在,以及b)在执行分布式软件应用程序时协调处理系统来实现在只读数据中所规定的行为。
在某些实施例中,一分布式处理系统执行基于模型的分布式软件应用程序。该分布式处理系统包括一组共同表示分布式应用程序运行时环境的协作执行服务。该分布式运行时环境的执行服务接收执行存储在公共数据储存库的只读部分中的基于模型的软件应用程序的命令。该执行服务经由被标识为服务总线的指定种类的消息收发基础结构来发现分布式运行时环境的其它执行服务。服务总线允许执行服务彼此进行信号通信。该执行服务和其它执行服务协作地组合在一起以提供用于执行基于模型的软件应用程序的分布式逻辑。
该组执行服务根据存储在公共数据储存库的只读部分中的策略经由服务总线来协调以执行基于模型的软件应用程序。执行该基于模型的软件应用程序包括:a)使用公共数据储存库的读写部分来反映基于模型的软件应用程序的状态,以及b)使用公共数据储存库的读写部分来反映对应于该基于模型的软件应用程序的操作数据。
本发明的各实施例可以包括含有计算机硬件的专用或通用计算机,这将在以下做出更详细讨论。本发明范围内的各个实施例还包括用于承载或其上储存有计算机可执行指令或数据结构的计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机访问的任何可用介质。作为示例而非限制,计算机可读介质可包括物理(或可记录类型的)计算机可读存储介质,诸如RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或可用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其它介质。
在本说明书和所附权利要求书中,“网络”被定义为允许在计算机系统和/或模块之间传输电子数据的一个或多个数据链路。当信息通过网络或另一通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为计算机可读介质。因此,作为示例而非限制,计算机可读介质还可包括可用于承载或存储计算机可执行指令或数据结构形式的所需程序代码装置并可由通用或专用计算机访问的网络或数据链路。
计算机可执行指令包括例如,使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言等中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述特征和动作是作为实现权利要求的示例形式而公开的。
本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机等等。本发明也可以在其中通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实践。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备中。
图1示出了方便建模应用程序的分布式行为受控执行的示例计算机体系结构100。在计算机体系结构100中所示的是数据存储101,处理系统104、105和106,以及消息基础结构108。所示组件中的每一个可通过诸如例如局域网(“LAN”)、广域网(“WAN”)或甚至因特网等网络彼此连接。因此,数据存储101,处理系统104、105和106,以及消息基础结构108,以及任何其它连接的组件,可以通过网络创建消息相关数据并交换消息相关数据(例如,网际协议(“IP”)数据报和利用IP数据报的其他更高层协议,诸如传输控制协议(“TCP”)、超文本传输协议(“HTTP”)、简单邮件传输协议(“SMTP”)等)。
处理系统104、105和106分别包括逻辑1041、1051和1061。逻辑104L、105L和106L共同地表示分布式逻辑107。分布式逻辑107被配置成执行分布于处理系统104、105和106之间的分布式软件应用程序。
数据存储101被连接到分布式逻辑107并在其之中共享。如所示的,数据存储101包括只读数据102和读写数据103。只读数据102可以是最初写入数据存储的数据(一次写入)并在该初始写之后是只读的。只读数据可以规定在执行分布式软件应用程序时分布式逻辑107的行为。处理系统104、105和106(以及所包含的相应逻辑104L、105L和106L)可以使用读写数据103以在执行分布式软件应用程序时存储并共享分布式软件应用程序。
处理系统104的左边和处理系统106的右边的一系列三个句点(省略号)表示可以其它处理系统可被包括在计算机体系结构100中。这些其它处理系统可以向分布式逻辑107贡献逻辑。
消息基础结构108被连接到分布式逻辑107并在其之中共享。消息基础结构108被配置成在处理系统104、105和106之间交换消息。消息基础结构108可用于发现处理系统104、105和106出用于执行分布式应用程序的诸如例如逻辑104L、105L和106L等可配置分布式逻辑的存在。消息基础结构108还可用于协调处理系统104、105和106以在执行分布式应用程序时实现在只读数据102中所规定的行为。在某些实施例中,消息基础结构108是对等发现和消息收发(信号传送)基础结构。
因此,本发明的各实施例方便了中央数据存储以及各种对等功能的互操作。因此,可以在利用中央数据存储和对等消息收发两者的优点的环境中执行分布式应用程序。中央数据存储的只读部分可用于提供在分布式应用程序的执行期间对各种处理系统的某种行为控制。
图2示出了方便根据行为执行策略在分布式执行逻辑之间执行应用程序的示例计算机体系结构200。在计算机体系结构200中所示的是储存库201,执行服务204、205和206,以及服务总线208。所示组件中的每一个可通过诸如例如局域网(“LAN”)、广域网(“WAN”)或甚至因特网等网络彼此连接。因此,储存库201,执行服务204、205和206,以及服务总线208,以及任何其它连接的组件,可以通过网络创建消息相关数据并交换消息相关数据(例如,网际协议(“IP”)数据报和利用IP数据报的其他更高层协议,诸如传输控制协议(“TCP”)、超文本传输协议(“HTTP”)、简单邮件传输协议(“SMTP”)等)。
执行服务204、205和206可以分散在网络上。执行服务204、205和206负责运行并管理分布式应用程序。执行服务204的左边和执行服务206的右边的一系列三个句点(省略号)表示其它执行服务可被包括在计算机体系结构200中。
储存库201包括只读(或一次写入)数据202和读写数据203。只读数据202还包括应用程序模型211和策略212。应用程序模型211和策略212在诸如例如执行服务204、205和206等执行服务之间共享。策略212是定义执行服务的集体行为的声明性语句。例如,策略可以定义被允许每秒从执行服务发送的消息的最大数量(例如,二十)。
因此,计算机体系结构200中的每一执行服务使用策略212来解释和编译。执行服务可以如策略212中所定义的那样被允许本地行为中的一定自由度。例如,可以允许执行服务执行本地错误恢复,诸如例如,重启进程。然而,其它更严重和/或复杂的诸如例如磁盘失效等错误可以影响用于适当恢复的多个执行服务(例如,应用程序组件的重新部署)。因此,从这些更严重和/或复杂错误中恢复可以包括多个执行服务的集体行为。因此,可以禁止个别执行服务启动对这些更严重和/或复杂错误的恢复。
应用程序模型211包括可由执行服务的集体消耗以实现分布式应用程序的应用程序模型。例如,应用程序模型可以是由执行服务的集体运行并管理的声明性程序。
读写数据203还包括应用程序状态213和操作数据214。应用程序状态213可以反映分布式应用程序(例如,来自应用程序模型211的应用程序模型)的状态,诸如例如,已配置、已部署、运行中等。操作数据214可以包括用于确定对策略212的遵从的信息,诸如例如,运行时度量。例如,操作数据214可以包括执行服务每秒发送多少消息的指示。执行服务可以基于分布式应用程序的运行时行为将操作数据写入到操作数据214中。
执行服务可以使用服务总线208(例如,对等结构,诸如例如,分布式发布/订阅基础结构)来发现彼此并实现协作行为。服务总线208可以包括传递联合命名空间服务(允许执行服务彼此联合)和消息总线。例如,通过经由服务总线208的通信,执行服务204、205和206可以如分布式应用程序的模型中(例如,包含在应用程序模型211中)所示地共同形成群集以主存网页。
可以在一个执行服务的灾难性失效发生时实现其它协作行为。一个或多个健康“伙伴”执行服务可以经由服务总线208彼此进行信号通信并选择另一执行服务(例如,通过投票)来接管并从错误中恢复。
如所示的,执行服务204、205和206分别包括控制器204C、205C和206C。一般而言,控制器解释策略(例如,策略212)并在执行服务之间实施协作行为。例如,控制器可以实施照管“伙伴”执行服务并实施抑制负面本地行为,诸如例如,尝试关闭包含正运行的分布式应用程序的一部分的本地服务(例如,因特网信息服务(“IIS”)或SQL服务器)。
因此,本发明的各实施例包括其中每个执行服务具有对策略和应用程序模型的相同视图并可发现其它执行服务并与之进行信号通信的环境。因此,在诸如例如计算机体系结构200等环境中与一个执行服务交互以操作一整组(或所有)执行服务是可能的。
图3示出了用于根据行为执行策略在分布式执行逻辑之间执行应用程序的示例方法300的流程图。方法300将参考计算机体系结构200中的组件和数据来描述。
方法300包括分布式运行时环境的执行服务接收执行存储在公共数据储存库的只读部分中的基于模型的软件应用程序的命令的动作(动作301)。例如,执行服务204可以接收执行应用程序211A的执行命令221。
方法300包括执行服务经由服务总线发现分布式运行时环境的其它执行服务的动作(动作302)。例如,执行服务204可以经由服务总线208分别通过消息交换222和223来发现执行服务205和206。
方法300包括执行服务和其它执行服务协作地组合在一起以提供用于执行基于模型的软件应用程序的分布式逻辑的动作(动作303)。例如,执行服务204与执行服务205和206可以协作地组合在一起(例如,根据策略212)以提供用于执行应用程序211A的分布式逻辑。
方法300包括该组执行服务根据存储在公共数据储存库的只读部分中的策略经由服务总线来协调以执行基于模型的软件应用程序的动作(动作304)。例如,执行服务204、205和206的组可以根据策略212经由服务总线208来协调以执行应用程序211A。
根据策略经由服务总线来协调以执行基于模型的软件应用程序包括使用公共数据储存库的读写部分以反映基于模型的软件应用程序的状态的动作(动作305)。例如,执行服务204、205和206可以将数据写入到或读取自应用程序状态213以反映应用程序211的状态(例如,已配置、已部署、正运行等)。
根据策略经由服务总线来协调以执行基于模型的软件应用程序包括使用公共数据储存库的读写部分来反映对应于基于模型的软件应用程序的操作数据的动作(动作306)。例如,执行服务204、205和206可以将数据写入到或读取自操作数据214以反映对应于应用程序211的运行时度量(例如,平均响应时间、每秒消息数等)。运行时度量可用于确定对策略212的遵从。
因此,可以使用本发明的各实施例来形成策略驱动的节点集合,该节点集合形成了用于基于模型的应用程序的分布式、分散型运行时环境。每一节点处的控制器可以实施策略并与其它节点协调。利用遵循集中式策略并通过对等结构执行应用程序的协作节点集合允许分布式应用程序运行时环境适应大规模地分布与分散。例如,可以将大规模WAN或甚至因特网视作数据中心。
本发明可具体化为其它具体形式而不背离其精神或本质特征。所述实施例在所有方面都应被认为仅是说明性而非限制性的。从而,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方式的含义和范围内的所有改变应被权利要求书的范围涵盖。

Claims (18)

1.一种被配置成对基于模型的分布式软件应用程序的执行进行集中控制的系统(100),所述系统包括多个处理系统(104、105、106)、数据存储(101)以及消息基础结构(108),其中:
所述多个处理系统(104、105、106)被配置成互操作以跨所述多个处理系统执行所述基于模型的分布式软件应用程序,所述多个处理系统中的每一个包括:
分布式逻辑的一部分,所述分布式逻辑的一部分被配置成执行所述基于模型的分布式软件应用程序的一部分;以及
控制器,所述控制器被配置成:
实施集中定义的策略,所述集中定义的策略规定并限制在基于模型的分布式软件应用程序的执行期间所述处理系统的行为;以及
协调与其他处理系统的互操作,以根据所述集中定义的策略来执行所述基于模型的分布式软件应用程序;
所述数据存储(101)被连接到所述处理系统并在其之中共享,所述数据存储包括:
只读策略数据(102),所述只读策略数据集中定义在执行所述基于模型的分布式应用程序期间分布式逻辑的每一部分要遵从的应用程序特定策略,并且规定和限制在执行所述基于模型的分布式软件应用程序期间处理系统可单独地和共同地展示的行为;以及
读写应用程序数据(103),所述多个处理系统使用所述读写应用程序数据以在执行所述基于模型的分布式软件应用程序期间存储并共享分布式软件应用程序数据;以及
所述消息基础结构(108)被连接到所述分布式逻辑并在其之中共享,所述消息基础结构被配置成在处理系统之间交换消息,以便:
发现处理系统处用以执行所述基于模型的分布式软件应用程序的各部分分布式逻辑(104L、105L、106L)的存在;以及
与处理系统处的控制器进行互操作来在执行所述基于模型的分布式软件应用程序时规定并限制所述处理系统的行为以遵从所述集中定义的策略。
2.如权利要求1所述的系统,其特征在于,所述多个处理系统形成用于基于模型的应用程序的分布式、分散型运行时环境。
3.如权利要求1所述的系统,其特征在于,还包括描述为由所述分布式逻辑执行而配置的一个或多个基于模型的软件应用程序的第二只读数据。
4.如权利要求1所述的系统,其特征在于,所述读写数据包括用于描述分布式应用程序的应用程序状态的数据,其中所述应用程序状态选自已配置、已部署、以及正运行。
5.如权利要求1所述的系统,其特征在于,所述读写数据包括用于确定对所述只读数据中所指示的规定行为的遵从的运行时度量。
6.如权利要求1所述的系统,其特征在于,所述消息基础结构是分布式发布/订阅基础结构。
7.如权利要求1所述的系统,其特征在于,所述消息基础结构是对等消息通信收发基础结构。
8.一种在分布式处理系统(200)中的用于执行基于模型的分布式软件应用程序的方法,所述分布式处理系统包括共同表示分布式运行时环境的一组协作执行服务(204、205、206),用于执行基于模型的软件应用程序的分布式逻辑分布在所述一组协作执行服务上,所述分布式处理系统包括具有只读部分(202)和读写部分(203)的公共数据储存库(201),所述只读部分存储一个或多个基于模型的软件应用程序(2114)并存储规定在执行基于模型的软件应用程序时所述分布式运行时环境的行为的策略(212),所述读写部分可由执行服务使用以维护应用程序状态和应用程序操作数据,所述分布式系统包括服务总线(208),执行服务使用所述服务总线来发现彼此并彼此协作地通信以执行基于模型的软件应用程序,所述方法包括:
所述分布式运行时环境的执行服务接收执行存储在所述公共数据储存库的只读部分中的基于模型的软件应用程序的命令(221)的动作;
所述执行服务经由所述服务总线发现(222)所述分布式运行时环境的其它执行服务的动作;
所述执行服务和所述其它执行服务协作地组合在一起以提供用于执行所述基于模型的软件应用程序的分布式逻辑的动作;
所述一组执行服务根据存储在所述公共数据储存库的只读部分中的策略经由所述服务总线来协调以执行所述基于模型的软件应用程序的动作,包括:
使用所述公共数据储存库的读写部分来反映所述基于模型的软件应用程序的状态(213)的动作;以及
使用所述公共数据储存库的读写部分来反映对应于所述基于模型的软件应用程序的操作数据(214)的动作。
9.如权利要求8所述的方法,其特征在于,所述执行服务经由所述服务总线发现所述分布式运行时环境的其它执行服务的动作包括所述执行服务经由对等结构发现所述分布式运行时环境的其它执行服务。
10.如权利要求8所述的方法,其特征在于,所述一组执行服务根据存储在所述公共数据储存库的只读部分中的策略经由所述服务总线来协调以执行所述基于模型的软件应用程序的动作包括每一执行服务处的控制器监视所述执行服务的行为来寻找对所述策略的遵从的动作。
11.如权利要求8所述的方法,其特征在于,所述一组执行服务根据存储在所述公共数据储存库的只读部分中的策略经由所述服务总线来协调以执行所述基于模型的软件应用程序的动作包括所述一组执行服务根据存储在中央储存库中的策略经由对等基础结构来协调以执行所述基于模型的软件应用程序的动作。
12.如权利要求8所述的方法,其特征在于,所述一组执行服务根据存储在所述公共数据储存库的只读部分中的策略经由所述服务总线来协调以执行所述基于模型的软件应用程序的动作包括采用所述策略来抑制一执行服务处对一个或多个其它执行服务处的分布式应用程序的执行有负面影响的本地行为。
13.如权利要求8所述的方法,其特征在于,使用所述公共数据储存库的读写部分来反映对应于所述基于模型的软件应用程序的操作数据的动作包括使用所述公共数据储存库的读写部分来维护可被评估以确定执行服务是否遵从所述策略的运行时度量的动作。
14.一种在分布式处理系统(200)中用于执行基于模型的分布式软件应用程序的设备,所述分布式处理系统包括共同表示分布式运行时环境的一组协作执行服务(204、205、206),用于执行基于模型的软件应用程序的分布式逻辑分布在所述一组协作执行服务上,所述分布式处理系统包括具有只读部分(202)和读写部分(203)的公共数据储存库(201),所述只读部分存储一个或多个基于模型的软件应用程序(2114)并存储规定在执行基于模型的软件应用程序时所述分布式运行时环境的行为的策略(212),所述读写部分可由执行服务使用来维护应用程序状态和应用程序操作数据,所述分布式系统包括服务总线(208),执行服务使用所述服务总线来发现彼此并彼此协作地通信以执行基于模型的软件应用程序,所述设备包括:
用于接收执行存储在所述公共数据储存库的只读部分中的基于模型的软件应用程序的装置(221);
用于经由所述服务总线发现(222)所述分布式运行时环境的其它执行服务的装置;
用于与所述其它执行服务协作地组合在一起以提供用于执行所述基于模型的软件应用程序的分布式逻辑的装置;
用于根据存储在所述公共数据储存库的只读部分中的策略经由所述服务总线来协调以执行所述基于模型的软件应用程序的装置,包括:
用于使用所述公共数据储存库的读写部分来反映所述基于模型的软件应用程序的状态(213)的装置;以及
用于所述公共数据储存库的读写部分来反映对应于所述基于模型的软件应用程序的操作数据(214)的装置。
15.如权利要求14所述的设备,其特征在于,用于协调以执行所述基于模型的软件应用程序的装置包括用于监视所述执行服务的行为以寻找对所述策略的遵从的装置。
16.如权利要求14所述的设备,其特征在于,用于协调以执行所述基于模型的软件应用程序的装置包括用于根据存储在中央储存库中的策略经由对等基础结构来协调以执行所述基于模型的软件应用程序的装置。
17.如权利要求14所述的设备,其特征在于,用于协调以执行所述基于模型的软件应用程序的装置包括用于采用所述策略来抑制另一执行服务处对一个或多个其它执行服务处的分布式应用程序的执行有负面影响的本地行为的装置。
18.如权利要求14所述的设备,其特征在于,用于使用所述公共数据储存库的读写部分来反映对应于所述基于模型的软件应用程序的操作数据的装置包括用于使用所述公共数据储存库的读写部分来维护可以被评估以确定执行服务是否遵从所述策略的运行时度量的装置。
CN200880013198XA 2007-04-26 2008-03-25 建模应用程序的分布式行为受控执行 Expired - Fee Related CN101663661B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/740,737 2007-04-26
US11/740,737 US8024396B2 (en) 2007-04-26 2007-04-26 Distributed behavior controlled execution of modeled applications
PCT/US2008/058145 WO2008134159A1 (en) 2007-04-26 2008-03-25 Distributed behavior controlled execution of modeled applications

Publications (2)

Publication Number Publication Date
CN101663661A CN101663661A (zh) 2010-03-03
CN101663661B true CN101663661B (zh) 2013-03-13

Family

ID=39888224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880013198XA Expired - Fee Related CN101663661B (zh) 2007-04-26 2008-03-25 建模应用程序的分布式行为受控执行

Country Status (5)

Country Link
US (1) US8024396B2 (zh)
EP (1) EP2153336B1 (zh)
JP (1) JP5028523B2 (zh)
CN (1) CN101663661B (zh)
WO (1) WO2008134159A1 (zh)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7970892B2 (en) 2007-06-29 2011-06-28 Microsoft Corporation Tuning and optimizing distributed systems with declarative models
US7974939B2 (en) 2007-10-26 2011-07-05 Microsoft Corporation Processing model-based commands for distributed applications
US8099720B2 (en) 2007-10-26 2012-01-17 Microsoft Corporation Translating declarative models
TW200947223A (en) * 2008-05-02 2009-11-16 Inventec Corp A sharing basic input output system server device and method thereof
US8407700B2 (en) * 2009-03-03 2013-03-26 Symantec Corporation Methods and systems for merging virtualization sublayers
WO2011162746A1 (en) * 2010-06-22 2011-12-29 Hewlett-Packard Development Company, L.P. A method and system for determining a deployment of applications
CN102959506B (zh) 2010-06-22 2017-04-26 慧与发展有限责任合伙企业 用于计划应用部署的方法和系统
US8635617B2 (en) * 2010-09-30 2014-01-21 Microsoft Corporation Tracking requests that flow between subsystems using transaction identifiers for generating log data
US8473783B2 (en) * 2010-11-09 2013-06-25 International Business Machines Corporation Fault tolerance in distributed systems
US8868700B2 (en) * 2010-12-28 2014-10-21 Nant Holdings Ip, Llc Distributed network interfaces for application cloaking and spoofing
CN102111452B (zh) * 2011-03-04 2013-04-17 天泽信息产业股份有限公司 利用分布式数据存储程序存储车载信息的系统及其存储方法
US8806003B2 (en) * 2011-06-14 2014-08-12 International Business Machines Corporation Forecasting capacity available for processing workloads in a networked computing environment
US9491225B2 (en) 2012-03-16 2016-11-08 Tencent Technology (Shenzhen) Company Limited Offline download method and system
US20130263139A1 (en) * 2012-03-28 2013-10-03 Lior Schejter Managing execution of applications in a runtime environment
CN103457960B (zh) * 2012-05-15 2018-03-09 腾讯科技(深圳)有限公司 网页游戏中加载文件的方法及系统
US9317696B2 (en) 2012-07-10 2016-04-19 Microsoft Technology Licensing, Llc Data detection and protection policies for e-mail
US10270709B2 (en) 2015-06-26 2019-04-23 Microsoft Technology Licensing, Llc Allocating acceleration component functionality for supporting services
US10152500B2 (en) * 2013-03-14 2018-12-11 Oracle International Corporation Read mostly instances
US10511478B2 (en) * 2015-04-17 2019-12-17 Microsoft Technology Licensing, Llc Changing between different roles at acceleration components
US9792154B2 (en) 2015-04-17 2017-10-17 Microsoft Technology Licensing, Llc Data processing system having a hardware acceleration plane and a software plane
US10198294B2 (en) 2015-04-17 2019-02-05 Microsoft Licensing Technology, LLC Handling tenant requests in a system that uses hardware acceleration components
US10296392B2 (en) 2015-04-17 2019-05-21 Microsoft Technology Licensing, Llc Implementing a multi-component service using plural hardware acceleration components
US9652327B2 (en) * 2015-04-17 2017-05-16 Microsoft Technology Licensing, Llc Restoring service acceleration
US10027543B2 (en) * 2015-04-17 2018-07-17 Microsoft Technology Licensing, Llc Reconfiguring an acceleration component among interconnected acceleration components
US10216555B2 (en) 2015-06-26 2019-02-26 Microsoft Technology Licensing, Llc Partially reconfiguring acceleration components
US10747752B2 (en) 2015-10-23 2020-08-18 Oracle International Corporation Space management for transactional consistency of in-memory objects on a standby database
US11657037B2 (en) 2015-10-23 2023-05-23 Oracle International Corporation Query execution against an in-memory standby database
US10812618B2 (en) * 2016-08-24 2020-10-20 Microsoft Technology Licensing, Llc Flight delivery architecture
US10698771B2 (en) 2016-09-15 2020-06-30 Oracle International Corporation Zero-data-loss with asynchronous redo shipping to a standby database
US10891291B2 (en) 2016-10-31 2021-01-12 Oracle International Corporation Facilitating operations on pluggable databases using separate logical timestamp services
US10901792B2 (en) * 2016-11-29 2021-01-26 Telefonaktiebolaget Lm Ericsson (Publ) Distribution of resources among actor instances
US11475006B2 (en) 2016-12-02 2022-10-18 Oracle International Corporation Query and change propagation scheduling for heterogeneous database systems
US10691722B2 (en) 2017-05-31 2020-06-23 Oracle International Corporation Consistent query execution for big data analytics in a hybrid database
US11307917B2 (en) 2019-08-16 2022-04-19 Delta Electronics Intl (Singapore) Pte Ltd Decentralized cyber-physical system
KR102380926B1 (ko) * 2020-10-13 2022-03-31 서강대학교산학협력단 실리콘 광증배기의 신호를 처리하는 신호 처리 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6640241B1 (en) * 1999-07-19 2003-10-28 Groove Networks, Inc. Method and apparatus for activity-based collaboration by a computer system equipped with a communications manager
US7065579B2 (en) * 2001-01-22 2006-06-20 Sun Microsystems, Inc. System using peer discovery and peer membership protocols for accessing peer-to-peer platform resources on a network

Family Cites Families (157)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4751635A (en) * 1986-04-16 1988-06-14 Bell Communications Research, Inc. Distributed management support system for software managers
US5574934A (en) * 1993-11-24 1996-11-12 Intel Corporation Preemptive priority-based transmission of signals using virtual channels
US5423003A (en) * 1994-03-03 1995-06-06 Geonet Limited L.P. System for managing network computer applications
US6160549A (en) * 1994-07-29 2000-12-12 Oracle Corporation Method and apparatus for generating reports using declarative tools
US5655081A (en) 1995-03-08 1997-08-05 Bmc Software, Inc. System for monitoring and managing computer resources and applications across a distributed computing environment using an intelligent autonomous agent architecture
DE69628965T2 (de) * 1995-03-22 2004-02-26 Sun Microsystems, Inc., Mountain View Verfahren und Gerät zum Verwalten von Beziehungen zwischen Objekten in einer verteilten Objektumgebung
EP0733967B1 (en) * 1995-03-24 2005-02-09 Hewlett-Packard Company, A Delaware Corporation Methods and apparatus for monitoring events and implementing corrective action in a multi-entity computer system
US5764241A (en) * 1995-11-30 1998-06-09 Microsoft Corporation Method and system for modeling and presenting integrated media with a declarative modeling language for representing reactive behavior
US6662205B1 (en) 1996-10-01 2003-12-09 International Business Machines Corporation Scaleable and extensible system management architecture with dataless endpoints
US5937388A (en) * 1996-12-05 1999-08-10 Hewlett-Packard Company System and method for performing scalable distribution of process flow activities in a distributed workflow management system
US6247056B1 (en) * 1997-02-03 2001-06-12 Oracle Corporation Method and apparatus for handling client request with a distributed web application server
US6225995B1 (en) * 1997-10-31 2001-05-01 Oracle Corporaton Method and apparatus for incorporating state information into a URL
US6710786B1 (en) * 1997-02-03 2004-03-23 Oracle International Corporation Method and apparatus for incorporating state information into a URL
US6026404A (en) * 1997-02-03 2000-02-15 Oracle Corporation Method and system for executing and operation in a distributed environment
US5958010A (en) * 1997-03-20 1999-09-28 Firstsense Software, Inc. Systems and methods for monitoring distributed applications including an interface running in an operating system kernel
US6055363A (en) * 1997-07-22 2000-04-25 International Business Machines Corporation Managing multiple versions of multiple subsystems in a distributed computing environment
US6005849A (en) 1997-09-24 1999-12-21 Emulex Corporation Full-duplex communication processor which can be used for fibre channel frames
US7024450B1 (en) * 1997-10-06 2006-04-04 Mci, Inc. Method and apparatus for deploying service modules among service nodes distributed in an intelligent network
US6334114B1 (en) 1997-10-31 2001-12-25 Oracle Corporation Method and apparatus for performing transactions in a stateless web environment which supports a declarative paradigm
US6167538A (en) 1998-03-06 2000-12-26 Compaq Computer Corporation Method and apparatus for monitoring components of a computer system
US6330717B1 (en) 1998-03-27 2001-12-11 Sony Corporation Of Japan Process and system for developing an application program for a distributed adaptive run-time platform
US6070190A (en) 1998-05-11 2000-05-30 International Business Machines Corporation Client-based application availability and response monitoring and reporting for distributed computing environments
US6263339B1 (en) 1998-08-25 2001-07-17 Informix Software, Inc. Dynamic object visualization and code generation
US6415297B1 (en) 1998-11-17 2002-07-02 International Business Machines Corporation Parallel database support for workflow management systems
US6728748B1 (en) 1998-12-01 2004-04-27 Network Appliance, Inc. Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet
US6279009B1 (en) * 1998-12-04 2001-08-21 Impresse Corporation Dynamic creation of workflows from deterministic models of real world processes
US6336217B1 (en) * 1998-12-30 2002-01-01 International Business Machines Corporation Systems, methods and computer program products for end-to-end software development process automation
US20020135611A1 (en) 1999-03-04 2002-09-26 Trevor Deosaran Remote performance management to accelerate distributed processes
US6430576B1 (en) * 1999-05-10 2002-08-06 Patrick Gates Distributing and synchronizing objects
US6618719B1 (en) * 1999-05-19 2003-09-09 Sybase, Inc. Database system with methodology for reusing cost-based optimization decisions
US6662356B1 (en) * 1999-06-30 2003-12-09 Microsoft Corporation Application program interface for transforming heterogeneous programs
US6718535B1 (en) * 1999-07-30 2004-04-06 Accenture Llp System, method and article of manufacture for an activity framework design in an e-commerce based environment
US6715145B1 (en) * 1999-08-31 2004-03-30 Accenture Llp Processing pipeline in a base services pattern environment
US6477665B1 (en) 1999-08-31 2002-11-05 Accenture Llp System, method, and article of manufacture for environment services patterns in a netcentic environment
WO2001025964A2 (en) 1999-10-01 2001-04-12 Accenture Llp Base service architectures for netcentric computing systems
JP3738624B2 (ja) * 1999-10-26 2006-01-25 日本電気株式会社 分散アプリケーション制御システム及び制御方法並びにプログラムを記録した記録媒体
AU2001227857A1 (en) * 2000-01-14 2001-07-24 Saba Software, Inc. Method and apparatus for a business applications management system platform
US6938256B2 (en) 2000-01-18 2005-08-30 Galactic Computing Corporation System for balance distribution of requests across multiple servers using dynamic metrics
US7328233B2 (en) 2000-01-19 2008-02-05 Corybant, Inc. Method and apparatus for implementing an active information model
US6654783B1 (en) 2000-03-30 2003-11-25 Ethergent Corporation Network site content indexing method and associated system
US6687735B1 (en) 2000-05-30 2004-02-03 Tranceive Technologies, Inc. Method and apparatus for balancing distributed applications
US20020038217A1 (en) * 2000-04-07 2002-03-28 Alan Young System and method for integrated data analysis and management
US7392210B1 (en) * 2000-04-07 2008-06-24 Jpmorgan Chase Bank, N.A. Workflow management system and method
US7310801B2 (en) * 2000-04-27 2007-12-18 Microsoft Corporation Servicing a component-based software product throughout the software product lifecycle
WO2001084313A2 (en) * 2000-05-02 2001-11-08 Sun Microsystems, Inc. Method and system for achieving high availability in a networked computer system
US6922685B2 (en) 2000-05-22 2005-07-26 Mci, Inc. Method and system for managing partitioned data resources
US7181743B2 (en) * 2000-05-25 2007-02-20 The United States Of America As Represented By The Secretary Of The Navy Resource allocation decision function for resource management architecture and corresponding programs therefor
US7685239B2 (en) * 2000-06-28 2010-03-23 Canon Kabushiki Kaisha Image communication apparatus, image communication method, and memory medium
WO2002027426A2 (en) 2000-09-01 2002-04-04 Op40, Inc. System, method, uses, products, program products, and business methods for distributed internet and distributed network services
US20030154266A1 (en) 2000-09-01 2003-08-14 Mark Bobick Server system and method for discovering digital assets in enterprise information systems
US6920458B1 (en) * 2000-09-22 2005-07-19 Sas Institute Inc. Model repository
US6907395B1 (en) 2000-10-24 2005-06-14 Microsoft Corporation System and method for designing a logical model of a distributed computer system and deploying physical resources according to the logical model
US6915338B1 (en) 2000-10-24 2005-07-05 Microsoft Corporation System and method providing automatic policy enforcement in a multi-computer service application
WO2002035395A2 (en) * 2000-10-27 2002-05-02 Entigen Corporation Integrating heterogeneous data and tools
US7174359B1 (en) * 2000-11-09 2007-02-06 International Business Machines Corporation Apparatus and methods for sequentially scheduling a plurality of commands in a processing environment which executes commands concurrently
US7600014B2 (en) * 2000-11-16 2009-10-06 Symantec Corporation Method and system for monitoring the performance of a distributed application
US7020869B2 (en) * 2000-12-01 2006-03-28 Corticon Technologies, Inc. Business rules user interface for development of adaptable enterprise applications
US6931644B2 (en) * 2000-12-21 2005-08-16 International Business Machines Corporation Hierarchical connected graph model for implementation of event management design
JP2002334194A (ja) * 2001-02-09 2002-11-22 Internatl Business Mach Corp <Ibm> ワークフロー管理システムにおいて選択的コマンド制御を提供する方法、システム、プログラム
US20020147962A1 (en) * 2001-02-12 2002-10-10 International Business Machines Corporation Method and system for incorporating legacy applications into a distributed data processing environment
US6801818B2 (en) 2001-03-14 2004-10-05 The Procter & Gamble Company Distributed product development
EP1248170B1 (en) * 2001-04-05 2009-09-16 INPECO IP Ltd. Method for the management of workcell systems based on an automation management system
US6934702B2 (en) * 2001-05-04 2005-08-23 Sun Microsystems, Inc. Method and system of routing messages in a distributed search network
US6948151B2 (en) * 2001-06-29 2005-09-20 International Business Machines Corporation System and method for dynamic packaging of component objects
US20050155042A1 (en) * 2001-07-02 2005-07-14 Michael Kolb Component-based system for distributed applications
US7055143B2 (en) * 2001-07-10 2006-05-30 Microsoft Corporation System and methods for providing a declarative syntax for specifying SOAP-based web services
US20030135384A1 (en) * 2001-09-27 2003-07-17 Huy Nguyen Workflow process method and system for iterative and dynamic command generation and dynamic task execution sequencing including external command generator and dynamic task execution sequencer
US7660886B2 (en) * 2001-09-27 2010-02-09 International Business Machines Corporation Apparatus and method of representing real-time distributed command execution status across distributed systems
US7546359B2 (en) * 2001-10-24 2009-06-09 Groove Networks, Inc. Method and apparatus for managing a peer-to-peer collaboration system
US7035930B2 (en) * 2001-10-26 2006-04-25 Hewlett-Packard Development Company, L.P. Method and framework for generating an optimized deployment of software applications in a distributed computing environment using layered model descriptions of services and servers
US7085837B2 (en) 2001-12-04 2006-08-01 International Business Machines Corporation Dynamic resource allocation using known future benefits
AU2002362090A1 (en) * 2001-12-07 2003-06-23 Dbase, Inc. Drag-and-drop dynamic distributed object model
AU2003202356A1 (en) 2002-02-07 2003-09-02 Thinkdynamics Inc. Method and system for managing resources in a data center
US20030195763A1 (en) * 2002-04-11 2003-10-16 International Business Machines Corporation Method and system for managing a distributed workflow
US7130881B2 (en) 2002-05-01 2006-10-31 Sun Microsystems, Inc. Remote execution model for distributed application launch and control
US7401336B2 (en) * 2002-05-30 2008-07-15 Oracle International Corporation Role based integrated platform
US7240325B2 (en) 2002-09-11 2007-07-03 International Business Machines Corporation Methods and apparatus for topology discovery and representation of distributed applications and services
US6847970B2 (en) * 2002-09-11 2005-01-25 International Business Machines Corporation Methods and apparatus for managing dependencies in distributed systems
US7096311B2 (en) 2002-09-30 2006-08-22 Innopath Software, Inc. Updating electronic files using byte-level file differencing and updating algorithms
US7167915B2 (en) * 2002-10-18 2007-01-23 International Business Machines Corporation Monitoring storage resources used by computer applications distributed across a network
US20040088350A1 (en) * 2002-10-31 2004-05-06 General Electric Company Method, system and program product for facilitating access to instrumentation data in a heterogeneous distributed system
CA2412747A1 (en) * 2002-11-26 2004-05-26 Cognos Incorporated System and method for monitoring business performance
US20040148370A1 (en) * 2003-01-23 2004-07-29 Electronic Data Systems Corporation System and method for composing, configuring, deploying, and managing services using a graphical user interface
US7168077B2 (en) * 2003-01-31 2007-01-23 Handysoft Corporation System and method of executing and controlling workflow processes
JP3974054B2 (ja) * 2003-03-03 2007-09-12 日本電信電話株式会社 エンティティ装置、シェアードリンク制御方法、認証方法及びシェアードリンク制御プログラム並びにその記録媒体
US7072807B2 (en) * 2003-03-06 2006-07-04 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US7302609B2 (en) * 2003-03-12 2007-11-27 Vladimir Matena Method and apparatus for executing applications on a distributed computer system
US7185015B2 (en) * 2003-03-14 2007-02-27 Websense, Inc. System and method of monitoring and controlling application files
US20040187140A1 (en) * 2003-03-21 2004-09-23 Werner Aigner Application framework
US8161094B2 (en) * 2003-06-04 2012-04-17 Sony Computer Entertainment Inc. System and method for notification within decentralized network
US6915656B2 (en) * 2003-07-14 2005-07-12 Eco Technology Solutions, Llc Heat pump system
US7590643B2 (en) * 2003-08-21 2009-09-15 Microsoft Corporation Systems and methods for extensions and inheritance for units of information manageable by a hardware/software interface system
US7503043B2 (en) 2003-09-05 2009-03-10 International Business Machines Corporation Method of building dynamic installation packages using a declarative authoring tool
CA2443657A1 (en) * 2003-09-30 2005-03-30 Cognos Incorporated Business performance presentation user interface and method for presenting business performance
US20050074003A1 (en) * 2003-10-02 2005-04-07 Ball David Alexander Distributed software architecture for implementing BGP
US7379999B1 (en) * 2003-10-15 2008-05-27 Microsoft Corporation On-line service/application monitoring and reporting system
US7103874B2 (en) * 2003-10-23 2006-09-05 Microsoft Corporation Model-based management of computer systems and distributed applications
EP1678645B1 (en) 2003-10-27 2019-10-02 Hitachi Vantara Corporation Policy-based management of a redundant array of independent nodes
US20050120106A1 (en) * 2003-12-02 2005-06-02 Nokia, Inc. System and method for distributing software updates to a network appliance
US7454496B2 (en) * 2003-12-10 2008-11-18 International Business Machines Corporation Method for monitoring data resources of a data processing network
EP1548581A3 (en) 2003-12-19 2007-08-08 Klockwork Corp. Methods, apparatus and programs for system development
US20050188075A1 (en) 2004-01-22 2005-08-25 International Business Machines Corporation System and method for supporting transaction and parallel services in a clustered system based on a service level agreement
US8197325B2 (en) * 2004-01-27 2012-06-12 Integrated Group Assets Inc. Method and apparatus for providing an instant lottery game and a supplemental game
US7822662B2 (en) * 2004-03-29 2010-10-26 Microsoft Corporation Key performance indicator system and method
US8271541B2 (en) * 2004-03-31 2012-09-18 Fusionops Corporation Method and apparatus for developing composite applications
US7079010B2 (en) * 2004-04-07 2006-07-18 Jerry Champlin System and method for monitoring processes of an information technology system
US7376534B2 (en) 2004-05-21 2008-05-20 Bea Systems, Inc. Watches and notifications
US7370296B2 (en) 2004-05-25 2008-05-06 International Business Machines Corporation Modeling language and method for address translation design mechanisms in test generation
US7716253B2 (en) * 2004-07-09 2010-05-11 Microsoft Corporation Centralized KPI framework systems and methods
US7747641B2 (en) * 2004-07-09 2010-06-29 Microsoft Corporation Modeling sequence and time series data in predictive analytics
US7467078B2 (en) * 2004-07-16 2008-12-16 Agilent Technologies Inc. Portable distributed application framework
US7796520B2 (en) * 2004-09-30 2010-09-14 Avaya Canada Corp. System and methods for announcing and locating services in a distributed peer-to-peer network
US20060070066A1 (en) * 2004-09-30 2006-03-30 Grobman Steven L Enabling platform network stack control in a virtualization platform
US7561673B2 (en) * 2004-09-30 2009-07-14 Microsoft Corporation Integration of speech services with telecommunications
US7631291B2 (en) 2004-10-01 2009-12-08 Microsoft Corporation Declarative representation for an extensible workflow model
US8170901B2 (en) 2004-10-01 2012-05-01 Microsoft Corporation Extensible framework for designing workflows
US20060095443A1 (en) 2004-10-29 2006-05-04 Kerika, Inc. Idea page system and method
US8032863B2 (en) * 2004-11-18 2011-10-04 Parasoft Corporation System and method for global group reporting
US20060130047A1 (en) 2004-11-30 2006-06-15 Microsoft Corporation System and apparatus for software versioning
US7451435B2 (en) * 2004-12-07 2008-11-11 Microsoft Corporation Self-describing artifacts and application abstractions
US20060155738A1 (en) 2004-12-16 2006-07-13 Adrian Baldwin Monitoring method and system
KR20060082353A (ko) * 2005-01-12 2006-07-18 와이더댄 주식회사 실행가능 웹 컨텐트 제공 및 처리 시스템 및 방법
US20070050446A1 (en) * 2005-02-01 2007-03-01 Moore James F Managing network-accessible resources
US7770151B2 (en) 2005-04-07 2010-08-03 International Business Machines Corporation Automatic generation of solution deployment descriptors
US7979520B2 (en) 2005-04-15 2011-07-12 Microsoft Corporation Prescriptive architecture recommendations
US20060236254A1 (en) 2005-04-18 2006-10-19 Daniel Mateescu System and method for automated building of component based applications for visualizing complex data structures
JP4372043B2 (ja) 2005-05-12 2009-11-25 株式会社ソニー・コンピュータエンタテインメント コマンド実行制御装置、コマンド実行指示装置およびコマンド実行制御方法
US7757213B2 (en) 2005-05-18 2010-07-13 Microsoft Corporation Aggregation-based management of a distributed business process application
EP1729213A1 (en) 2005-05-30 2006-12-06 Honda Research Institute Europe GmbH Development of parallel/distributed applications
US7761851B2 (en) * 2005-05-31 2010-07-20 International Business Machines Corporation Computer method and system for integrating software development and deployment
US7529990B2 (en) 2005-05-31 2009-05-05 Bsquare Corporation Systems and methods for managing multi-device test sessions
US7359824B2 (en) * 2005-06-29 2008-04-15 International Business Machines Corporation Systems and methods for a distributed execution environment with per-command environment management
BRPI0520475B1 (pt) 2005-07-29 2019-02-05 Telecom Italia Spa método e sistema para gerar sinais de instrução arranjados em fluxos de trabalho, e, meio de armazenamento legível por computador
US7454492B2 (en) * 2005-08-26 2008-11-18 International Business Machines Corporation Method and apparatus for configuring and modeling server information in an enterprise tooling environment
US20070050237A1 (en) * 2005-08-30 2007-03-01 Microsoft Corporation Visual designer for multi-dimensional business logic
US7873422B2 (en) 2005-09-02 2011-01-18 Sap Ag Event-based coordination of process-oriented composite applications
US7818714B2 (en) * 2005-09-15 2010-10-19 Microsoft Corporation Integration of process and workflows into a business application framework
US7430559B2 (en) * 2005-09-21 2008-09-30 Microsoft Corporation Generalized idempotent requests
FR2891077B1 (fr) * 2005-09-22 2008-12-12 Xcalia Sa Systeme de mise en oeuvre d'une application metier.
US8407610B2 (en) 2005-09-30 2013-03-26 Sap Portals Israel Ltd. Executable and declarative specification for graphical user interfaces
US20070239819A1 (en) * 2005-10-07 2007-10-11 Neoedge Networks, Inc. Service and messaging infrastructure to support creation of distributed, peer to peer applications with a service oriented architecture
US7941309B2 (en) * 2005-11-02 2011-05-10 Microsoft Corporation Modeling IT operations/policies
US7512707B1 (en) * 2005-11-03 2009-03-31 Adobe Systems Incorporated Load balancing of server clusters
WO2007072501A2 (en) 2005-12-19 2007-06-28 Mphasis Bfl Limited A system and a methodology for providing integrated business performance management platform
US8122427B2 (en) * 2006-01-04 2012-02-21 Microsoft Corporation Decentralized system services
US20070174228A1 (en) * 2006-01-17 2007-07-26 Microsoft Corporation Graphical representation of key performance indicators
US20070179823A1 (en) * 2006-01-30 2007-08-02 Kumar Bhaskaran Observation modeling
US7869585B2 (en) * 2006-03-17 2011-01-11 Microsoft Corporation Declarations for transformations within service sequences
US20070244904A1 (en) 2006-04-18 2007-10-18 Kristopher Durski Method and Architecture for Goal Oriented Applications, Configurations and Workflow Solutions on-the-Fly
US8214474B2 (en) * 2006-04-18 2012-07-03 International Business Machines Corporation Autonomic computing system with model transfer
US8793584B2 (en) 2006-05-24 2014-07-29 International Business Machines Corporation Customizable user interface wrappers for web applications
US8095923B2 (en) * 2006-06-29 2012-01-10 Augusta Systems, Inc. System and method for deploying and managing intelligent nodes in a distributed network
US7735060B2 (en) * 2006-06-29 2010-06-08 Augusta Systems, Inc. Method and system for rapidly developing and deploying sensor-enabled software applications
US8316364B2 (en) * 2007-02-28 2012-11-20 Red Hat, Inc. Peer-to-peer software update distribution network
US20080244423A1 (en) 2007-03-28 2008-10-02 Sap Ag Melting groups
US7797289B2 (en) 2007-09-05 2010-09-14 Oracle International Corporation Method and apparatus for automatically executing rules in enterprise systems
US8015281B2 (en) 2008-04-21 2011-09-06 Microsoft Corporation Dynamic server flow control in a hybrid peer-to-peer network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6640241B1 (en) * 1999-07-19 2003-10-28 Groove Networks, Inc. Method and apparatus for activity-based collaboration by a computer system equipped with a communications manager
US7065579B2 (en) * 2001-01-22 2006-06-20 Sun Microsystems, Inc. System using peer discovery and peer membership protocols for accessing peer-to-peer platform resources on a network

Also Published As

Publication number Publication date
EP2153336A1 (en) 2010-02-17
WO2008134159A1 (en) 2008-11-06
JP2010525488A (ja) 2010-07-22
CN101663661A (zh) 2010-03-03
US8024396B2 (en) 2011-09-20
EP2153336B1 (en) 2018-08-01
JP5028523B2 (ja) 2012-09-19
EP2153336A4 (en) 2015-02-18
US20080270411A1 (en) 2008-10-30

Similar Documents

Publication Publication Date Title
CN101663661B (zh) 建模应用程序的分布式行为受控执行
CN111355780B (zh) 一种基于区块链的物联网监控管理方法及系统
JP2010525488A5 (zh)
CN102854819B (zh) 用于过程控制系统的面向服务的架构
US20190199693A1 (en) Safe-Transfer Exchange Protocol Based on Trigger-Ready Envelopes Among Distributed Nodes.
Xu et al. Building an ethereum-based decentralized smart home system
CN109478056A (zh) 用于分布式网格网络的智能节点
Šišlák et al. A-globe: Agent development platform with inaccessibility and mobility support
Mijić et al. Unified iot platform architecture platforms as major iot building blocks
CN115115451A (zh) 一种面向大宗商品交易监管的区块链服务管理系统
Kabir Internet of Things and safety assurance of cooperative cyber-physical systems: Opportunities and challenges
Wang Sok: Applying blockchain technology in industrial internet of things
Agarwal et al. Open service platforms for IoT
Choi et al. Application patterns for cyber-physical systems
Patel Distributed computing for internet of things (iot)
Perrone et al. The Internet of things: a survey and outlook
Scholtz et al. An internet of things (iot) model for optimising downtime management: a smart lighting case study
Lira et al. Architecture for IoT applications based on reactive microservices: A performance evaluation
Lee et al. Itinerary-based mobile agent as a basis for distributed OSGi services
Mascolo et al. Survey of middleware for networked embedded systems
Gorton et al. Evaluating agent architectures: cougaar, aglets and AAA
Neely et al. Adaptive middleware for autonomic systems
KR20220094012A (ko) 블록 체인의 뉴럴 블록 클러스터 기반의 유통이력 관리 및 제품 인증 서비스제공 장치 및 그 동작 방법
Lawler Distributed architecture for the object-oriented method for interoperability
Magurano Development of a scalable architecture for Industrial Internet of Things

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150515

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150515

Address after: Washington State

Patentee after: MICROSOFT TECHNOLOGY LICENSING, LLC

Address before: Washington State

Patentee before: Microsoft Corp.

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

Granted publication date: 20130313