CN108701035B - 应用属性的管理 - Google Patents

应用属性的管理 Download PDF

Info

Publication number
CN108701035B
CN108701035B CN201680081236.XA CN201680081236A CN108701035B CN 108701035 B CN108701035 B CN 108701035B CN 201680081236 A CN201680081236 A CN 201680081236A CN 108701035 B CN108701035 B CN 108701035B
Authority
CN
China
Prior art keywords
application
properties
observable
computer
attribute
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
Application number
CN201680081236.XA
Other languages
English (en)
Other versions
CN108701035A (zh
Inventor
米哈伊·马泰
马克·戴维斯
罗伯特·麦克菲利
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.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Enterprise Development LP
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 Hewlett Packard Enterprise Development LP filed Critical Hewlett Packard Enterprise Development LP
Publication of CN108701035A publication Critical patent/CN108701035A/zh
Application granted granted Critical
Publication of CN108701035B publication Critical patent/CN108701035B/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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3079Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by reporting only the changes of the monitored data
    • 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/44Arrangements for executing specific programs
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

在示例中,***可以包括处理资源和存储器资源。存储器资源可以存储应用属性。如果从应用接收到对于应用属性的请求,则处理资源可以提供应用属性。在示例中,应用属性包括应用的可观测应用属性和环境属性中的至少一个。

Description

应用属性的管理
背景技术
计算***可以运行应用,所述应用具有用于每个应用的各种配置。除了其他类似应用配置结果之外,应用的配置可以影响服务器处理、操作***设置和在用户交互期间的应用。
附图说明
在下面的具体实施方式中并且关于附图描述了某些示例,其中:
图1是用于应用属性的管理的***的示例;
图2是用于应用属性的管理的示例方法的流程图;
图3是包括当由处理器执行时管理应用属性的代码的示例非暂时性计算机可读介质的框图;
图4是多个服务器管理用于多个客户端的应用的示例示意图;
图5是多个服务器管理应用属性并且向客户端提供观测器更新器的示例示意图;以及
图6是用于为应用管理到同步的高速缓存的应用属性的属性管理服务框架的示例示意图。
具体实施方式
可以将应用属性存储在为应用本地存储的属性文件或配置文件中。也可以以用于应用的每个实例的单独的配置文件或以其他零碎配置存储方法来存储应用属性。诸如Spring Cloud-Config之类的配置服务可以作为单独的应用运行并且从诸如git储存库之类的用于软件开发的版本控制***提供属性。尽管这些服务中的一些包括集中式应用属性贮存器的使用,但先前的方法不可以提供可观测应用属性或环境属性聚合。
如在本文所描述的,集中式应用属性贮存器的使用可以减少组件的数量。组件中的该减少可以使改变在一个位置的配置和具有全局地感受到的效应的任务容易。通过使用集中式属性管理器的本技术,为***全局地改变配置可以涉及较少的出错机会。现公开的技术中可观测应用属性和环境属性聚合的使用允许在不进行重启的情况下更新应用配置。可以实现该能力,这是因为来自中心属性管理器的这些属性的可用性在不经由依赖注入框架传递通过***的情况下允许应用改变。
现公开的技术也有助于避免管理开发环境共同的错误。在示例中,现公开的技术避免使用多个配置文件和数个版本的配置文件。使用多个配置文件或数个版本的配置文件会造成问题,例如,如果开发者创建了不准备用于生产使用的应用配置的开发版本。结果得到的开发版本配置文件可以被设备或***或应用使用不正确的配置来不正确地实施。
本技术可以用于管理由分布式配置服务利用冗余服务而不是通过传统的数据库或文件***方式备份的应用属性。在示例中,配置服务也可以是用于分布式***的同步服务或命名服务。在示例中,分布式配置服务可以包括来自Apache的Apache ZooKeeperTM。使用用于管理应用属性的分布式配置服务可以包括为每个应用定义用于属性管理的环境。使用分布式配置服务还可以包括通过向应用推送更新或者通过向应用提供更新器来更新应用的能力。更新器可以监视来自配置服务的配置以进行更新。在示例中,更新器可以是在属性改变被作出并且被检测到时观测到在配置服务中检测到的属性改变并且对其有反应的JavaTM应用。
图1是用于应用属性的管理的***100的示例。***100可以包括存储属性依赖通知的存储器资源,该属性依赖通知可以被提供给应用。属性依赖通知可以向应用警告由应用作出的对于应用属性的请求应当指向***100。
***100例如可以是服务器、膝上型计算机、台式计算机、超级本、平板式计算机、移动设备,等等。如以上讨论的,***100可以包括被配置为执行存储的指令的诸如中央处理单元(CPU)之类的处理资源102,以及存储可由处理资源102执行的指令的存储器资源104。处理资源102可以通过总线耦合到存储器资源104。处理资源102可以是单核处理器、多核处理器、计算集群或者任何数量的其他配置。此外,***100可以包括多于一个处理资源102。处理资源102也可以通过总线经由存储阵列接口连接到外部存储阵列。存储阵列可以是外部***或托管其自己的来宾虚拟机或与***100的虚拟机交互的***的阵列。
***100也可以包括存贮设备。存贮设备可以是非易失性存贮设备,诸如硬盘驱动器、光驱、拇指驱动器、驱动阵列或其任何组合。存储器资源104可以包括随机存取存储器(RAM)、闪速存储器或者任何其它适当的存储器***。例如,存储器资源104可以包括随机存取存储器(DRAM)。存储器资源104可以包括环境命名空间106。环境命名空间106可以包括应用于应用的执行上下文的属性。
环境命名空间106可以包括应用命名空间108,应用命名空间108存储和允许可应用于应用的执行上下文的属性的组织。在示例中,应用命名空间108可以包括应用配置信息,应用配置信息包括操作***设置、网络设置或者其他类似的配置。处理资源102可以响应于来自应用的对于应用命名空间108的请求来提供应用命名空间108。无论应用运行于本地***100上还是远程设备上,可以从单独的设备或从托管应用的任何联网的或通信耦合的实例接收所述请求。应用命名空间108可以包括应用的可观测应用属性110和不可观测应用属性112中的至少一个。如在本文所使用的,可观测应用属性110可以是可由任何应用或程序通过对应用命名空间108的访问而观测到或访问到的属性。不可观测应用属性112可以是不能由任何应用或程序通过对应用命名空间108的访问而观测到或访问到的属性。
存储在应用命名空间108中的应用属性可以全部本质上是有关环境的。在示例中,应用属性每个可以均特定于给定环境命名空间。如上所指出的,每个应用属性可以是可观测的或不可观测的。应用属性的存在以及应用请求应用命名空间中的特定应用属性允许应用属性管理器向客户端通知属性状态的改变。在这里示出的框架允许多个客户端对应用属性的可访问性和存储。存储在应用命名空间108内的每个属性可以对于多个客户端设备通过多个配置被同时访问并且通过多个***被更新。在这里示出的应用属性存储框架促进用于应用属性管理的框架中的观测器模式。
在示例中,属性管理服务可以向客户端推送关于可观测应用属性110或不可观测应用属性112的属性状态的改变的通知。获取特定属性可以增加客户端设备的便利,该客户端设备可以不管理它们自己的应用属性。在该示例中,依赖属性管理***的这些应用可以实施***,该***在不使用对于改变的正常轮询、应用生成的属性文件或者其他类似方案的情况下,对那些状态改变作出反应。
图1的框图不意图指示计算设备将包括图1中示出的所有组件。此外,取决于特定实施方式的细节,***100可以包括在图1中没有示出的任何数量的附加的组件。
图2是用于应用属性的管理的示例方法200的流程图。方法200从框202开始。
在框202,存储器资源存储应用属性。应用属性可以包括应用的可观测应用属性和环境属性中的至少一个。应用的环境属性可以应用于每个运行应用的实例的多个设备的集群。如果存储器资源存储要被提供给应用的属性依赖通知,则应用可以使用属性依赖通知来识别和保存提供应用属性的存储器资源的位置。在示例中,属性依赖通知引导应用在每一次需要应用属性时从存储器资源请求应用属性。在示例中,一旦启动应用,就可以从存储器资源请求指示应用的配置的应用属性。在示例中,属性依赖通知可以包括将应用引导到可以访问到应用属性的存储器资源的互联网协议地址。
在框204,如果从应用接收到对于应用属性的请求,则处理资源提供应用属性。在示例中,存储器资源可以存储观测器更新器。处理资源可以向应用提供观测器更新器。在示例中,当从应用接收到对于应用属性的请求时,可以由处理资源来提供观测器更新器。当观测器更新器到达应用时,观测器更新器可以允许应用实施观测器以对存储在存储器资源中的应用属性的改变作出反应。观测器可以是监控功能,该监控功能可以针对应用属性的更新,连续地检查存储器资源的状态。在示例中,用于存储器资源和处理器的基础设施是可以把应用属性存储在将由应用的多个不同实例读取的节点中的分布式配置服务、同步服务以及命名登记。
图3是包括当由处理器执行时管理应用属性的代码的示例非暂时性计算机可读介质300的框图。可以由处理器通过***总线来访问计算机可读介质300。在一些示例中,代码可以引导处理器执行如参考图2所描述的当前方法的步骤。相同附图标记的项如图1中所描述。
计算机可读介质300可以包括在计算机可读介质300中存储应用属性的指令302。在示例中,应用属性可以包括应用的可观测应用属性和环境属性中的至少一个。计算机可读介质300还可以包括如果对计算机可读介质作出对于应用属性的请求则向应用提供应用属性的指令304。
在示例中,计算机可读介质存储观测器更新器,其中如果从应用接收到对于应用属性的请求,则处理器向应用提供观测器更新器。在该示例中,一旦向应用发送观测器更新器,观测器更新器就可以帮助应用实施观测器。观测器可以对存储在计算机可读介质中的应用属性的改变作出反应。
在示例中,计算机可读介质和处理器可以存储用于分布式配置服务、同步服务以及命名登记的基础设施。基础设施可以用于将应用属性存储在可以稍后由应用的多个不同实例读取的节点中。在示例中,由观测器发起对包含应用属性的节点的读取。观测器更新器可以包括应用可以实施以检查应用属性节点以用于对应用属性进行更新的指令。
图3的框图并不意图指示计算机可读介质300将包括图3中示出的组件或模块。此外,取决于在本文公开的应用属性的管理的详情,可以将任何数量的附加的组件包括在计算机可读介质300内。
图4是多个服务器管理用于多个客户端的应用的示意图400。相同附图标记的项在这里并且如图1中所描述。可以在服务器402侧实施在本文公开的技术。然而,在示例中,技术可以涉及跨多个服务器402和客户端404的实施方式。每个客户端404可以是执行应用406的设备或虚拟机。应用406可以包括软件、操作***、网络逻辑或者其他类似的实施方式。在示例中,应用406可以以JavaTM被编写并且可以用于在多个组件中管理属性。在示例中,应用406可以包括为包括表述性状态转移(REST)应用程序接口(API)、拓扑中的风暴集群的各种数字位置并且为其他位置被管理的组件或设置。可以从服务器402中的应用属性管理器408执行应用406的属性的管理。
在示例中,当由应用属性管理器408管理应用属性时,每个应用406可以采用至少两个环境属性。在示例中,这两个属性可以将关于开发环境和关于地址的信息存储在其中存储和定义环境属性的集群上。在其中Apache ZooKeeperTM实施这些属性的示例中,属性可以分别被称为PS_ENVIRONMENT属性和PS_ZOOKEEPER_QUORU M。当定义应用406的开发环境属性和应用属性的地址时,应用406可以使用属***级别来访问应用属性406。应用属性管理器408也可以在应用406中实施观测器模式,因此消费应用406可以添加将对在应用属性管理器408的属性改变作出反应的观测器。
服务器A(402)可以存储应用属性管理器408,一旦应用406请求应用属性,客户端1–3(404)每个就引用应用属性管理器408。一旦客户端404中的任一个作出初始请求,服务器A(402)就可以从应用属性管理器408提供依赖通知410。可以向客户端1-3(404)中的每一个提供依赖通知。依赖通知可以被应用406接收并且向应用406提供通知,该通知为:如果应用406请求应用属性,则应用406可以从服务器A(402),并且更具体地从服务器A(402)的应用属性管理器408请求属性。
消费依赖通知的应用406在应用406的属***模块上添加依赖。当应用属性在服务器A(402)中改变时,可以由应用406检测到这些改变,应用406可以在应用在客户端404上被实施时更新应用406的属性。在示例中,客户端1(404)、客户端2(404)和客户端3(404)中的每一个应用每个均可以查询服务器A(402)的应用属性管理器408。
如果至服务器A(402)的通信连接丢失功能,客户端1-3(404)可以从服务器B(402)请求应用属性管理。服务器B(402)的应用属性管理器408可以包括与在服务器A(402)的断开连接之前的服务器A(402)或者与在该断开连接之前最近已经更新了其应用属性的客户端404同步的属性。一旦客户端404从服务器B(402)请求应用属性,应用属性管理器408就可以向客户端1-3(404)提供依赖通知410。来自服务器B(402)的依赖通知410可以更新请求和接收依赖信息的每个客户端404中的依赖信息。
在示例中,依赖通知410也包括地址标识符,诸如用于服务器提供依赖通知的统一资源定位符。在示例中,不提供服务器标识,而可以提供用于服务器组或云的集群标识以指示位置,使用应用406的客户端404可以请求应用属性。
图5是多个服务器502管理应用属性并且向客户端404提供观测器更新器的示意图500。相同附图标记的项如图1中和图4中所描述。
服务器502可以包括存储可被发送给客户端404的观测器更新器506的应用属性管理器504。根据请求,服务器502可以通过应用属性管理器504向请求客户端404提供观测器更新器506。如在图5中所描绘的,客户端1(404)和客户端2(404)两者都可以从服务器502访问应用属性。实际上,用于每个应用406的应用属性的集中式管理允许仅仅在应用属性管理器504中作出改变来接近即时地更新在每个应用406中的应用属性的配置。在示例中,可以将观测器更新器506发送给应用406以允许应用406对观测器的访问。观测器可以在应用属性管理器408上监视可以影响应用406的应用属性的改变。通过使用观测器,属性一经历改变,应用就可以从应用属性管理器504访问属性。在示例中,观测器可以访问ApacheZooKeeperTM基础设施以获取更新的应用属性。
在示例中,如果应用对日志级别的改变作出反应,则观测器可以监视应用属性管理器504中“rootLogger.level”应用属性的任何改变。并非进行应用中的日志级别的硬编码,诸如依赖日志级别实施示例的支持人员之类的用户可以调整分布式生产环境中的日志。
在示例中,应用属性管理器504可以平衡部署环境的现有基础设施以管理应用406。例如,如果Apache ZooKeeperTM基础设施存在于部署环境中,则服务器可以使用由Apache ZooKeeperTM提供的功能和结构以管理应用属性。在其中用于应用管理的基础设施已经存在的示例中,该开发基础设施的使用可以帮助减少运行服务器502上的额外的应用以存储应用属性的计算花费。例如,在这里公开的技术可以帮助避免信赖在服务器上运行的额外的应用的部署,例如,Spring-Cloud部署。
图6是用于为应用管理到同步的高速缓存的应用属性的属性管理服务框架的示例示意图。图6的框架600可以用于实施图2中描述的方法和在图4和5中示出的技术。
框架600服务于属性已经作为应用属性602被远程地存储的应用406。应用属性可以包括应用配置信息,包括操作***设置、网络设置或者其他类似的配置。应用属性管理器408可以确保应用包括最新的应用属性602,并且也确保远程存储的应用属性602被更新以反映对那些应用属性602作出的改变。可以通过操作应用406的用户手动地输入或用于属性调整的其他适当的方式来进行对应用属性的改变。
应用406可以包括包含或指向同步的高速缓存608的档案文件位置604。档案文件位置604可以存储传入的或已经被改变的应用属性并且将向应用属性管理器408发送更新。在示例中,同步的高速缓存606与应用属性管理器同步以从应用属性管理器408接收最新的属性。在示例中,应用406更新应用属性602并且该更新被存储在同步的高速缓存606中。当同步的高速缓存606与应用属性管理器同步时,同步的高速缓存将提供那些更新,使得它们可以被应用于远程存储的应用属性602。
如上所述,应用的同步的高速缓存606也可以接收由应用属性管理器408提供的应用属性602。在示例中,已经在单个远程位置中修改了应用属性602,但仅仅对该单个远程位置中的应用属性作出该修改。在该示例中,应用属性602可以被提供给整合和递送应用608,该整合和递送应用608可以向应用属性管理器408连续地提供最近的应用属性602。在最初或根据更新而提供该应用属性602可以导致整合和递送应用608向应用属性管理器408提供载荷610。该载荷610可以变化并且可以被整合和递送应用管理,使得最近的应用属性602实例可以被选择并且被提供给应用属性管理器408。
各个应用属性602的方向可以被应用属性408处理并且被属***管理用户接口(UI)612引导。属***管理UI 612可以将其本身暴露给用户用于总体上操纵应用属性602,或者也对于应用406的本地版本操纵应用属性。在示例中,应用属性管理器408也可以向属***管理UI 612提供应用属性602,使得属***管理UI 612可以修改或读取适当且更新的应用属性602。在示例中,应用属性602的数据或对应用属性602的修改可以从属***管理UI向应用属性管理器408传播或以其他方向传播。使用该框架,应用属性管理器408可以根据在属***管理UI 612提供的输入来管理应用属性408并且保持通过同步的高速缓存606向应用406提供的更新的应用属性。
尽管本技术可易受到各种修改和替换形式,已经通过示例示出了以上讨论的示例。应当理解,技术并不意图受限于在本文公开的特定示例。实际上,本技术包括落入所附权利要求的范围的所有替换方式、修改和等同物。

Claims (17)

1.一种用于管理应用属性的***,所述***包括:
其中存储有所述应用属性的存储器资源,其中,所述应用属性包括应用的多个可观测应用属性和环境属性,其中所述环境属性指定所述应用属性被存储和定义的位置,以及其中所述多个可观测应用属性定义所述应用的配置;
处理资源;以及
被耦合至所述处理资源的非暂时性计算机可读介质,所述非暂时性计算机可读介质其中存储有指令,当由所述处理资源执行时所述指令使得所述处理资源:
通过向所述应用提供指定所述***的地址标识符的依赖通知,促进由所述应用对所述多个可观测应用属性的第一可观测应用属性的获取,以及
通过允许所述应用添加针对所述多个可观测应用属性中的第二可观测应用属性的观测器更新器,促进响应于对于所述第二可观测应用属性的改变来由所述应用做出反应,所述观测器更新器响应于所述改变来向所述应用推送通知。
2.根据权利要求1所述的***,其中,所述应用的所述环境属性应用于各自运行所述应用的实例的多个设备的集群。
3.根据权利要求1所述的***,其中,所述依赖通知包括互联网协议地址以允许所述应用对所述存储器资源寻址。
4.根据权利要求1所述的***,其中,所述存储器资源和处理资源的基础设施包括分布式配置服务、同步服务和命名登记,以将所述应用属性存储在由所述应用的不同实例读取的节点中。
5.根据权利要求1所述的***,其中所述地址标识符包括统一资源定位符。
6.根据权利要求1所述的***,其中所述第二可观测应用属性包括日志级别,以及其中对于所述日志级别的改变使得分布式生产环境中的所述应用的每个实例调整由所述实例执行的日志。
7.一种用于管理应用属性的方法,包括:
将所述应用属性存储在计算机***的存储器资源中,其中,所述应用属性包括应用的多个可观测应用属性和环境属性,其中所述环境属性指定所述应用属性被存储和定义的位置,以及其中所述多个可观测应用属性定义所述应用的配置;
通过向所述应用提供指定所述计算机***的地址标识符的依赖通知,由所述计算机***的处理资源促进由所述应用对所述多个可观测应用属性的第一可观测应用属性的获取;以及
通过允许所述应用添加针对所述多个可观测应用属性中的第二可观测应用属性的观测器更新器,由所述处理资源促进响应于对于所述第二可观测应用属性的改变来由所述应用做出反应,所述观测器更新器响应于所述改变来向所述应用推送通知。
8.根据权利要求7所述的方法,其中,所述应用的所述环境属性应用于各自运行所述应用的实例的多个设备的集群。
9.根据权利要求7所述的方法,其中,所述依赖通知包括互联网协议地址以允许所述应用对所述存储器资源寻址。
10.根据权利要求7所述的方法,其中,所述存储器资源和处理器资源的基础设施包括将所述应用属性存储在将由所述应用的多个不同实例读取的所述计算机***中的分布式配置服务、同步服务和命名登记。
11.根据权利要求7所述的方法,其中所述地址标识符包括统一资源定位符。
12.根据权利要求7所述的方法,其中所述第二可观测应用属性包括日志级别,以及其中对于所述日志级别的改变使得分布式生产环境中的所述应用的每个实例调整由所述实例执行的日志。
13.一种有形非暂时性计算机可读介质,包括当由计算机***的处理器执行时引导所述处理器管理应用属性的指令,所述指令引导所述处理器:
将所述应用属性存储在计算机***的存储器资源中,其中所述应用属性包括应用的多个可观测应用属性和环境属性,其中所述环境属性指定所述应用属性被存储和定义的位置,以及其中所述多个可观测应用属性定义所述应用的配置;
通过向所述应用提供指定所述计算机***的地址标识符的依赖通知,促进由所述应用对所述多个可观测应用属性的第一可观测应用属性的获取;以及
通过允许所述应用添加针对所述多个可观测应用属性中的第二可观测应用属性的观测器更新器,促进响应于对于所述第二可观测应用属性的改变来由所述应用做出反应,所述观测器更新器响应于所述改变来向所述应用推送通知。
14.根据权利要求13所述的计算机可读介质,其中,所述计算机可读介质和处理器的基础设施包括分布式配置服务、同步服务和命名登记以将所述应用属性存储在将由所述应用的不同实例读取的所述计算机***中。
15.根据权利要求13所述的计算机可读介质,其中所述依赖通知包括互联网协议地址以允许所述应用对所述存储器资源寻址。
16.根据权利要求13所述的计算机可读介质,其中所述地址标识符包括统一资源定位符。
17.根据权利要求13所述的计算机可读介质,其中所述第二可观测应用属性包括日志级别,以及其中对于所述日志级别的改变使得分布式生产环境中的所述应用的每个实例调整由所述实例执行的日志。
CN201680081236.XA 2016-01-07 2016-01-07 应用属性的管理 Active CN108701035B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2016/012464 WO2017119889A1 (en) 2016-01-07 2016-01-07 Management of application properties

Publications (2)

Publication Number Publication Date
CN108701035A CN108701035A (zh) 2018-10-23
CN108701035B true CN108701035B (zh) 2022-04-12

Family

ID=59273910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680081236.XA Active CN108701035B (zh) 2016-01-07 2016-01-07 应用属性的管理

Country Status (3)

Country Link
US (1) US10776134B2 (zh)
CN (1) CN108701035B (zh)
WO (1) WO2017119889A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10931517B2 (en) * 2017-07-31 2021-02-23 Vmware, Inc. Methods and systems that synchronize configuration of a clustered application
CN112379948A (zh) * 2020-12-02 2021-02-19 腾讯科技(深圳)有限公司 程序配置管理方法及装置、存储介质、电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104022894A (zh) * 2014-05-12 2014-09-03 东软熙康健康科技有限公司 集中管理应用配置参数的方法、配置应用参数的方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6029196A (en) * 1997-06-18 2000-02-22 Netscape Communications Corporation Automatic client configuration system
US6308212B1 (en) * 1998-05-29 2001-10-23 Hewlett-Packard Company Web user interface session and sharing of session environment information
CA2293765A1 (en) * 1999-12-23 2001-06-23 Solutioninc. Ltd. Internet access server
US7469278B2 (en) * 2000-01-21 2008-12-23 Scriptlogic Corporation Validation of portable computer type prior to configuration of a local run-time environment
US6986123B2 (en) * 2002-06-28 2006-01-10 Microsoft Corporation Extensible on-demand property system
US7464107B2 (en) * 2002-06-28 2008-12-09 Microsoft Corporation Property management mechanisms for properties in an on-demand property system
US20050004927A1 (en) * 2003-06-02 2005-01-06 Joel Singer Intelligent and automated system of collecting, processing, presenting and distributing real property data and information
US7822831B2 (en) * 2003-07-31 2010-10-26 International Business Machines Corporation Method, system and program product for preserving and restoring mobile device user settings
US20070005734A1 (en) * 2005-06-30 2007-01-04 Microsoft Corporation Generically extensible client application
US7734677B2 (en) * 2005-09-29 2010-06-08 International Business Machines Corporation Method, system and program product for dynamically integrating backend systems into a J2EE application server environment
US8321853B2 (en) * 2007-05-11 2012-11-27 Microsoft Corporation Type and property definition support for software
US20090249446A1 (en) * 2007-10-22 2009-10-01 Paul Thomas Jenkins Method and system for managing enterprise content
GB0802585D0 (en) * 2008-02-12 2008-03-19 Mtld Top Level Domain Ltd Determining a property of communication device
CN101420459B (zh) * 2008-12-05 2011-11-02 杭州华三通信技术有限公司 一种管理应用配置信息的方法、应用***和存储设备
US8214389B2 (en) * 2009-04-03 2012-07-03 International Business Machines Corporation Common architecture for administration of client side property settings in a distributed and heterogeneous environment
US8219791B2 (en) * 2009-08-03 2012-07-10 Dell Products L.P. BIOS field mapping
US9135283B2 (en) * 2009-10-07 2015-09-15 Amazon Technologies, Inc. Self-service configuration for data environment
US8799355B2 (en) * 2009-11-03 2014-08-05 Microsoft Corporation Client server application manager
US8438573B2 (en) * 2010-01-15 2013-05-07 Oracle International Corporation Dependency on a resource type
US8433727B2 (en) * 2010-06-22 2013-04-30 Red Hat Israel, Ltd. Method and apparatus for restricting access to writable properties at runtime
JP5760716B2 (ja) * 2011-03-30 2015-08-12 富士通株式会社 アプリ提供システム、アプリ提供方法、情報処理装置及び情報処理プログラム
US9081579B2 (en) 2011-04-11 2015-07-14 Mobilous Inc. System and method for mobile application development
US8762430B1 (en) * 2011-08-18 2014-06-24 Zynga Inc. Key subscription for distributed systems
US8726264B1 (en) * 2011-11-02 2014-05-13 Amazon Technologies, Inc. Architecture for incremental deployment
US9003141B2 (en) * 2011-11-14 2015-04-07 Ca, Inc. Enhanced software application platform
US9172608B2 (en) * 2012-02-07 2015-10-27 Cloudera, Inc. Centralized configuration and monitoring of a distributed computing cluster
US8595799B2 (en) * 2012-04-18 2013-11-26 Hewlett-Packard Development Company, L.P. Access authorization
US10360188B2 (en) * 2012-07-27 2019-07-23 International Business Machines Corporation Dynamic property data integration framework
US20140280375A1 (en) * 2013-03-15 2014-09-18 Ryan Rawson Systems and methods for implementing distributed databases using many-core processors
US9460109B1 (en) * 2014-04-01 2016-10-04 Sprint Communications Company L.P. Centralized provisioning process leveraging network attached storage

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104022894A (zh) * 2014-05-12 2014-09-03 东软熙康健康科技有限公司 集中管理应用配置参数的方法、配置应用参数的方法

Also Published As

Publication number Publication date
CN108701035A (zh) 2018-10-23
US10776134B2 (en) 2020-09-15
WO2017119889A1 (en) 2017-07-13
US20190026129A1 (en) 2019-01-24

Similar Documents

Publication Publication Date Title
CN109120678B (zh) 用于分布式存储***的服务托管的方法和装置
US11635990B2 (en) Scalable centralized manager including examples of data pipeline deployment to an edge system
CN112753019A (zh) 按需代码执行***中执行环境的有效状态维持
US10069942B2 (en) Method and apparatus for changing configurations
US10833935B2 (en) Synchronizing network configuration in a multi-tenant network
US20130290952A1 (en) Copying Virtual Machine Templates To Cloud Regions
US8266301B2 (en) Deployment of asynchronous agentless agent functionality in clustered environments
US9602614B1 (en) Distributed caching cluster client configuration
CN109245908B (zh) 一种主从集群切换的方法和装置
EP3410293B1 (en) Systems and methods for continuous configuration deployment
US10050832B2 (en) Server clustering in mobile computing environment
CN112527520A (zh) 一种部署消息中间件的方法和装置
US20140310554A1 (en) System and method for graph based k-redundant resiliency for it cloud
CN112804289B (zh) 一种资源同步方法、装置、设备及存储介质
US20170257263A1 (en) Method and appartus to allow dynamic changes of a replica network configuration in distrubted systems
US10721335B2 (en) Remote procedure call using quorum state store
WO2013107170A1 (zh) 远程网管***及其业务操作方法
CN111666134A (zh) 一种分布式任务调度的方法和***
CN111338834B (zh) 数据存储方法和装置
CN115640110A (zh) 分布式云计算***调度方法和装置
CN108701035B (zh) 应用属性的管理
US9906604B2 (en) System and method for dynamic discovery of web services for a management console
CN115309417A (zh) 旧式***上的无应用程序中断的软件更新
CN108737485B (zh) 针对物联网资源的操作的方法及***
US9288178B2 (en) Inventory updating of an internet protocol (IP) alias within a highly available computing cluster

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant