CN106462833B - 用于在多租户应用服务器环境中支持多个分区编辑会话的系统和方法 - Google Patents
用于在多租户应用服务器环境中支持多个分区编辑会话的系统和方法 Download PDFInfo
- Publication number
- CN106462833B CN106462833B CN201580032354.7A CN201580032354A CN106462833B CN 106462833 B CN106462833 B CN 106462833B CN 201580032354 A CN201580032354 A CN 201580032354A CN 106462833 B CN106462833 B CN 106462833B
- Authority
- CN
- China
- Prior art keywords
- snapshot
- administrator
- domain configuration
- domain
- editing
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
根据实施例,本文描述的是用于在多租户应用服务器环境中支持多个分区和编辑会话的系统和方法。根据实施例,第一管理员或用户可以获得用于与分区一起使用的命名编辑会话、做出改变以及然后激活这些改变。另一管理员或用户可以并行地创建命名编辑会话。如果在并发改变和由另一用户正在做出的改变之间存在冲突,则管理员在激活改变时将接收错误。在那时,管理员可以解决冲突并且激活改变。一旦被激活,则编辑会话中的改变将被应用到全局编辑配置。
Description
版权声明
本专利文档的公开的一部分包含受版权保护的材料。版权所有者不反对任何人如专利文档或专利公开出现在专利商标局专利文件或记录中的那样传真复制专利文档或专利公开,但在别的方面保留所有任何版权权利。
技术领域
本发明的实施例一般涉及应用服务器和云环境,并且具体涉及用于在多租户应用服务器环境中支持多个分区和编辑会话的系统和方法。
背景技术
其示例包括Oracle WebLogic服务器(WebLogic Server(WLS))和Glassfish的软件应用服务器一般提供用于运行企业软件应用的被管理的环境。近来,技术还被发展为用于在云环境中使用,这允许用户或租户在云环境内开发和运行他们的应用,以及利用由该环境提供的分布式资源。
发明内容
根据实施例,本文描述的是用于在多租户应用服务器环境中支持编辑会话的系统和方法。根据实施例,第一管理员或用户可以获得用于与分区一起使用的命名编辑会话(named edit session)、做出改变以及激活这些改变。另一管理员或用户可以并行地创建命名编辑会话。如果在并发改变和由另一用户正在做出的改变之间存在冲突,则管理员在激活改变时可以接收错误。在那时,管理员可以解决冲突并且激活改变。一旦被激活,则编辑会话中的改变将被应用到全局编辑配置。
附图说明
图1示出了根据实施例的用于在应用服务器、云或其他环境中支持多租户的系统。
图2进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多租户的系统。
图3进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多租户的系统。
图4示出了根据实施例的用于与示例性多租户环境一起使用的域配置。
图5进一步示出了根据实施例的示例性多租户环境。
图6示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
图7进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
图8进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
图9进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
图10示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的方法。
具体实施方式
根据实施例,本文描述的是用于在多租户应用服务器环境中支持编辑会话的系统和方法。根据实施例,第一管理员或用户可以获得用于与分区一起使用的命名编辑会话、做出改变以及然后激活这些改变。另一管理员或用户可以并行地创建命名编辑会话。如果在并发改变和由另一用户正在做出的改变之间存在冲突,则管理员在激活改变时将接收错误。在那时,管理员可以解决冲突并且激活改变。一旦被激活,则编辑会话中的改变将被应用到全局编辑配置。
应用服务器(例如,多租户、MT)环境
图1示出了根据实施例的用于在应用服务器、云或其他环境中支持多租户的系统。
如图1所示,根据实施例,实现软件应用的部署和执行的应用服务器(例如,多租户、MT)环境100或者其他计算环境可以被配置为包括在运行时被用于定义应用服务器域的域102配置并且根据该域102配置操作。
根据实施例,应用服务器可以包括被定义以用于在运行时使用的一个或多个分区104。每个分区可以与全局唯一的分区标识符(ID)和分区配置相关联,并且可以进一步包括一个或多个资源组124,以及对资源组模板的引用126和/或分区特定应用或资源128。域级资源组、应用和/或资源140还可以在域级定义,其可选地具有对资源组模板的引用。
每个资源组模板160可以定义一个或多个应用A 162、B 164、资源A 166、B 168和/或其他可部署的应用或资源170,并且可以由资源组引用。例如,如图1所示,分区104中的资源组124可以引用190资源组模板160。
一般来说,系统管理员可以定义分区、域级资源组和资源组模板,以及安全领域(realm);而分区管理员可以例如通过创建分区级资源组、将应用部署到分区或者引用用于分区的特定领域来定义他们自己的分区的方面。
图2进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多租户的系统。
如图2所示,根据实施例,分区202可以包括例如包括对资源组模板210的引用206的资源组205、虚拟目标(例如,虚拟主机)信息207和可插拔数据库(PDB)信息208。资源组模板(例如,210)可以定义例如多个应用A 211和B 212,以及诸如Java消息服务器(JavaMessage Server,JMS)服务器213、存储转发(SAF)代理215、邮件会话组件216或Java数据库连接(Java Database Connectivity,JDBC)资源217之类的资源。
图2中示出的资源组模板通过示例的方式被提供;根据其他实施例,不同类型的资源组模板和元素可以被提供。
根据实施例,当分区(例如,202)内的资源组引用220特定资源组模板(例如,210)时,与特定分区相关联的信息可以与所引用的资源组模板结合使用,以指示分区特定信息230,例如分区特定PDB信息。然后分区特定信息可以由应用服务器使用以配置用于由分区使用的资源,例如PDB资源。例如,与分区202相关联的分区特定PDB信息可以由应用服务器使用以配置232用于由该分区使用的具有合适的PDB 238的容器数据库(CDB)236。
类似地,根据实施例,与特定分区相关联的虚拟目标信息可以被用于定义239用于由分区使用的分区特定的虚拟目标240,例如,baylandurgentcare.com,然后该虚拟目标240可以经由统一资源定位符(URL)(例如,http://baylandurgentcare.com)成为可访问的。
图3进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多租户的系统。
根据实施例,诸如config.xml配置文件之类的系统配置被用于定义分区,该系统配置包括用于与该分区相关联的资源组的配置元素和/或其他分区特性(property)。使用特性名称/值对可以针对每分区指定值。
根据实施例,多个分区可以在可以提供对CDB 243的访问并且经由web层244可访问的被管理的服务器/集群242或者类似环境内被执行。这允许例如域或分区与(CDB的)PDB中的一个或多个PDB相关联。
根据实施例,多个分区中的每个分区(在该示例中分区A 250和分区B 260)可以被配置为包括与该分区相关联的多个资源。例如,分区A可以被配置为包括资源组251,该资源组251包含应用A1 252、应用A2 254和JMS A 256、以及与PDB A 259相关联的数据源A 257,其中该分区是经由虚拟目标A 258可访问的。类似地,分区B 260可以被配置为包括资源组261,该资源组261包含应用B1 262、应用B2 264和JMS B 266、以及与PDB B 269相关联的数据源B 267,其中该分区是经由虚拟目标B 268可访问的。
尽管上面的示例中的若干示例示出了CDB和PDB的使用,但是根据其他实施例,可以支持其他类型的多租户或非多租户数据库,其中可以例如通过模式(schema)的使用或不同数据库的使用来为每个分区提供特定配置。
资源
根据实施例,资源是可以被部署到环境的域的系统资源、应用或者其他资源或对象。例如,根据实施例,资源可以是可以被部署到服务器、集群或其他应用服务器目标的应用、JMS、JDBC、JavaMail、WLDF、数据源或者其他系统资源或其他类型的对象。
分区
根据实施例,分区是域的运行时和管理的细分(subdivision)或切片(slice),其可以与分区标识符(ID)和配置相关联并且可以包含应用和/或通过资源组和资源组模板的使用来参照域范围的(domain-wide)资源。
一般来说,分区可以包含它自己的应用、经由资源组模板参照域范围的应用以及具有它自己的配置。可分区的实体可以包括资源,例如JMS、JDBC、JavaMail、WLDF资源以及诸如JNDI名称空间、网络业务、工作管理器以及安全策略和领域之类的其他组件。在多租户环境的背景下,系统可以被配置为提供对于与租户相关联的分区的管理和运行时方面的租户访问。
根据实施例,分区内的每个资源组可以可选地引用资源组模板。分区可以具有多个资源组,并且它们中的每个可以引用资源组模板。每个分区可以定义用于在分区的资源组所参照的资源组模板中没有指定的配置数据的特性。这使得分区能够充当资源组模板中定义的可部署资源到用于与该分区一起使用的特定值的绑定(binding)。在一些情况中,分区可以重写由资源组模板指定的配置信息。
根据实施例,正如例如由config.xml配置文件定义的分区配置可以包括多个配置元素,例如:“partition(分区)”,其包含定义该分区的属性和子元素;“resource-group(资源组)”,其包含被部署到该分区的应用和资源;“resource-group-template(资源组模板)”,其包含由该模板定义的应用和资源;“jdbc-system-resource-override(jdbc系统资源重写)”,其包含数据库特定的服务名称、用户名称和密码;以及“partition-properties(分区特性)”,其包含可以被用于资源组模板中的宏替换(macro replacement)的特性键值。
启动时,系统可以使用由配置文件提供的信息以从资源组模板为每个资源生成分区特定的配置元素。
资源组
根据实施例,资源组是可以在域级或分区级定义并且可以引用资源组模板的可部署资源的命名的、完全限定的(fully-qualified)汇集。资源组中的资源被认为是完全限定的,是因为管理员已经提供了启动或连接到这些资源所需要的信息中的所有信息,例如用于连接到数据源的凭证(credential)或者用于应用的定向(targeting)信息。
系统管理员可以声明资源组在域级或者在分区级。在域级,资源组提供将相关资源分组的便利的方法。系统可以与管理未分组的资源一样管理域级资源组中声明的资源,以使得资源在系统启动期间可以被启动,并且在系统关闭(shut-down)期间可以被停止。管理员还可以单独停止、启动或移除组中的资源,并且可以通过对组进行操作而隐式地对组中的所有资源动作。例如,停止资源组停止组中的尚未被停止的资源中的所有资源;启动资源组启动组中的尚未被启动的任何资源;而移除资源组移除组中包含的资源中的所有资源。
在分区级,受到任何安全限制的影响,系统或分区管理员可以在分区中配置零个或更多个资源组。例如,在SaaS用例中,各种分区级资源组可以参照域级资源组模板;而在PaaS用例中,可以创建不参照资源组模板、而是替代地表示将仅在该分区内可用的应用及其相关资源的分区级资源组。
根据实施例,资源分组可以被用于将应用和它们使用的资源一起分组作为域内的不同管理单元。例如,在下文描述的医疗记录(MedRec)应用中,资源分组定义MedRec应用及其资源。多个分区可以各自使用分区特定的配置信息来运行同一MedRec资源组,以使得作为每个MedRec实例的部分的应用特定于每个分区。
资源组模板
根据实施例,资源组模板是可以从资源组引用的、在域级定义的可部署资源的汇集,并且激活它的资源所需要的信息中的一些信息可以不作为模板自身的部分存储,以使得它支持分区级配置的规范。域可以包含任何数量的资源组模板,这些资源组模板中的每个可以包括例如一个或多个相关Java应用以及这些应用依赖的资源。关于这样的资源的信息中的一些信息可以是跨所有分区相同的,而其他信息可以依分区而不同。并非所有配置需要在域级被指定——分区级配置可以替代地通过宏或特性名称/值对的使用在资源组模板中被指定。
根据实施例,特定资源组模板可以由一个或多个资源组引用。一般来说,在任何给定分区内,资源组模板在某一时间处可以由一个资源组引用,即,不是由同一分区内的多个资源组同时引用;然而,资源组模板可以由在不同分区中的另一资源组同时引用。包含资源组的对象(例如,域或分区)可以使用特性名称/值赋值来设置资源组模板中的任何标记(token)的值。当系统使用引用资源组来激活资源组模板时,它可以用资源组的包含对象中设置的值来替换这些标记。在一些情况中,系统还可以使用静态配置的资源组模板和分区以生成用于每个分区/模板组合的运行时配置。
例如,在SaaS用例中,系统可以多次激活相同的应用和资源,其中包括为了将使用它们的每个分区的一次激活。当管理员定义资源组模板时,他们可以使用标记来表示将从其他地方供应的信息。例如,在连接到CRM相关数据资源中使用的用户名可以在资源组模板中被指示为\${CRMDataUsername}。
租户
根据实施例,在诸如多租户(MT)应用服务器环境之类的多租户环境中,租户是可以由一个或多个分区和/或一个或多个租户感知的应用表示、或者以其他方式与一个或多个分区和/或一个或多个租户感知的应用相关联的实体。
例如,租户可以表示不同的用户组织,诸如不同的外部公司或者特定企业内的不同部门(例如,HR部门和财务部门),这些用户组织中的每个可以与不同的分区相关联。租户全局唯一标识(租户ID)是特定用户在特定时刻处与特定租户的关联。系统可以例如通过参照用户标识存储区(store)来从用户标识导出特定用户属于哪个租户。用户标识使得系统能够执行用户被授权执行的那些动作,包括但不限于用户可以属于哪个租户。
根据实施例,系统实现不同租户的管理和运行时的彼此隔离。例如,租户可以配置他们的应用的一些行为以及他们可以访问的资源。系统可以确保特定租户不能管理属于另一租户的工件(artifact);以及在运行时确保代表特定租户工作的应用仅参照与该租户相关联的资源,而不参照与其他租户相关联的资源。
根据实施例,非租户感知(tenant-unaware)的应用是如下应用:其不包含显式应对租户的逻辑,以使得不管什么用户提交了应用所响应的请求,应用使用的任何资源都可以是可访问的。相反,租户感知的应用包括显式应对租户的逻辑。例如,应用可以基于用户的标识导出用户所属的租户并且使用该信息来访问租户特定资源。
根据实施例,系统使得用户能够部署被显式编写为租户感知的的应用,以使得应用开发者可以获得当前租户的租户ID。然后租户感知的应用可以使用租户ID来处理正在使用应用的单个实例的多个租户。
例如,支持单个医生的办公室或医院的MedRec应用可以被暴露给两个不同的分区或租户(例如,湾地急诊(Bayland Urgent Care)租户和山谷健康(Valley Health)租户),这两个不同的分区或租户中的每个能够在不改变底层应用代码的情况下访问分开的租户特定资源,诸如分开的PDB。
示例性域配置和多租户环境
根据实施例,应用可以被部署到在域级的资源组模板,或者被部署到范围为某一分区或范围为域的资源组。可以使用针对每应用或每分区指定的部署计划来重写应用配置。
图4示出了根据实施例的用于与示例性多租户环境一起使用的域配置。
根据实施例,当系统启动分区时,系统根据所提供的配置创建到各自的数据库实例的虚拟目标(例如,虚拟主机)和连接池,包括用于每个分区的一个虚拟目标和连接池。
通常,每个资源组模板可以包括一个或多个相关应用以及这些应用所依赖的资源。每个分区可以通过提供资源组模板中的可部署资源到与该分区相关联的特定值的绑定来提供在它所参照的资源组模板中没有指定的配置数据;在一些情况中,这包括重写由资源组模板指定的某些配置信息。这使得系统能够使用每个分区已定义的特性值来为每个分区以不同方式激活由资源组模板表示的应用。
在一些实例中,分区可以包含不参照资源组模板或者直接定义它们自己分区范围的可部署资源的资源组。分区内定义的应用和数据源一般仅对该分区可用。资源可以被部署以使得可以使用partition:<partitionName>/<resource JNDI name>或domain:<resource JNDI name>从跨分区来访问它们。
例如,MedRec应用可以包括多个Java应用、数据源、JMS服务器和邮件会话。为了针对多个租户运行MedRec应用,系统管理员可以定义声明模板中的那些可部署资源的单个MedRec资源组模板286。
与域级可部署资源相反,资源组模板中声明的可部署资源可以在模板中不被完全配置或者不能被原样(as-is)激活,因为它们缺少某些配置信息。
例如,MedRec资源组模板可以声明由应用使用的数据源,但是它可以不指定用于连接到数据库的URL。与不同租户相关联的分区(例如,分区BUC-A 290(湾地急诊、BUC)和分区VH-A 292(山谷健康、VH))可以通过各自包括引用296、297MedRec资源组模板的MedRec资源组293、294来引用一个或多个资源组模板。然后引用可以被用于创建302、306用于每个租户的虚拟目标/虚拟主机,包括用于由湾地急诊租户使用的、与BUC-A分区相关联的虚拟主机baylandurgentcare.com 304;以及用于由山谷健康租户使用的、与VH-A分区相关联的虚拟主机valleyhealth.com 308。
图5进一步示出了根据实施例的示例性多租户环境。如图5所示,并且继续其中两个分区引用MedRec资源组模板的来自上文的示例,根据实施例,服务器端程序(servlet)引擎310可以被用于支持多个租户环境,在该示例中为湾地急诊医师租户环境320和山谷健康医师租户环境330。
根据实施例,每个分区321、331可以定义在其上接纳对于该租户环境的输入业务的不同虚拟目标以及用于连接到分区和连接到资源324、334的不同URL 322、332,该资源324、334在该示例中分别包括湾地急诊数据库或山谷健康数据库。因为同一应用代码将针对两个数据库都执行,所以数据库实例可以使用兼容模式。当系统启动分区时,系统可以创建到各自的数据库实例的虚拟目标和连接池。
对于多个编辑会话的支持
在例如多租户应用服务器环境的应用服务器环境中,应用服务器域可以具有多个分区和多个配置文件,并且由不同类型的管理员管理。配置文件的单个编辑会话对于这样的域是不够的。
根据实施例,本文描述的是用于在多租户应用服务器环境中支持编辑会话的系统和方法。根据实施例,第一管理员或用户可以获得用于与分区一起使用的命名编辑会话、做出改变并且然后激活这些改变。另一管理员或用户可以并行地创建命名编辑会话。如果在并发改变和由另一用户正在做出的改变之间存在冲突,则管理员在激活改变时可以接收错误警告。在那时,管理员可以解决冲突并且激活改变。一旦被激活,则编辑会话中的改变将被应用到全局编辑配置。
根据实施例,该特征可以在多租户或非多租户环境中被使用。在多租户环境中,该特征可以自动启动,而在非多租户环境中,该特征可以被手动启动。
根据实施例,管理员(例如系统管理员或分区管理员)可以启动命名编辑会话并且获取域配置的快照,其中域配置包括一个或多个分区配置。管理员可以改变管理员被授权改变的域配置的部分,并且激活改变。随后系统可以检查改变与一个或多个已经激活的改变之间的任何冲突。
根据实施例,当由命名编辑会话做出的改变被激活时,在并发或并行的命名编辑会话之间可以发生冲突。例如,在第一命名编辑会话被启动之后,当前域配置可能已经由第二命名编辑会话改变。当在第一命名编辑会话中对域配置的快照做出的改变被激活以被应用到域配置时,潜在冲突可以发生。潜在冲突的一个示例是第一命名编辑会话更新了已经由第二编辑会话从域配置删除的配置构件(bean)。
根据实施例,在由两个或更多个分区管理员对于同一分区做出的改变之间、在修改了域配置的全局特性的由两个或更多个系统管理员做出的改变之间或者在由系统管理员和分区管理员做出的改变之间可以发生冲突。
当来自一个命名编辑会话的改变被激活时,系统可以检测冲突。如果冲突可以根据一组可配置的规则来解决,则改变被激活并且被应用到当前域配置。如果冲突不能基于规则来解决,则激活操作失败并且冲突被显示在用户界面上以用于由管理员手动解决。
可替代地,管理员可以经由管理应用编程接口调用解决方法,其中该解决方法可以被用于将任何并发应用的配置改变应用到当前命名编辑会话。
在手动解决或者由解决方法解决之后,当前命名编辑会话中的改变可以被再次激活。
图6示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
如图6所示,系统包括应用服务器环境100中的域602。域配置606可以包括用于分区的多个配置(例如,分区配置A 607和分区配置B 609)。每个分区配置可以定义分区并且可以由分区的管理员编辑。
根据实施例,系统管理员或分区管理员可以通过对配置的快照(例如,配置快照A626a或配置快照B 628a)进行工作来编辑域配置。配置快照可以由驻留在管理服务器上的配置MBean(管理构件)的分开的层级结构(hierarchy)来表示。
根据实施例,域配置可以由多个管理员(例如,管理员A 619和管理员B 621)使用多个并发会话(例如,编辑会话A 623和编辑会话B 625)来编辑。每个编辑会话可以用在会话开始时间处指定的名称唯一地标识,并且可以具有它自己的配置文件和它自己的配置管理构件实例。
如图6所示,管理员A可以在编辑会话A中编辑配置快照A 627,而管理员B可以在编辑会话B中编辑配置快照B 631。
根据实施例,管理员可以使用管理API 611(例如,运行时Mbean API)来创建或销毁命名的并发编辑会话。管理API可以包括使得管理员能够执行多个操作的多个接口(例如,保存613、解决615和激活617),该多个操作例如启动编辑会话、保持(persist)改变、显示改变和撤销改变。
根据实施例,编辑会话中做出的改变可以被保存637到域中的存储区域605。被保存的改变直到它们被激活时才生效。激活改变可以包括将改变合并到域配置中以及将改变分发到域中的所有服务器实例。
如上文所描述的,每个编辑会话以偏离域配置的快照的方式工作(work off)。每个编辑会话中做出的改变之间可以发生冲突。例如,一个编辑会话更新已经由另一编辑会话从域配置删除的配置构件,或者一个编辑会话改变还已经由另一编辑会话改变的属性。在由多个分区管理员对于同一分区做出的改变之间、在由多个系统管理员做出的改变之间或者在由系统管理员和分区管理员做出的改变之间可以发生冲突。
根据实施例,当管理员激活编辑会话中的配置改变时,并发编辑会话管理器639可以被调用641,以检测要被激活的改变和在编辑会话被启动之后被激活的改变之间的冲突。并发会话管理器可以接收653由编辑会话做出的改变(例如,编辑后的配置快照A 647或编辑后的配置快照B 649)和原始快照(例如,原始配置快照A 626b或原始配置快照B 628b)。类似地,并发编辑会话管理器可以接收651当前域配置(即,域配置605)或它的一部分。通过使用接收到的信息,并发编辑会话管理器可以根据一组规则确定冲突,并且基于一组规则解决冲突中的一部分或者全部。
如图6所示,当没有检测到冲突或者检测到的冲突被成功解决时,由管理员做出的改变可以被应用649到域配置。如果检测到的冲突不能被解决,则冲突645可以向管理员显示629、635以供手动解决。
图7进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
根据实施例,配置快照可以表示配置文件的原始版本或者编辑会话或编辑树从其启动的配置。
如上文所描述的,配置快照需要被保持或复制655或657到配置存储区域以用于在确定由并发的编辑会话做出的改变之间的冲突中使用。
根据实施例,当并发编辑会话或另一并发编辑会话执行激活操作时,与并发编辑会话相关联的配置快照可以被保持到配置存储区域。如果没有检测到激活操作,则配置快照不被复制到配置存储区域,以降低需要被复制的配置文件的数量。
根据实施例,管理API可以被配置为复制所有配置快照或者仅复制为了冲突确定所需要的配置快照。可替代地,管理API可以被配置为仅复制配置快照中的为了冲突确定所需要的那些文件。
作为说明性示例,管理员B请求711激活动作,而管理员A正在并发编辑会话中工作。作为该请求的结果,管理API可以将配置快照A和B、或者它们中的一个或者任一配置快照中的一个或多个文件复制到配置存储区域。
冲突确定
图8进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
根据实施例,当编辑会话执行激活动作时,由并发编辑会话做出的改变之间的冲突被确定。
例如,正在编辑会话中工作的管理员B可以请求811激活动作,并且调用并发会话管理器以根据一组规则确定潜在的冲突。
根据实施例,使用基于规则的方法可以发现以及可选地解决冲突。例如,如果自编辑会话被启动以来没有对域配置(例如,WebLogic运行时域配置)做出过改变,则编辑会话改变可以被激活。如果对域配置做出过改变,则并发编辑会话管理器可以确定编辑会话以偏离其的方式工作的原始配置快照和域配置之间的差别853。并发编辑会话管理器还可以确定包括编辑会话中做出的改变的编辑后的配置快照和编辑会话以偏离其的方式工作的原始快照配置之间的差别855。可以比较上面确定的这两组差别以标识857或859潜在的冲突861。
图9进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
根据实施例,当并发会话管理器标识到冲突时,在管理员B的请求911处,管理API中的解决方法可以被调用以解决这些冲突。
根据实施例,利用参数(例如,stopOnConflict=false)可以执行解决方法以将已经并发地应用到域配置的任何改变应用947到编辑会话B,如果这些改变与编辑会话B中做出的改变不冲突的话。
例如,改变945可以是原始配置快照B和域配置之间的差别。
根据实施例,以下规则可以被用于将改变应用到编辑会话,其中EDIT表示编辑会话,CURRENT表示域配置,以及其中构件可以是域中的配置构件。
1)EDIT更新了在CURRENT中已经删除的构件。对构件的更新包括改变属性或添加子构件。
解决方法:可以在EDIT中删除构件。
2)EDIT删除了在CURRENT中已经改变的构件。
解决方法:在EDIT中构件将保持被删除。
3)EDIT改变了在CURRENT中也已经改变的属性。这包括简单数据类型属性和简单数据类型属性的数组。附加地,存在其中顺序敏感的MBean的数组。
解决方法:来自EDIT的值可以保持未改变。
4)EDIT添加具有与CURRENT中添加的构件相同的限定键的新构件。它被检测为与属性改变冲突不同的冲突,因为它更适合尽可能多得使用WLS中的现有的比较和合并(diffand merge)工具的使用过的冲突检测和解决方法。
解决方法:构件在EDIT中将是未改变的。
5)EDIT设置指向在CURRENT中被移除的构件的(作为某个特性的值的)引用。
解决方法:引用被重置(unset)。
6)CURRENT设置指向在EDIT中被移除的构件的(作为某个特性的值的)引用。
解决方法:EDIT将不被改变,即构件将保持被删除。
7)EDIT添加包含指向在CURRENT中被移除的构件的(作为某个特性的值的)引用的构件。
解决方法:添加的构件中的引用将被重置。
8)CURRENT添加包含指向在EDIT中被移除的构件的(作为某个特性的值的)引用的构件。
解决方法:新的构件也将被添加到EDIT并且引用将被重置。
列表2
如列表2所示,被识别的配置冲突和用于每个冲突的解决方法的列表被标识。
根据实施例,在解决方法已被调用之后,管理员可以再次继续编辑会话中的未决(pending)改变的激活。解决操作可以确保只要同时另一编辑会话没有激活任何新改变,则不再存在冲突。
根据实施例,解决过程可以导致在配置验证阶段不被接受的不一致的配置。管理员可以使用用户界面上显示的信息来将解决后的会话修改为一致的、有效的并且有意义的状态。所显示的信息可以包括冲突,其中每个冲突可以包含冲突的描述,例如冲突中的构件/特性的标识;以及描述该冲突的哪部分已经被解决的一个或多个消息。
可以由管理员使用的附加信息包括日志消息,该日志消息可以包含每个解决和合并步骤的简短描述。日志消息可以被用于标识已经做出了哪些改变以及在特定编辑会话中改变怎样被做出。
根据实施例,当解决方法被调用时,上文所描述的信息可以是从用户界面上的或者脚本工具(例如,WebLogic Scripting Tool(WebLogic脚本工具))上打印的解决任务可访问的。
图10进一步示出了根据实施例的用于在应用服务器、云或其他环境中支持多个编辑会话的系统。
如图10所示,在步骤1011处,应用服务器(例如,多租户)环境可以在一个或多个计算机上被提供,其中该应用服务器环境包括具有一个或多个分区的域、配置域和分区的域配置、用于由管理员在改变域配置中使用的管理API。
在步骤1013处,经由管理API接收来自多个并发编辑会话的改变,其中每个并发编辑会话被建立以编辑域配置的快照。
在步骤1015处,接收的改变中的冲突可以由域中的并发会话管理器检测。
在步骤1017处,冲突可以向管理员显示以供解决。
使用包括根据本公开的教导编程的一个或多个处理器、存储器和/或计算机可读存储媒介的一个或多个常规的通用或专用电子计算机、计算设备、机器或微处理器可以方便地实现本发明。如对于软件领域技术人员将明显的,熟练的程序员可以基于本公开的教导容易地准备合适的软件编码。
在一些实施例中,本发明包括计算机程序产品,该计算机程序产品是具有可以被用于将计算机编程以执行本发明的过程中的任何过程的、存储在其上/其中的指令的非暂态存储介质或计算机可读介质(媒介)。存储介质可以包括但不限于任何类型的盘,该任何类型的盘包括软盘、光盘、DVD、CD-ROM、微型硬盘以及磁光盘、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪速存储器设备、磁卡或光卡、纳米系统(包括分子存储器IC)或适用于存储指令和/或数据的任何类型的媒介或设备。
出于说明和描述的目的提供了本发明的上述描述。它并不旨在是详尽的或者将本发明限制到所公开的精确形式。许多修改和变化对于本领域技术人员来说将是明显的。实施例被选择和描述以便于最佳地解释本发明的原理及其实践应用,从而使得本领域其他技术人员能够对于各种实施例以及利用适合所设想的特定使用的各种修改来理解本发明。旨在由以下权利要求和它们的等价物来限定本发明的范围。
Claims (21)
1.一种用于在多租户应用服务器环境中支持多个编辑会话的系统,包括:
一个或多个计算机,每个计算机包括微处理器和存储器;
所述计算机上的多租户应用服务器环境,其中所述多租户应用服务器环境包括:
多个应用服务器实例的域,
域配置,所述域配置将所述域配成一个或多个分区,其中每个分区表示由所述多租户应用服务器环境的租户使用的运行时,
管理API,包括用于在改变所述域配置中使用的多个方法,以及
所述域中的并发会话管理器;
被配置为使用所述管理API来编辑第一快照的第一编辑会话,以及被配置为使用所述管理API来编辑第二快照的第二编辑会话;
其中第一快照和第二快照中的每一个是根据所述域配置创建的;
其中第二编辑会话在对第一快照做出的改变被合并到所述域配置之前启动;
其中所述并发会话管理器由所述第一编辑会话和所述第二编辑会话共享,并且操作以:
将对第一快照做出的改变合并到所述域配置,
接收将对第二快照做出的改变合并到所述域配置的请求,
将第二快照与包括对第一快照做出的改变的域配置进行比较,
检测第二快照与所述域配置之间的冲突,以及
显示对检测到的冲突的警告。
2.根据权利要求1所述的系统,其中所述并发会话管理器通过执行以下步骤来检测所述冲突:
确定所述域配置和由管理员对所述域配置的快照做出的改变之间的第一差别;
确定所述域配置的快照和所述域配置之间的第二差别;以及
比较所述第一差别和第二差别。
3.根据权利要求1所述的系统,其中第一编辑会话和第二编辑会话中的每一个由不同的系统管理员启动。
4.根据权利要求1所述的系统,其中第一编辑会话和第二编辑会话中的每一个由不同的分区管理员启动。
5.根据权利要求1所述的系统,其中第一编辑会话和第二编辑会话由系统管理员和分区管理员启动。
6.根据权利要求1所述的系统,其中当管理员使用所述管理API执行激活动作时,调用所述并发会话管理器以将由所述管理员做出的改变合并到所述域配置。
7.根据权利要求6所述的系统,其中所述管理员在查看显示的冲突之后使用所述管理API执行解决动作,以及使用所述管理API执行激活动作。
8.根据权利要求6所述的系统,其中如果没有检测到冲突,则由所述管理员做出的所述改变被合并到所述域配置中。
9.根据权利要求1所述的系统,其中每个快照被保持到存储区域以用于在由所述并发会话管理器检测所述冲突中使用。
10.根据权利要求9所述的系统,其中当与所述快照相关联的管理员执行激活动作时,所述快照的所述保持发生。
11.一种用于在多租户应用服务器环境中支持多个分区和编辑会话的方法,包括:
在一个或多个计算机上提供多租户应用服务器环境,其中所述多租户应用服务器环境包括:
域配置,所述域配置将域配成一个或多个分区,其中每个分区表示由所述多租户应用服务器环境的租户使用的运行时,
用于在改变所述域配置中使用的管理API,以及
所述域中的并发会话管理器;
启动第一编辑会话和第二编辑会话,其中第一编辑会话被配置为使用所述管理API来编辑所述域配置的第一快照,其中第二编辑会话被配置为使用所述管理API来编辑所述域配置的第二快照,并且其中第二编辑会话在第一编辑会话中做出的改变被合并到所述域配置之前启动,并且其中所述并发会话管理器由所述第一编辑会话和所述第二编辑会话共享;
由所述并发会话管理器将对第一快照做出的改变合并到所述域配置;
接收将对第二快照做出的改变合并到所述域配置的请求;
由所述并发会话管理器将第二快照与包括对第一快照做出的改变的域配置进行比较;
由所述并发会话管理器检测第二快照与所述域配置之间的冲突;以及
显示对检测到的冲突的警告。
12.根据权利要求11所述的方法,其中所述并发会话管理器通过执行以下步骤来检测所述冲突:
确定所述域配置和由管理员对所述域配置的快照做出的改变之间的第一差别;
确定所述域配置的快照和所述域配置之间的第二差别;以及
比较所述第一差别和第二差别。
13.根据权利要求12所述的方法,其中所述管理员从由系统管理员和分区管理员组成的组中选出。
14.根据权利要求11所述的方法,其中第一编辑会话和第二编辑会话中的每一个由不同的分区管理员或者由不同的系统管理员启动。
15.根据权利要求11所述的方法,其中第一编辑会话和第二编辑会话由系统管理员和分区管理员启动。
16.根据权利要求11所述的方法,其中当管理员使用所述管理API执行激活动作时,调用所述并发会话管理器以将由所述管理员做出的改变合并到所述域配置。
17.根据权利要求16所述的方法,其中所述管理员在查看显示的冲突之后使用所述管理API执行解决动作,以及使用所述管理API再次执行激活动作。
18.根据权利要求16所述的方法,其中如果没有检测到冲突,则由所述管理员做出的所述改变被合并到所述域配置中。
19.根据权利要求12所述的方法,其中每个快照被保持到存储区域以用于在由所述并发会话管理器检测所述冲突中使用。
20.一种用于在多租户应用服务器环境中支持多个编辑会话的装置,所述装置包括用于执行根据权利要求11到19中的任一权利要求所述的方法的部件。
21.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质包括存储在其上的指令,当所述指令由一个或多个计算机读取和执行时使得所述一个或多个计算机执行步骤,所述步骤包括:
在一个或多个计算机上提供多租户应用服务器环境,其中所述多租户应用服务器环境包括:
域配置,所述域配置将域配成一个或多个分区,其中每个分区表示由所述多租户应用服务器环境的租户使用的运行时,
用于在改变所述域配置中使用的管理API,以及
所述域中的并发会话管理器;
启动第一编辑会话和第二编辑会话,其中第一编辑会话被配置为使用所述管理API来编辑所述域配置的第一快照,其中第二编辑会话被配置为使用所述管理API来编辑所述域配置的第二快照,并且其中第二编辑会话在第一编辑会话中做出的改变被合并到所述域配置之前启动,并且其中所述并发会话管理器由所述第一编辑会话和所述第二编辑会话共享;
由所述并发会话管理器将对第一快照做出的改变合并到所述域配置;
接收将对第二快照做出的改变合并到所述域配置的请求;
由所述并发会话管理器将第二快照与包括对第一快照做出的改变的域配置进行比较;
由所述并发会话管理器检测第二快照与所述域配置之间的冲突;以及
显示对检测到的冲突的警告。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462016040P | 2014-06-23 | 2014-06-23 | |
US62/016,040 | 2014-06-23 | ||
US201462054908P | 2014-09-24 | 2014-09-24 | |
US62/054,908 | 2014-09-24 | ||
PCT/US2015/037265 WO2015200375A1 (en) | 2014-06-23 | 2015-06-23 | System and method for supporting multiple partition edit sessions in a multitenant application server environment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106462833A CN106462833A (zh) | 2017-02-22 |
CN106462833B true CN106462833B (zh) | 2020-01-14 |
Family
ID=53541924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580032354.7A Active CN106462833B (zh) | 2014-06-23 | 2015-06-23 | 用于在多租户应用服务器环境中支持多个分区编辑会话的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10009225B2 (zh) |
EP (1) | EP3158447B1 (zh) |
JP (1) | JP6491243B2 (zh) |
KR (2) | KR20170020866A (zh) |
CN (1) | CN106462833B (zh) |
WO (1) | WO2015200375A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10103946B2 (en) | 2014-01-21 | 2018-10-16 | Oracle International Corporation | System and method for JMS integration in a multitenant application server environment |
US9961011B2 (en) | 2014-01-21 | 2018-05-01 | Oracle International Corporation | System and method for supporting multi-tenancy in an application server, cloud, or other environment |
US10187454B2 (en) | 2014-01-21 | 2019-01-22 | Oracle International Corporation | System and method for dynamic clustered JMS in an application server environment |
US10476938B2 (en) | 2014-01-21 | 2019-11-12 | Oracle International Corporation | System and method for multitenancy store in a multitenant application server environment |
US10474998B2 (en) | 2014-01-21 | 2019-11-12 | Oracle International Corporation | System and method for messaging in a multitenant application server environment |
US10027550B2 (en) | 2014-06-23 | 2018-07-17 | Oracle International Corporation | System and method for multitenant-aware console for use in a multitenant application server environment |
US10873627B2 (en) | 2014-06-23 | 2020-12-22 | Oracle International Corporation | System and method for supporting use of an in-memory data grid with a multitenant application server environment |
US10469401B2 (en) | 2014-09-25 | 2019-11-05 | Oracle International Corporation | System and method for supporting lifecycle plugins in a multitenant application server environment |
US10348565B2 (en) | 2014-09-25 | 2019-07-09 | Oracle International Corporation | System and method for rule-based elasticity in a multitenant application server environment |
US10382537B2 (en) | 2014-09-25 | 2019-08-13 | Oracle International Corporation | System and method for use of a global runtime in a multitenant application server environment |
US10467061B2 (en) | 2014-09-25 | 2019-11-05 | Oracle International Corporation | System and method for resource overriding in a multitenant application server environment |
EP3198426B1 (en) * | 2014-09-26 | 2023-08-30 | Oracle International Corporation | System and method for transaction recovery in a multitenant application server environment |
US10091135B2 (en) | 2014-09-26 | 2018-10-02 | Oracle International Corporation | System and method for multi-tenancy enablement of enterprise java applications using resource proxies and application tenancy context |
US10050903B2 (en) | 2014-09-26 | 2018-08-14 | Oracle International Corporation | System and method for multi-tenancy enablement of enterprise JAVA (TM) applications using resource proxies and application tenancy context |
US11057272B2 (en) | 2014-09-26 | 2021-07-06 | Oracle International Corporation | System and method for transactions in a multitenant application server environment |
US10250512B2 (en) | 2015-01-21 | 2019-04-02 | Oracle International Corporation | System and method for traffic director support in a multitenant application server environment |
US10489378B2 (en) * | 2015-12-08 | 2019-11-26 | Sap Se | Detection and resolution of conflicts in data synchronization |
US11075799B2 (en) | 2017-08-24 | 2021-07-27 | Oracle International Corporation | System and method for provisioning in a multi-tenant application server environment |
US10873504B1 (en) * | 2019-07-17 | 2020-12-22 | Hewlett Packard Enterprise Development Lp | Managing concurrently received configuration requests in a computing network |
CN111984893B (zh) * | 2020-09-29 | 2023-09-12 | 杭州迪普科技股份有限公司 | 系统日志配置冲突提醒方法、装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101405729A (zh) * | 2006-03-23 | 2009-04-08 | 微软公司 | 具有增量式视图维护的映射体系结构 |
CN102016834A (zh) * | 2008-04-28 | 2011-04-13 | 微软公司 | 冲突解决 |
CN102834822A (zh) * | 2010-04-12 | 2012-12-19 | 微软公司 | 由虚拟机共享的群集的快速-完整备份 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001073661A1 (en) | 2000-03-27 | 2001-10-04 | Vertical*I Inc. | Business technology exchange and collaboration system |
WO2004059443A2 (en) * | 2002-12-23 | 2004-07-15 | Dexterra, Inc. | Mobile data and software update system and method |
US7366460B2 (en) * | 2003-01-23 | 2008-04-29 | Dexterra, Inc. | System and method for mobile data update |
EP1678617A4 (en) | 2003-10-08 | 2008-03-26 | Unisys Corp | COMPUTER SYSTEM PARAVIRTUALIZATION BY USING A HYPERVISOR IMPLEMENTED IN A PARTITION OF THE HOST SYSTEM |
US7853961B2 (en) * | 2005-02-28 | 2010-12-14 | Microsoft Corporation | Platform for data services across disparate application frameworks |
WO2007030796A2 (en) * | 2005-09-09 | 2007-03-15 | Salesforce.Com, Inc. | Systems and methods for exporting, publishing, browsing and installing on-demand applications in a multi-tenant database environment |
US7765187B2 (en) * | 2005-11-29 | 2010-07-27 | Emc Corporation | Replication of a consistency group of data storage objects from servers in a data network |
JP5643292B2 (ja) * | 2009-04-20 | 2014-12-17 | インターデイジタル パテント ホールディングス インコーポレイテッド | 複数のドメインのシステムおよびドメイン所有権 |
CN102170457A (zh) | 2010-02-26 | 2011-08-31 | 国际商业机器公司 | 向应用的多租户提供服务的方法和装置 |
US8775626B2 (en) | 2010-09-17 | 2014-07-08 | Microsoft Corporation | Using templates to configure cloud resources |
KR20120045586A (ko) | 2010-10-29 | 2012-05-09 | 한국전자통신연구원 | 다중 테넌트용 SaaS 애플리케이션 설정 장치 및 방법 |
US8560699B1 (en) * | 2010-12-28 | 2013-10-15 | Amazon Technologies, Inc. | Enforceable launch configurations |
US8826222B2 (en) | 2011-08-02 | 2014-09-02 | International Business Machines Corporation | Pre-merge conflict avoidance |
US10282196B2 (en) * | 2012-04-06 | 2019-05-07 | Oracle International Corporation | System and method for moving enterprise software application components across environments |
US20130339400A1 (en) * | 2012-05-29 | 2013-12-19 | Salesforce.Com, Inc. | System and method for mobile multi-tenant database system management |
US8813225B1 (en) * | 2012-06-15 | 2014-08-19 | Amazon Technologies, Inc. | Provider-arbitrated mandatory access control policies in cloud computing environments |
US20140082470A1 (en) * | 2012-09-19 | 2014-03-20 | 4Clicks Solutions, LLC | Spreadtree hierarchy system for spreadsheets and related methods |
JP6342110B2 (ja) * | 2012-11-27 | 2018-06-13 | キヤノンマーケティングジャパン株式会社 | マルチテナント型サービスシステム、情報処理装置、制御方法、及びプログラム |
US9330131B2 (en) * | 2012-11-28 | 2016-05-03 | The Mathworks, Inc. | Conflict markup tolerant input stream |
US9479563B2 (en) * | 2012-12-13 | 2016-10-25 | Salesforce.Com, Inc. | Adaptive configuration management databases |
-
2015
- 2015-06-23 KR KR1020177001179A patent/KR20170020866A/ko not_active Application Discontinuation
- 2015-06-23 EP EP15736725.1A patent/EP3158447B1/en active Active
- 2015-06-23 US US14/747,675 patent/US10009225B2/en active Active
- 2015-06-23 JP JP2016575005A patent/JP6491243B2/ja active Active
- 2015-06-23 CN CN201580032354.7A patent/CN106462833B/zh active Active
- 2015-06-23 WO PCT/US2015/037265 patent/WO2015200375A1/en active Application Filing
- 2015-06-23 KR KR1020227038266A patent/KR102663126B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101405729A (zh) * | 2006-03-23 | 2009-04-08 | 微软公司 | 具有增量式视图维护的映射体系结构 |
CN102016834A (zh) * | 2008-04-28 | 2011-04-13 | 微软公司 | 冲突解决 |
CN102834822A (zh) * | 2010-04-12 | 2012-12-19 | 微软公司 | 由虚拟机共享的群集的快速-完整备份 |
Also Published As
Publication number | Publication date |
---|---|
CN106462833A (zh) | 2017-02-22 |
EP3158447A1 (en) | 2017-04-26 |
KR102663126B1 (ko) | 2024-05-07 |
WO2015200375A1 (en) | 2015-12-30 |
JP2017519307A (ja) | 2017-07-13 |
JP6491243B2 (ja) | 2019-03-27 |
KR20220154243A (ko) | 2022-11-21 |
KR20170020866A (ko) | 2017-02-24 |
EP3158447B1 (en) | 2022-03-16 |
US20160020949A1 (en) | 2016-01-21 |
US10009225B2 (en) | 2018-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106462833B (zh) | 用于在多租户应用服务器环境中支持多个分区编辑会话的系统和方法 | |
CN106471471B (zh) | 用于在多租户应用服务器环境中支持分区的系统和方法 | |
CN106575242B (zh) | 用于在多租户应用服务器环境中支持命名空间的系统和方法 | |
CN106471472B (zh) | 用于多租户应用服务器环境中的分区迁移的系统和方法 | |
US9967324B2 (en) | System and method for providing data sources for use in a multitenant application server environment | |
US9747137B2 (en) | System and method for providing a partition file system in a multitenant application server environment | |
US10193754B2 (en) | System and method for supporting connectors in a multitenant application server environment | |
US9928111B2 (en) | System and method for configuration tagging in a multitenant application server environment | |
KR102271265B1 (ko) | 어플리케이션 서버, 클라우드 또는 다른 환경에서 멀티 테넌시를 지원하기 위한 시스템 및 방법 | |
US9977681B2 (en) | System and method for partition startup/shutdown in a multitenant application server environment | |
CN106462470B (zh) | 用于在多租户应用服务器环境中的可移植分区的系统和方法 | |
US9971671B2 (en) | System and method for dynamic debugging in a multitenant application server environment | |
US10452387B2 (en) | System and method for partition-scoped patching in an application server environment | |
WO2016118844A1 (en) | Systems, methods, and computer medium to enhance redeployment of web applications after initial deployment | |
US11138017B2 (en) | System and method for partition administrative targeting in an application server environment | |
Mistry et al. | Microsoft SQL Server 2012 Management and Administration | |
CN107533485B (zh) | 用于对从多租户中间件应用调用的os程序进行多租户执行的系统和方法 | |
Orozco | Oracle Enterprise Manager Ops Center Cloud Infrastructure API and CLI Reference Guide, 12c Release 2 (12.2. 0.0. 0) E38530-01 |
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 |