Font Size: a A A

Design And Implementation Of EGO Configuration Management System

Posted on:2009-08-22Degree:MasterType:Thesis
Country:ChinaCandidate:X RongFull Text:PDF
GTID:2178360242980618Subject:Software engineering
Abstract/Summary:PDF Full Text Request
EGO is the grid computing software of Platform, and EGO-CMS is designed to manage the configuration information of EGO's SOA services.With the rapid development of internet technology, all kinds of high performance computers and various computation resources are spreaded in the internet. It enables the person who is confined at home to use the multiple message resources. In order to use all these network resources, the computer specialists make the unremitting effort to study the method to use the shared resource more effectively and more sufficiently. Grid computing is the technology which develops following on the rapid development of the internet technology. it is a new computing patten which specially aims at complex scientific computation. By using the internet, this computing patten organizes the computers at different geographical position as if they were a virtual super computer. Every computer is"the node", and the grid is made up of thousands of nodes. The computation is accomplished by the grid. Both Grid computing and SOA develop rapidly and interacts obviously, the grid becomes the platform of the SOA, and SOA becomes the consumer of the grid service. The grid system may be SOA itself, or may provide the services to build up SOA model of application level on it.Platform EGO is the first and only grid platform that will deliver the power of virtualization, automation and the sharing of all IT resources to every application type. It is the core of an open Enterprise Grid strategy that enables IT to allocate resources in real time for improved performance, organizational efficiency and accelerated results. Furthermore, Platform EGO offers a flexible, modular approach to allow for growth and expansion at a pace that suits business needs, so a single enterprise application can be deployed initially, and new applications added as needed. The results are dramatically improved ROI on Enterprise IT investments, lower IT costs, improved resource utilization, and a clear link to achieving strategic business objectives.EGO is composed of a lot of SOA services, and each service is made up of many function modules. EGO system configures the service according to the configuration. The service is available after EGO master finished configurating the service. Because of no rule about the format of the configuration file and the place where to store the file, the developers store the file at different places and use different formats to store the configuration. Because of the different formats and different places, EGO can't load the configuration easily, and the performance of EGO is affected fiercely. Because the configuration files are stored in different computers, EGO must know all computers'IP address and must connect with them in order to load the configuration files. With the development of EGO, the problem appears obviously. Because of the different data formats, EGO must have many different interfaces to load the configuration files. In addtion, the developers of EGO often compare the effects of using different versions of the same configuration configure the services, and choose which version of the configuration is suitable. In order to resolve the problem of loading configuration files of EGO, enable the developers manage the configuration conveniently and improve the performance of EGO, we must develop a software system to manage the configuration files.EGO-CMS is specially designed to manage the configuration files. EGO can call EGO-CMS to load the configuration and need not load it by itself, the developers can use the system to store, update and retrieve the configuration files.The functions of EGO includes: unify the data formats, manage the configuration files and their schema files according to their versions, retrieve the particular configuration file or schema file which the user wants to retrieve, list the version information of some configuration, list the names of all configuration files.The technical thread of developing EGO-CMS is parsing, shipping and storing XML file, using schema file to validate the XML file, retrieving particular XML file which the user wants to get. EGO-CMS is composed of three components: Service Interface, Configuration Manager and Backing Store. Service Interface: this component is the interface to the client, and is composed of a SOAP over HTTP engine. This layer will possibly perform some (de)serialization of SOAP messages into an internal format. Configuration Manager: this component accepts requests from the service interface, and either retrieves a configuration by name (and version) from the backing store, or validates a new/updated configuration, before saving it to the backing store. Essentially, it is responsible for mapping names to XML infosets, and for making sure that a configuration is syntactically valid. It will reference XML schemas either externally referenced, or managed within a schema catalog. Backing store section: this component merely provides a storage mechanism for the configuration manager. It is a XML database engine.The Service Interface should be implemented using an existing SOAP messaging stack. The current EGO Web Services Gateway uses gSOAP, so the EGO-CMS should any SOAP stack. Since the focus of the Service Interface is merely on SOAP over HTTP, with minimal XML requirements at this layer, the SAAJ interface as implemented in Sun's web services toolkit might be a suitable choice.Because the EGO-CMS chooses XML as the format of the configuration, so the system use Berkeley DB XML 2.2.13 to store the XML file. Using a container named confmetadata.dbxml as metadata container, the document node of the container named by the name of the service, and the content of the document node includes the latest version and time of storing the latest configuration, the latest version and time of storing the latest schema file. The system allocates two containers to every configuration, one is used to save the XML file and the other is used to save the schema file. The container named by the configuration and the document type (configuration file or the schema it refers to) of it, the document node of the container named by the version, and content of file is saved in the document node.The Configuration Manager can manipulate XML documents and schemas, and needs to interact with files and/or some other backing store such as a database engine. This layer's primary function is to validate the configuration and manage name of it to infoset mapping and meta-data. Since there is lots of freely available java based tooling for XML, it is suggested that this layer be in java. The EGO-CMS stores and retrieves configuration or schema by name and version of it. Xerces2 will be used for XML parsing and validation, and SAX2.0 will be used to validate the XML file refers to the schema file. Now the EGO-CMS has been given to Platform and is running well, so it is a very practical software system.
Keywords/Search Tags:Implementation
PDF Full Text Request
Related items