CN103092697A - 用于主存有状态和无状态中间软件组件的多承租人高密度容器服务 - Google Patents

用于主存有状态和无状态中间软件组件的多承租人高密度容器服务 Download PDF

Info

Publication number
CN103092697A
CN103092697A CN2011104443217A CN201110444321A CN103092697A CN 103092697 A CN103092697 A CN 103092697A CN 2011104443217 A CN2011104443217 A CN 2011104443217A CN 201110444321 A CN201110444321 A CN 201110444321A CN 103092697 A CN103092697 A CN 103092697A
Authority
CN
China
Prior art keywords
container
middleware software
software assembly
node
container management
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
CN2011104443217A
Other languages
English (en)
Other versions
CN103092697B (zh
Inventor
A·库尔卡尼
G·M·文卡塔拉曼拉帕
Y·克里斯坦森
C·普拉萨德
D·舒克拉
S·莫汉蒂
V·尚巴格
A·乌尔布里希
M·基肖尔
A·班达卡
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 CN103092697A publication Critical patent/CN103092697A/zh
Application granted granted Critical
Publication of CN103092697B publication Critical patent/CN103092697B/zh
Active 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及用于主存有状态和无状态中间软件组件的多承租人高密度容器服务。容器服务能够主存多个承租人的大量中间软件组件。中央容器管理器控制多个计算节点。中央容器管理器从外部设备或服务接收中间软件组件并将该组件分配给一个或多个指定计算节点上的容器。每个计算节点具有容器管理代理和一个或多个容器。容器管理代理激活并管理适当数量的容器以运行分配的中间软件组件。容器管理代理向其计算节点上的每个容器分配有限的特权集合以控制对共享资源的访问。中央容器管理器和每个节点的容器管理代理监视容器负载水平并动态地调节中间软件组件的放置以维持平衡的操作。基于每个计算节点上主存的中间软件组件的类型,将计算节点分组成群集。

Description

用于主存有状态和无状态中间软件组件的多承租人高密度容器服务
技术领域
本发明涉及用于主存有状态和无状态中间软件组件的多承租人高密度容器服务。
背景技术
分布式系统允许用户运行主存在分布的资源(如远程中央处理单元(CPU)、中央服务器或物理机或虚拟机)上的应用程序。中间软件服务为分布的资源上的应用程序提供计算、协调、信息管理、主存和其它支持。中间软件组件是在分布的资源上运行的并且为用户提供服务或实现协议或算法的软件应用程序或计算机指令。中间软件组件可提供复杂的或专用的应用程序。当需要中间软件组件提供的功能时,用户与中间软件组件交互。对中间软件组件的需求取决于用户的需要而变化。因此,如果没有用户需求,则在分布的资源上运行的中间软件组件可以是空闲的,或者在用户需求高的情况下,分布的资源可能不能服务所有的用户需要。
发明内容
提供本概述以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。本发明内容并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
本文描述并揭示能够为多个用户或承租人主存大量中间软件组件的容器服务。容器服务包括多个计算节点和中央容器管理器。计算节点由中央容器管理器作为群集来管理。每个计算节点具有管理该计算节点上的一个或多个容器的容器管理代理。中央容器管理器从外部设备或服务接收中间软件组件并将该组件分配给一个或多个指定计算节点上的容器。对于每个指定的计算节点,指定的计算节点上的容器管理代理激活并管理合适数量的容量以运行分配给该指定节点的中间软件组件。容器服务通过在选择的计算节点集合上主存大量的中间软件组件,提供有效的、高密度的操作。这允许计算节点的活动资源在容器管理代理的控制下以高使用水平或高负载因子操作,这通过增加效率降低了与主存中间软件组件相关联的成本。代替跨所有计算节点随机地分布中间软件组件,只激活所需的资源并且其余计算节点和资源为空闲的,直至需要支持附加的中间软件组件。中央容器管理器和每个节点的容器管理代理通过动态地调节中间软件组件在群集中的特定节点上的放置,对容器负载水平的改变作出反应。
容器服务可为多个承租人同时提供计算节点资源。每个容器主存属于不同承租人的中间软件组件,并同时为每个组件集合提供对共享的计算资源集合的访问。通过将不同的中间软件组件集合彼此隔离并确保跨所有组件集合的平衡的资源分布,来实现多承租。
容器服务允许无状态和有状态组件两者的有效横向扩展(scale-out)。容器提供允许分区以使有状态中间软件组件能够有效地缩放的编程模型和基础结构。容器还经由克隆提供无状态组件的横向扩展。因此,当中间软件组件需要附加资源时,为这些组件分配附加的容器。重新分布有状态组件的分区以使用该附加容量。对于无状态组件,创建附加克隆以使用该附加容量。
容器服务确保中间软件组件具有高可用性。中央容器管理器跨故障域分布中间软件组件的主要和次要实例。在由于节点失效或者为了基础结构更新而关闭导致主要实例不可用的情况下,激活中间软件组件的次要实例。
附图说明
图1是示出容器服务的示例性实施例的框图;
图2是示出容器服务的替换实施例的框图;
图3示出在示例性实施例中跨多个节点的中间软件组件模块的放置;以及
图4是示出用于管理来自多个承租人的中间软件组件的示例性过程的流程图。
具体实施例
通常,分布的资源已经专用于特定用户。分配给特定用户的资源在未被用户要求时可以是空闲的或者未被充分利用。因此,即使在分配的资源空闲时,它对已经被分配了不同的资源集合的其它用户也是不可用的。如果用户正在使用分配的资源达到最高容量,如果附加的资源对用户不可用,则用户的工作负载受到限制。允许用户基于需要访问附加资源的容器服务向用户提供灵活性。
图1是示出本文所揭示的容器服务100的示例性实施例的框图。使用多个计算节点101来提供容器服务,该多个计算节点101由中央容器管理器102作为群集一起管理。计算节点101可以是物理机或虚拟机。虚拟机是模拟硬件资源(如处理器、存储器和存储设备)和外围资源的操作的软件应用程序。中央容器管理器102由存储中间软件组件的运行时存储103支持。
每个计算节点101包括容器管理代理104和一个或多个容器105。在群集中的每个计算节点101上运行一个容器管理代理104。容器管理代理104与群集中的所有其它节点上的其它容器管理代理通信。在一个实施例中,计算节点101是每个都具有类似的容量和能力的物理机或虚拟机。然而,在其它实施例中,计算节点可以是具有变化的容量和能力的不同设备。
中央容器管理器102从外部设备或服务(如合成应用程序服务)接收中间软件组件。合成应用程序服务是多承租人的受管理服务,其使应用程序的部署和管理自动化并且直接执行应用程序组件。中间软件组件可属于不同的承租人。本文所用的术语“承租人”是指容器服务的用户,包括但不限于访问容器服务的应用程序、客户机、订户、顾客或公司。中央容器管理器102将来自承租人的新的中间软件组件上传到运行时存储103并通知新接收的组件的各自的容器管理代理104。中央容器管理器102指定一个或多个容器105来运行中间软件组件。容器跨群集中的一个或多个计算节点101分布。一旦接收到来自中央容器管理器102的组件将放置在特定计算节点101上的通知,与该节点相关联的容器管理代理104激活容器105。容器管理代理104和计算节点101在该新激活的容器105中主存新的中间软件组件。
为了提供安全的环境,容器管理代理104和计算节点101通过使每个中间软件组件在其自己的容器中运行,将中间软件组件彼此隔离。相同节点上的容器共享对该节点可用的资源。中央容器管理器102和容器管理代理104测量每个容器的资源使用。中央容器管理器102和容器代理104通过跨计算节点101动态地调节负载,来平衡共享资源的分配。在计算节点101之间分布的容器105的使用为中间软件组件提供高可用性,并为需要分区或克隆的组件实现横向扩展,如下所述。
中央容器管理器102可以是在物理机(如CPU或服务器)或虚拟机上运行的软件应用程序或程序代码。计算节点101可以实现为物理机或虚拟机。计算节点101可以主存在相同的物理机上或主存在驻留在相同或不同位置中的多个分离的物理机上。容器105在计算节点101上彼此隔离地操作,以避免在分离的容器中运行的中间软件组件或模块实例之间的干扰,并确保每个容器公平地共享对计算节点101上的资源的访问。
运行时存储103可包括任何计算机存储介质,其使用任何现在已知或以后开发的技术、系统或方法来存储信息,如中间软件组件、计算机可读指令、数据结构、程序模块或其它数据。运行时存储103可在可用于存储信息并可由中央容器管理器102或计算节点101访问的任何介质中实现。计算机存储介质可包括例如任何易失性或非易失性介质,如RAM、ROM、电可擦除可编程只读存储器(EEPROM)、闪存、CD-ROM、DVD、磁带盒、磁带、磁盘存储或其它光学或磁性存储设备。
负载平衡
在一个实施例中,计算节点101可包括CPU、存储器盘输入/输出(I/O)和网络I/O资源。容器管理代理104限制每个容器105对这些资源的访问,使得多个容器105可在给定计算节点101上运行,而不会不利地影响在该节点上活动的其它容器105。容器管理代理104实施对例如CPU和存储器使用的限制,以确保每个容器公平地共享计算节点的资源。容器管理代理104还可以限制每个容器105,使得容器只访问计算节点101上的特定的盘和网络资源。
中央容器管理器102周期性地跨群集测量每个中间软件组件生成的负载。中央容器管理器102通过将组件从具有较高负载的计算节点101移动到具有较低负载的节点,来平衡每个计算节点101上总负载。周期性负载平衡的使用提供了最佳的容量利用并实现将中间软件组件主存在群集中的较小的节点集合上。
装入沙箱
容器管理代理104将容器105“装入沙箱”,以使每个容器接收到其对计算节点资源的公平份额,而没有更多。这确保容器105不会不利地影响彼此,即使它们正在相同的计算节点101上运行并共享相同的资源。结果,一个容器105不会被计算节点101上的其它容器105减速或拒绝服务。装入沙箱将中间软件组件彼此隔离,从而没有组件会影响其它组件的操作。此外,装入沙箱防止任何容器105修改另一容器在共享资源上的文件或数据。装入沙箱由容器管理代理104在计算节点上提供,容器管理代理104向每个容器105分配受限制的特权集合。从分配给每个容器的特权集合中移除任何不必要的特权。在一个实施例中,容器管理代理104使用访问控制列表控制对本地盘资源的访问。容器管理代理104使用内核模式过滤器控制网络访问,内核模式过滤器监视用于特定过程的特定端口上的传入和传出业务并且只允许去向/来自特定网络资源列表的业务。这种紧密的装入沙箱使来自多个承租人的组件能够被主存在共享的节点集合上。
节点状态
计算节点101被指定为有状态或无状态。计算节点与具有相同状态类型的其它节点分组在一起。状态类型影响分配给特定计算节点的中间软件组件的选择。有状态的节点被用于具有存储在存储器中的和/或与外部资源(如数据库)协调的状态的中间软件组件。该状态用于跟踪与分配给节点的中间软件组件相关的连接、交互或当前值。无状态节点被用于不保留信息或不依赖于存储值的中间软件组件。
容器横向扩展
容器提供两种用于使中间软件组件横向扩展的方法:克隆和分区。无状态中间软件组件使用克隆来缩放。当中间软件组件选择克隆时,它还指定它所需的克隆的计数。容器然后在n个节点上激活中间软件组件,其中n是组件所需的克隆实例的数量。有状态中间软件组件使用分区来缩放。有状态中间软件组件不能被简单地复制或克隆,因为有状态组件必须引用存储在存储器中的一个或多个“状态”。对于有状态中间软件组件,术语“分区”是指中间软件组件的附加实例,其中每个实例依赖于存储在存储器中的状态。容器基于横向扩展计数跨节点集合放置分区,横向扩展计数指定组件的分区应当分布的节点的数量。一旦完成分区放置,将中间软件组件加载到特定节点上的容器中。中间软件组件可选择在容器服务上可用的预定分区策略,或者组件可规定自定义分区计划。
经由可选择的/可扩展的分区策略以及容器上的知晓分区的路由基础结构,基于分区的横向扩展对中间软件组件是可用的。每个中间软件组件具有用于监听传入消息的一个或多个端口或端点。在中间软件组件被激活时,为每个这样的端口或端点分配一个物理地址。每个端口或端点还具有被承租人用来向中间软件组件发送消息的逻辑地址。每个分区的逻辑地址到物理地址的映射存储在地址解析服务中。当承租人需要向中间软件组件端口或端点发送消息时,将分区密钥生成功能应用于消息以获得分区密钥的值。该分区密钥值然后与分区策略一起使用以找到应当向其发送消息的特定分区。通过咨询地址解析服务获得特定分区的物理地址。容器与底层的计算节点群集技术结合,以确保每个分区在任何给定情况下只独占地分配给一个节点。例如,容器管理代理进行通信以验证每个有状态中间软件组件分区被分配给单个特定节点。
图2是示出容器服务的替换实施例的框图。容器服务200包括两个计算节点群集201和202。群集201包括无状态计算节点203a-n,而群集202括有状态计算节点204a-n。每个无状态和有状态计算节点203、204包括容器管理代理205和一个或多个容器206。在一个实施例中,容器管理代理205是工作者进程管理器,容器206是工作者进程。
容器管理器207从外部服务(如合成应用程序服务)接收中间软件组件。基于接收到的中间软件组件,容器管理器207确定需要多少模块的实例,并且将模块实例映射到特定机器或计算节点203、204。容器管理器207包括生存期管理器208、放置管理器209和监视聚集器210。生存期管理器208将中间软件组件存储到运行时存储211并且开始/停止计算节点203、204上的模块实例。中间软件组件指定每个模块的缩放特征,如所需数量的模块实例。放置管理器确定需要多少模块实例,并将这些模块实例分配给特定计算节点203、204。被分配的计算节点上的容器管理代理205激活指定数量的容器,并访问运行时存储211上的中间软件组件以在容器上加载模块实例。监视聚集器210监视模块跨计算节点203、204的资源使用,并且按需聚集或重新分布模块实例以增加容器服务200的效率。
容器管理代理205向每个模块分配有限的权限集合,以确保中间软件组件被适当地装入沙箱且不会干扰在计算节点203、204上运行的其它模块。容器206包括运行时主机212和应用程序引擎213。运行时主机212跟踪容器的存储器分配并管理在容器上运行的模块实例的存储器使用。模块实例在应用程序引擎213上运行。在每个容器上建立多个应用程序引擎213以支持多个模块实例。
容器服务200还包括地址解析服务214。承租人将消息定址到模块实例的逻辑地址。地址解析服务214将逻辑地址转换成运行目标模块实例的容器206和应用程序引擎213的物理地址。在聚集模块实例时或者在添加附加模块实例时,地址解析服务214更新模块的物理位置,这允许承租人继续使用相同的逻辑地址,而不用关心模块的实际物理位置。地址解析服务214还跟踪运行时存储211中存储的中间软件组件的位置。
可用性和可靠性
在计算节点失效或预定关闭的情况下,容器服务为中间软件组件提供高级别的可用性和可靠性。对于克隆的中间软件组件,当原始分配的节点关闭时,中央容器管理器在不同的节点上创建中间软件组件的附加实例。对于具有需要防止失效的存储器中状态的有状态中间软件组件,容器与底层群集技术结合以提供状态的复制。有状态中间软件组件的主要分区在正常操作期间负责处理工作负载。用作中间软件组件的备份副本的次要副本被创建并跨故障域放置。中间软件组件的主要分区上状态中的任何改变被复制到次要分区。故障域对应于将受停电或其它失效影响的容器服务中的基本单元。例如,基本故障域单元可以是交换机、机架或数据中心。使得中间软件组件的主要副本失效的任何故障将导致次要副本被升级成主要副本,因此实现分区组件的故障转移,而没有任何数据丢失。
图3示出在示例性实施例中跨多个节点的中间软件组件模块的放置。中央容器管理器301接收与不同承租人应用程序相关联的中间软件组件。每个中间软件组件包括缩放和/或分区信息,中央容器管理器301使用该信息确定需要在容器上放置多少模块预计应当使用多少节点。例如,中间软件组件可定义具有四个分区(P1-P4)且缩放单位为三的应用程序(A1)模块(M1),它需要中央容器管理器301建立跨三个计算节点分布的四个分区。容器管理器301指导节点305-307上的容器管理代理302-304在容器308-310上建立特定模块实例。
容器管理代理302打开第一节点305上的容器308并将模块M1的分区P1和P2加载在容器308上。容器管理代理303打开第二节点306上的容器309并将模块M1的分区P3和P4加载在容器309上。容器308和309上的分区P1-P4是模块在其上运行的主要分区。容器管理代理304打开第三节点307上的容器310并将分区S1-S4加载在容器310上。分区S1-S4是从分区P1-P4接收更新数据但是不提供外部服务的次要或复制分区。分区S1-S4通常是被动的,但是如果一个或多个主要分区P1-P4失效,它们将变成活动的。
图3进一步示出用于应用程序(A1)的第二模块(M2),它已经被加载并且正在节点305-307上运行。在所示的示例中,中央容器管理器301已接收到定义应用程序(A1)的第二模块(M2)的中间软件组件,第二模块(M2)具有八个分区(P1-P8)且缩放单位为二。这允许中央容器管理器301建立跨两个节点分布的八个分区。在一个实施例中,容器管理代理302根据来自中央容器管理器301的指令打开第一节点305上的容器311并加载主要分区P1-P5和次要分区S6-S8以在容器311上运行。中央容器管理器301还指导容器管理代理304打开第三节点307上的容器312并加载主要分区P6-P8和次要分区S1-S5以在容器312上运行。
在图3所示的示例性实施例中,节点305和306位于第一故障域,而节点307位于第二故障域。例如,节点305和306可在主存在第一机架上的物理机或虚拟机上实现,而节点307可在主存在第二机架上的物理机或虚拟机上实现。机架可位于相同或不同的数据中心中。每个机架或数据中心可被视为是不同的故障域。如果一个机架失效或离线,则主存在该机架上的任何计算节点将不可用。在这种情况下,其它机架上的一个或多个计算节点在需要时可接管作为主要模块实例。
例如,如果第一机架失效,则在该故障域上的节点305和306将不可用。结果,在节点305和306上运行的主要模块实例分区也将失效。位于不同故障域上的节点307上的次要分区然后接管节点305和306上的失效的主要分区。在图3中,模块实例M1的次要分区S1-S4主存在容器310上,模块实例M2的次要分区S1-S5主存在容器312上。这些次要分区在主要分区失效时被激活,且然后接管作为主要模块实例。这允许容器服务继续运行中间软件组件,而对外部承租人没有任何明显的中断。
图4是示出用于管理来自多个承租人的中间软件组件的示例性过程的流程图。在步骤401,容器管理服务从一个或多个承租人接收中间软件组件,并在步骤402将中间软件组件上传到运行时存储。在步骤403,中央容器管理器将中间软件组件映射到计算节点。在步骤404,中央容器管理器向驻留在计算节点上的容器管理代理通知:容器服务接收到中间软件组件。在步骤405,中央容器管理器在一个或多个计算节点上放置中间软件组件。在步骤406中,容器管理代理激活其各自计算节点上的一个或多个容器,用于主存中间软件组件。在步骤407,容器管理代理将受限制的特权集合分配给每个容器。受限制的特权控制容器对共享计算节点资源的使用以确保每个容器以沙箱方式操作,其中容器只使用其公共资源的公平共享,而不干扰计算节点上其它容器的操作。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (10)

1.一种主存多个承租人的中间软件组件的方法,所述方法包括:
将中间软件组件映射(403)到多个计算节点(101),每个计算节点(101)包括容器管理代理(104)和一个或多个容器(105);
将各个中间软件组件放置(405)到映射的计算节点(101)上;
由所述容器管理代理(104)将所述各个中间软件组件放置到每个映射的计算节点(101)上的一个或多个容器(206)中,所述容器(105)主存一个或多个中间软件组件的操作。
2.如权利要求1所述的方法,其特征在于,还包括:
向每个中间软件组件分配特权集合,其中所述特权控制所述中间软件组件对所述计算节点上的共享资源的访问。
3.如权利要求1所述的方法,其特征在于,还包括:
基于计算节点是运行有状态中间软件组件还是运行无状态中间软件组件,将所述多个计算节点组织成一个或多个群集。
4.如权利要求1所述的方法,其特征在于,还包括:
确定无状态中间软件组件的缩放因子;以及
在对应于所述缩放因子的多个计算节点上克隆所述中间软件组件。
5.如权利要求1所述的方法,其特征在于,还包括:
确定有状态中间软件组件的缩放因子;以及
跨对应于所述缩放因子的多个计算节点放置分区,其中所述分区对应于主存所述中间软件组件的实例的容器。
6.如权利要求1所述的方法,其特征在于,还包括:
在中央容器管理器处接收所述多个中间软件组件;以及
由所述中央容器管理器将所述多个中间软件组件上传到运行时存储。
7.一种用于主存中间软件组件的系统,包括:
中央容器管理器(102),适用于从多个承租人接收中间软件组件;
耦合至所述中央容器管理器(102)的多个计算节点(101);
所述多个计算节点(101)中的每一个上的一个或多个容器(105),所述容器(105)适用于主存所述中间软件组件;以及
所述多个计算节点(101)中的每一个上的容器管理代理(104),所述容器管理代理(104)适用于控制所述一个或多个容器(105)。
8.如权利要求7所述的系统,其特征在于,所述中央容器管理器还包括:
监视聚集器,适用于监视跨所述多个计算节点的资源使用并聚集所述中间软件组件的实例。
9.如权利要求7所述的系统,其特征在于,所述中央容器管理器还包括:
放置管理器,适用于标识接收到的中间软件组件所需的多个模块实例,并将所述模块实例分配给所述计算节点中的各特定计算节点。
10.如权利要求7所述的系统,其特征在于,还包括:
地址解析服务,能够将所述中间软件组件的逻辑地址映射到主存所述中间软件组件的计算节点的物理地址。
CN201110444321.7A 2010-12-17 2011-12-16 用于主存有状态和无状态中间软件组件的多承租人高密度容器服务 Active CN103092697B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/972,411 US8468548B2 (en) 2010-12-17 2010-12-17 Multi-tenant, high-density container service for hosting stateful and stateless middleware components
US12/972,411 2010-12-17

Publications (2)

Publication Number Publication Date
CN103092697A true CN103092697A (zh) 2013-05-08
CN103092697B CN103092697B (zh) 2016-01-13

Family

ID=46236275

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110444321.7A Active CN103092697B (zh) 2010-12-17 2011-12-16 用于主存有状态和无状态中间软件组件的多承租人高密度容器服务

Country Status (4)

Country Link
US (1) US8468548B2 (zh)
EP (1) EP2652594B1 (zh)
CN (1) CN103092697B (zh)
WO (1) WO2012083270A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104618414A (zh) * 2013-11-05 2015-05-13 阿里巴巴集团控股有限公司 一种分布式服务的实现方法、服务代理装置及分布式系统
CN106445637A (zh) * 2016-09-29 2017-02-22 中国银联股份有限公司 容器管理调度系统
CN108572869A (zh) * 2017-09-25 2018-09-25 北京金山云网络技术有限公司 一种物理主机选择方法、装置、设备及可读存储介质
CN109213705A (zh) * 2017-07-07 2019-01-15 爱思开海力士有限公司 存储装置及其操作方法
CN110298645A (zh) * 2019-07-11 2019-10-01 四川新网银行股份有限公司 全链路横向扩展的支付系统的搭建方法
CN111339529A (zh) * 2020-03-13 2020-06-26 杭州指令集智能科技有限公司 低代码的业务编排构件运行的管理框架与方法、计算设备及介质
CN113326100A (zh) * 2021-06-29 2021-08-31 深信服科技股份有限公司 一种集群管理方法、装置、设备及计算机存储介质

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2748714B1 (en) 2011-11-15 2021-01-13 Nicira, Inc. Connection identifier assignment and source network address translation
US9648138B1 (en) 2012-03-27 2017-05-09 Open Text Corporation Method and system for virtual server dormancy
US9973566B2 (en) 2013-11-17 2018-05-15 Nimbix, Inc. Dynamic creation and execution of containerized applications in cloud computing
US9466036B1 (en) * 2012-05-10 2016-10-11 Amazon Technologies, Inc. Automated reconfiguration of shared network resources
US8990778B1 (en) 2012-09-14 2015-03-24 Amazon Technologies, Inc. Shadow test replay service
CN103853535B (zh) * 2012-11-30 2017-08-25 国际商业机器公司 修改中间件的方法和装置
US10182128B1 (en) 2013-02-07 2019-01-15 Amazon Technologies, Inc. Optimization of production systems
US9628399B2 (en) * 2013-03-14 2017-04-18 International Business Machines Corporation Software product instance placement
US9836388B1 (en) 2013-09-26 2017-12-05 Amazon Technologies, Inc. Software testing environment that includes a duplicating proxy service
US9800517B1 (en) * 2013-10-31 2017-10-24 Neil Anderson Secure distributed computing using containers
US9471353B1 (en) * 2014-03-21 2016-10-18 Amazon Technologies, Inc. Isolating tenants executing in multi-tenant software containers
US9703611B1 (en) 2014-03-21 2017-07-11 Amazon Technologies, Inc. Isolating resources for utilization by tenants executing in multi-tenant software containers
US9754122B1 (en) 2014-03-21 2017-09-05 Amazon Technologies, Inc. Isolating tenants executing in multi-tenant software containers
US9614724B2 (en) 2014-04-21 2017-04-04 Microsoft Technology Licensing, Llc Session-based device configuration
US9384334B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content discovery in managed wireless distribution networks
US9430667B2 (en) 2014-05-12 2016-08-30 Microsoft Technology Licensing, Llc Managed wireless distribution network
US9384335B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content delivery prioritization in managed wireless distribution networks
US10111099B2 (en) 2014-05-12 2018-10-23 Microsoft Technology Licensing, Llc Distributing content in managed wireless distribution networks
US9874914B2 (en) 2014-05-19 2018-01-23 Microsoft Technology Licensing, Llc Power management contracts for accessory devices
US10037202B2 (en) 2014-06-03 2018-07-31 Microsoft Technology Licensing, Llc Techniques to isolating a portion of an online computing service
US9367490B2 (en) 2014-06-13 2016-06-14 Microsoft Technology Licensing, Llc Reversible connector for accessory devices
US10389697B1 (en) 2014-08-27 2019-08-20 Amazon Technologies, Inc. Software container activation and throttling
US10516733B2 (en) * 2014-11-25 2019-12-24 Auth0, Inc. Multi-tenancy via code encapsulated in server requests
US10218585B2 (en) * 2015-02-19 2019-02-26 Red Hat, Inc. Container host discovery
US9800518B2 (en) 2015-03-11 2017-10-24 International Business Machines Corporation Managing application, middleware, and virtual mechanism density in a cloud
US10491667B1 (en) * 2015-03-16 2019-11-26 Amazon Technologies, Inc. Customized memory modules in multi-tenant service provider systems
US9747119B2 (en) * 2015-06-23 2017-08-29 Vmware, Inc. Methods and apparatus to monitor virtual computing environments
CN105260136B (zh) * 2015-09-24 2019-04-05 北京百度网讯科技有限公司 数据读写方法及分布式存储系统
US10270841B1 (en) 2016-03-04 2019-04-23 Quest Software Inc. Systems and methods of real-time container deployment
US10140159B1 (en) 2016-03-04 2018-11-27 Quest Software Inc. Systems and methods for dynamic creation of container manifests
US10127030B1 (en) 2016-03-04 2018-11-13 Quest Software Inc. Systems and methods for controlled container execution
US10289457B1 (en) 2016-03-30 2019-05-14 Quest Software Inc. Systems and methods for dynamic discovery of container-based microservices
US10305747B2 (en) * 2016-06-23 2019-05-28 Sap Se Container-based multi-tenant computing infrastructure
US10498741B2 (en) 2016-09-19 2019-12-03 Box, Inc. Sharing dynamically changing units of cloud-based content
US10360410B2 (en) 2016-11-14 2019-07-23 International Business Machines Corporation Providing containers access to container daemon in multi-tenant environment
US20180260262A1 (en) * 2017-03-07 2018-09-13 Microsoft Technology Licensing, Llc Availability management interfaces in a distributed computing system
US10459769B2 (en) * 2017-08-04 2019-10-29 Unisys Corporation Elastic container management system
US10896070B2 (en) * 2017-09-22 2021-01-19 Open Text Corporation Stateless content management system
US10678618B2 (en) 2018-03-08 2020-06-09 Red Hat, Inc. Managing node failures in a computing environment
US10901864B2 (en) * 2018-07-03 2021-01-26 Pivotal Software, Inc. Light-weight mirror container
WO2020112029A1 (en) * 2018-11-30 2020-06-04 Purple Ds Private Ltd. System and method for facilitating participation in a blockchain environment
US11010149B2 (en) * 2019-04-03 2021-05-18 International Business Machines Corporation Shared middleware layer containers
US11586470B2 (en) * 2019-08-07 2023-02-21 International Business Machines Corporation Scalable workflow engine with a stateless orchestrator
CN110780918B (zh) * 2019-10-28 2022-08-23 江苏满运软件科技有限公司 中间件容器处理方法、装置、电子设备及存储介质
US20220075546A1 (en) * 2020-09-04 2022-03-10 Pure Storage, Inc. Intelligent application placement in a hybrid infrastructure
US11704165B2 (en) 2021-03-16 2023-07-18 International Business Machines Corporation Persistently available container services through resurrection of user jobs in new compute container instances designated as lead instances
DE102021123358B3 (de) 2021-09-09 2022-10-20 Volkswagen Aktiengesellschaft Steuervorrichtung, Steuerverfahren und Computerprogramm für eine Verteilung von Rechen-Funktionsblöcken auf Recheneinheiten eines Fahrzeugs
CN115328651B (zh) * 2022-08-12 2024-08-30 扬州万方科技股份有限公司 基于国产vpx服务器的轻量化微云系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080086479A1 (en) * 2006-10-04 2008-04-10 Salesforce.Com Inc. Method and system for governing resource consumption in a multi-tenant system
US20090031293A1 (en) * 2007-07-27 2009-01-29 Paul Marsala Contained command invocation middleware framework
US20100005443A1 (en) * 2008-07-07 2010-01-07 Kwok Thomas Y System and Methods to Create a Multi-Tenancy Software as a Service Application
US20100077449A1 (en) * 2008-09-22 2010-03-25 International Business Machines Calculating multi-tenancy resource requirements and automated tenant dynamic placement in a multi-tenant shared environment
US20100306775A1 (en) * 2009-05-26 2010-12-02 Microsoft Corporation Role based delegated administration model

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6789114B1 (en) 1998-08-05 2004-09-07 Lucent Technologies Inc. Methods and apparatus for managing middleware service in a distributed system
US7155515B1 (en) * 2001-02-06 2006-12-26 Microsoft Corporation Distributed load balancing for single entry-point systems
US7761514B2 (en) * 2003-11-26 2010-07-20 International Business Machines Corporation Method and apparatus for providing dynamic group management for distributed interactive applications
US20060242647A1 (en) 2005-04-21 2006-10-26 Kimbrel Tracy J Dynamic application placement under service and memory constraints
US7870265B2 (en) * 2005-06-30 2011-01-11 Oracle International Corporation System and method for managing communications sessions in a network
US7730478B2 (en) 2006-10-04 2010-06-01 Salesforce.Com, Inc. Method and system for allowing access to developed applications via a multi-tenant on-demand database service
CA2714961A1 (en) * 2007-02-05 2008-08-14 Moonwalk Universal Pty Ltd Data management system
US8230070B2 (en) * 2007-11-09 2012-07-24 Manjrasoft Pty. Ltd. System and method for grid and cloud computing
US8271536B2 (en) 2008-11-14 2012-09-18 Microsoft Corporation Multi-tenancy using suite of authorization manager components
US8375130B2 (en) * 2010-12-16 2013-02-12 Sap Ag Shared resource discovery, configuration, and consumption for networked solutions

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080086479A1 (en) * 2006-10-04 2008-04-10 Salesforce.Com Inc. Method and system for governing resource consumption in a multi-tenant system
US20090031293A1 (en) * 2007-07-27 2009-01-29 Paul Marsala Contained command invocation middleware framework
US20100005443A1 (en) * 2008-07-07 2010-01-07 Kwok Thomas Y System and Methods to Create a Multi-Tenancy Software as a Service Application
US20100077449A1 (en) * 2008-09-22 2010-03-25 International Business Machines Calculating multi-tenancy resource requirements and automated tenant dynamic placement in a multi-tenant shared environment
US20100306775A1 (en) * 2009-05-26 2010-12-02 Microsoft Corporation Role based delegated administration model

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104618414A (zh) * 2013-11-05 2015-05-13 阿里巴巴集团控股有限公司 一种分布式服务的实现方法、服务代理装置及分布式系统
CN104618414B (zh) * 2013-11-05 2018-05-04 阿里巴巴集团控股有限公司 一种分布式服务的实现方法、服务代理装置及分布式系统
CN106445637A (zh) * 2016-09-29 2017-02-22 中国银联股份有限公司 容器管理调度系统
CN106445637B (zh) * 2016-09-29 2019-10-01 中国银联股份有限公司 容器管理调度系统
CN109213705A (zh) * 2017-07-07 2019-01-15 爱思开海力士有限公司 存储装置及其操作方法
US11340790B2 (en) 2017-07-07 2022-05-24 SK Hynix Inc. Storage device for migrating data based on random read workload and operating method of the same
CN108572869A (zh) * 2017-09-25 2018-09-25 北京金山云网络技术有限公司 一种物理主机选择方法、装置、设备及可读存储介质
CN108572869B (zh) * 2017-09-25 2021-05-25 北京金山云网络技术有限公司 一种物理主机选择方法、装置、设备及可读存储介质
CN110298645A (zh) * 2019-07-11 2019-10-01 四川新网银行股份有限公司 全链路横向扩展的支付系统的搭建方法
CN111339529A (zh) * 2020-03-13 2020-06-26 杭州指令集智能科技有限公司 低代码的业务编排构件运行的管理框架与方法、计算设备及介质
CN113326100A (zh) * 2021-06-29 2021-08-31 深信服科技股份有限公司 一种集群管理方法、装置、设备及计算机存储介质
CN113326100B (zh) * 2021-06-29 2024-04-09 深信服科技股份有限公司 一种集群管理方法、装置、设备及计算机存储介质

Also Published As

Publication number Publication date
EP2652594A4 (en) 2014-12-03
WO2012083270A1 (en) 2012-06-21
EP2652594B1 (en) 2020-01-22
EP2652594A1 (en) 2013-10-23
US20120159523A1 (en) 2012-06-21
US8468548B2 (en) 2013-06-18
CN103092697B (zh) 2016-01-13

Similar Documents

Publication Publication Date Title
CN103092697B (zh) 用于主存有状态和无状态中间软件组件的多承租人高密度容器服务
US12069128B2 (en) Automatic scaling of resource instance groups within compute clusters
US8490150B2 (en) System, method, and software for enforcing access control policy rules on utility computing virtualization in cloud computing systems
CN1754146B (zh) 用于服务器负载均衡和服务器亲缘关系的系统和方法
CN103713951B (zh) 管理由多个计算系统执行程序
US7584274B2 (en) Coordinating use of independent external resources within requesting grid environments
Zhang et al. Minimizing communication traffic in data centers with power-aware VM placement
CN112433808B (zh) 基于网格计算的网络安全事件检测系统及方法
CN106484533A (zh) 一种基于电力PaaS云平台的服务建模系统及方法
CN106686140A (zh) 一种网络虚拟化存储方法、设备和系统
CN110086726A (zh) 一种自动切换Kubernetes主节点的方法
Gardfjäll et al. Scalable grid‐wide capacity allocation with the SweGrid Accounting System (SGAS)
CN106533961A (zh) 一种流量控制方法及装置
Aversa et al. The cloud@ home project: Towards a new enhanced computing paradigm
Spinnewyn et al. Fault-tolerant application placement in heterogeneous cloud environments
Lakhani et al. Fault administration by load balancing in distributed SDN controller: A review
CN115129423A (zh) 资源管理方法、装置、设备及存储介质
CN105406983A (zh) 一种基于用户需求的云计算网络管理控制方法
Fazio et al. Managing volunteer resources in the cloud
Khani et al. A self‐organized load balancing mechanism for cloud computing
CN113742030B (zh) 跨区服务配置方法、装置和存储介质
Kumar et al. SERVmegh: Framework for green cloud
Behl et al. DQMP: A decentralized protocol to enforce global quotas in cloud environments
Uhruski et al. A two‐layer agent‐based system for large‐scale distributed computation
CN117407170A (zh) 一种基于云服务的动态分配资源多租户系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150717

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

Effective date of registration: 20150717

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant