动态读取云平台配置文件的方法及装置
技术领域
本发明涉及Java和数据库技术领域,尤其涉及一种动态读取云平台配置文件的方法及装置。
背景技术
Cloud Foundry是VMware推出的业界第一个开源PaaS云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。同时,它本身是一个基于Ruby on Rails的由多个相对独立的子系统通过消息机制组成的分布式系统,使平台在各层级都可水平扩展,既能在大型数据中心里运行,也能运行在一台桌面电脑中,二者使用相同的代码库。作为新一代云应用平台,Cloud Foundry专为私有云计算环境、企业级数据中心和公有云服务提供商所打造。Cloud Foundry云平台可以简化现代应用程序的开发、交付和运行过程,在面对多种公有云和私有云选择、符合业界标准的高效开发框架以及应用基础设施服务时,可以显著提高开发者在云环境中部署和运行应用程序的能力。
App在运行的时候通常需要依赖外部的一些服务,比如数据库服务、缓存服务、短信邮件服务等等。Service Broker就是App接入服务的一种方式。比如我们要接入MySQL服务,只要实现Cloud Foundry要求的Service Broker接口即可。Service Broker就是实现了Cloud Foundry规定的一组Rest API的服务端程序,它作用于Cloud Foundry与服务的资源池中间,Cloud Foundry通过调用Service Broker上这些规定的Rest API对服务资源池进行管理,而Service Broker实际执行这些资源池管理操作。
创建Service Broker接口的数据信息存放在Cloud Foundry的配置文件settings.yml中,而yml文件是一种对格式有严格要求的文件类型,因此在编写配置文件时,极易出现格式错误等问题,且当服务信息数据量过多或经常更换时,手动编写配置文件的方式显然不再适用,因此,需要一种灵活的方式,解决上述问题。
发明内容
本发明针对目前需求以及现有技术发展的不足之处,提供一种动态读取云平台配置文件的方法及装置,本发明采用Java和数据库相结合的方式,完成对Cloud Foundry配置文件的读取,实现Service Broker接口的重建,可以有效的解决yml文件易出错等问题。
为了实现上述目的,本发明采用以下的技术方案:
一种动态读取云平台配置文件的方法,所述云平台指Cloud Foundry,包括以下步骤:
将Cloud Foundry配置文件中的数据保持原有的格式存入数据库;
重建Cloud Foundry提供的接口;
通过调用Cloud Foundry提供的接口实现动态读取Cloud Foundry配置文件。
优选地,所述配置文件指yml类型配置文件,包括Cloud Foundry提供的ServiceBroker接口的创建信息。
优选地,所述原有的格式包括list格式和map格式。
优选地,所述重建Cloud Foundry提供的接口是指通过Java技术,重写CloudFoundry提供的Service Broker接口中的方法。
优选地,重建Cloud Foundry提供的接口,包括:
读取数据库中的数据;
根据Cloud Foundry提供的接口对数据格式的要求,对数据库中的数据格式进行重组。
优选地,所述通过调用Cloud Foundry提供的接口实现动态读取Cloud Foundry配置文件中的数据是指通过调用重建的Cloud Foundry提供的Service Broker接口,实现动态读取Cloud Foundry配置文件。
本发明还提供了基于上述的动态读取云平台配置文件的方法的动态读取云平台配置文件的装置,包括:
存入模块,用于将Cloud Foundry配置文件中的数据保持原有的格式存入数据库;
重建模块,用于重建Cloud Foundry提供的接口;
动态读取模块,用于通过调用Cloud Foundry提供的接口实现动态读取CloudFoundry配置文件。
优选地,所述重建模块,进一步包括:
读取模块,用于读取数据库中的数据;
重组模块,用于根据Cloud Foundry提供的接口对数据格式的要求,对数据库中的数据格式进行重组。
本发明的有益效果:
本发明提供一种动态读取Cloud Foundry配置文件的方法及装置,通过Java和数据库技术完成对Cloud Foundry的配置文件参数的读取,并成功完成Service Broker接口的重建。通过本发明的方法重建Cloud Foundry提供的Service Broker接口,完成对CloudFoundry配置文件的动态读取,完成Service Broker接口的重建。本发明能很好的解决Cloud Foundry的配置文件无法动态录入的问题,通过数据库技术,能灵活的对配置参数进行读取,从而应对大数据规模的配置参数,且不用担心yml文件最容易出现的格式不正确等问题。因此,极具推广价值。
附图说明
图1为本发明动态读取云平台配置文件的方法的流程示意图之一。
图2为本发明动态读取云平台配置文件的装置的结构示意图之一。
图3为本发明动态读取云平台配置文件的方法的流程示意图之二。
图4为本发明动态读取云平台配置文件的装置的结构示意图之二。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于理解,对本发明中出现的部分名词作以下解释说明:
Cloud Foundry:是VMware推出的业界第一个开源PaaS云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。
PaaS:是Platform as a Service的缩写,意思是平台即服务。 把服务器平台作为一种服务提供的商业模式。通过网络进行程序提供的服务称之为SaaS(Software as aService),而云计算时代相应的服务器平台或者开发环境作为服务进行提供就成为了PaaS。所谓PaaS实际上是指将软件研发的平台作为一种服务,以SaaS的模式提交给用户。因此,PaaS也是SaaS模式的一种应用。但是,PaaS的出现可以加快SaaS的发展,尤其是加快SaaS应用的开发速度。在2007年国内外SaaS厂商先后推出自己的PaaS平台。
Service Broker:是实现了Cloud Foundry规定的一组Rest API的服务端程序,它作用于Cloud Foundry与服务的资源池中间,Cloud Foundry通过调用Service Broker上这些规定的Rest API对服务资源池进行管理,而Service Broker实际执行这些资源池管理操作。
Rest API:将传统的{增,删,改,查}数据库的条件写在了{POST, DELETE,PUT,GET}里,URL不用设计,可以直接生成。
URL:统一资源定位符,是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述:
实施例一:
如图1所示,本发明的一种动态读取云平台配置文件的方法,包括以下步骤:
步骤S101:将Cloud Foundry配置文件settings.yml中的数据保持原有的格式存入数据库。
步骤S102:读取数据库中的数据。
步骤S103:根据Cloud Foundry提供的接口对数据格式的要求,对数据库中的数据格式进行重组。
步骤S104:通过调用重建的Cloud Foundry提供的Service Broker接口,实现动态读取Cloud Foundry配置文件。
值得说明的是,云平台指Cloud Foundry,配置文件指yml类型配置文件,配置文件中存有Cloud Foundry提供的Service Broker接口的创建信息,数据原有的格式包括list格式和map格式。
实施例二:
如图2所示,本发明的一种动态读取云平台配置文件的装置,包括:存入模块201、重建模块中的读取模块202、重建模块中的重组模块203和动态读取模块204,存入模块201依次连接重建模块中的读取模块202、重建模块中的重组模块203和动态读取模块204。
存入模块201,用于将Cloud Foundry配置文件中的数据保持原有的格式存入数据库;重建模块中的读取模块202,用于读取数据库中的数据;重建模块中的重组模块203,用于根据Cloud Foundry提供的接口对数据格式的要求,对数据库中的数据格式进行重组;动态读取模块204,用于通过调用重建的Cloud Foundry提供的Service Broker接口,实现动态读取Cloud Foundry配置文件。
实施例三:
如图3所示,本发明的另一种动态读取云平台配置文件的方法,包括以下步骤:
步骤S301:将Cloud Foundry配置文件中的数据保持原有的格式存入数据库。
步骤S302:重建Cloud Foundry提供的接口。
步骤S303:通过调用Cloud Foundry提供的接口实现动态读取Cloud Foundry配置文件。
值得说明的是,云平台指Cloud Foundry,配置文件指yml类型配置文件,配置文件中存有Cloud Foundry提供的Service Broker接口的创建信息,数据原有的格式包括list格式和map格式。另外,重建Cloud Foundry提供的接口是指通过Java技术,重写CloudFoundry提供的Service Broker接口中的方法。
实施例四:
如图4所示,本发明的另一种动态读取云平台配置文件的装置,包括:存入模块401、重建模块402和动态读取模块403,存入模块401依次连接重建模块402和动态读取模块403。
存入模块401,用于将Cloud Foundry配置文件中的数据保持原有的格式存入数据库;重建模块402,用于重建Cloud Foundry提供的接口;动态读取模块403,用于通过调用Cloud Foundry提供的接口实现动态读取Cloud Foundry配置文件。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。而这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上所示仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。