1 s0a Technology Concept
A service-oriented architecture (service-oriented Architecture,soa) is a component model that links the different functional units (services) of an application to well-defined interfaces and contracts between these services. Interfaces are defined in a neutral way, it should be independent of the hardware platform, operating system, and programming language that implements the service, so that the different services in the system build can be exchanged in a way that is applicable to everyone, and I can see that the ultimate core of the entire SOA implementation is service, The most basic element is service.
1.1 Key technologies for SOA.
1 WSDL (Web service definition Language), Web Services Description definition language. WSDL describes the basic content of the Web service's interfaces, message format conventions, and access addresses. The most basic description of the service is the interface description, the service consumer can only get the interface description to send the correct call message to the service. Communication protocols, access addresses, and message format conventions sent to the service are also information that must be obtained before accessing the service.
2 SOAP (Simple Object access Kyoto). Soap is a lightweight, simple, xml-based protocol designed to exchange structured and solidified information on the web, a message that can be used in conjunction with many of the current Internet protocols and approaches.
3 UDDI (Universal Description Discovery and integration), unified description of Discovery and integration, UDDI is a directory service that describes some types of information about a Web service, and UDDI defines how to find Web services ( and its WSDL file, which an enterprise can use to register and search for Web services.
1.2 s0a The peculiarities and advantages of the place.
1) Loose coupling. This feature can remove the need for close control of the entire system at both ends. For the whole system availability, scalability, and so on, each module can be a separate management, to ensure the normal operation of different parts of the system.
2 multiplexing increases. The advantage is that it can reuse the different services that have been developed and furnished, thus ensuring the efficient utilization of resources and realizing the continuous development and delivery of the overall resources project.
3 Legacy Integration. This can help to make the necessary service improvements to the legacy use systems and information systems so that they enter the new application system, so as to achieve the reuse of resources and avoid unnecessary waste of excessive resources, which is equivalent to the recycling of resources, and then the process of using the package after improvement, This is a better way to reduce the cost of maintenance and integration.
2 Microsoft Cloud Computing Revolution
Cloud computing has originated in large internet companies, and the cost and exponential business growth pressures have made them very focused on the utilization of IT resources and the scalability of their applications. Cloud Computing delivers a dynamic, scalable, internet-based IT service delivery model. At present, it is agreed that cloud computing will be the PC Revolution, the Internet revolution after the third it revolution. Cloud computing based on the location of service deployment can be divided into public cloud, private cloud and mixed cloud three kinds of forms.
2.1 Special aspects of cloud computing.
1 emphasize sharing over resources rather than individual possession. Cloud computing is the goal of reducing the cost of computing by leveraging the sharing of resources to enhance the efficiency of resource utilization. At present, many enterprises ' information systems usually adopt "independent scheme", which forms a lot of "legacy system", which causes the waste of database, Web application and Web resources, and cloud computing is a good solution to these problems.
2 The emphasis on resources is not dispersed. The development of computing model, from the earliest host computing mode, to the distributed computing mode of C/s and b/a mode, and then to the current cloud computing model. Can be described as "a long time must be divided, long time must be combined, there are points in the combination of". Cloud computing is a significant feature of the cloud computing model, where it creates a pool of computing resources (including networks, servers, storage, applications, and services) and lets different users share access.
3) do not recommend static resource allocation, emphasizing dynamic resource allocation. Cloud computing as a service delivery system, customers need to be satisfied with the service, so cloud computing must be a timely response to the needs of the customer's resources, so do a good job in this area, many of the use of cloud computing using virtualization technology, so as to reduce the coupling between different information resources, In order to better improve the dynamic resource allocation efficiency.
2.2 The SPI model of cloud computing
According to the category of resources in the resource pool in cloud computing, the service pattern can be divided into three kinds.
1 Infrastructure as service (Iaas,infrastructure as a). This is the most basic form of service provided by the cloud, in which the user obtains infrastructure resources, such as servers, storage devices, network devices, and so on. With such facilities, users will not need to purchase, maintain the relevant system facilities and software, but also more direct use of these facilities to do their own platform and different information systems to build work.
2 Platform as service (Paas,platform as a). This kind of service means that for the user through the service is not able to take over the software, it's not hardware information, it's a foundational resource for processing, it's a platform for users to develop and use, so the platform services are not just for ordinary users, but for software developers, They can fully use these resources and develop customized applications.
3 Software as service (Saas,software as a). In such a service, the cloud services can put the commercial software provided on their own servers, the use of customers on the network to the manufacturers to order their own use of the software, according to the number of services ordered and the time to pay vendors, and then through the network to obtain the services provided by the manufacturer. The presence of this service enables organizations to develop software that is not needed to buy software, to manage and maintain software that is leased to the Web, to provide management and maintenance services, and to provide offline use and data-specific storage management to ensure that users can use the ordered software and services at any time.
3 The design pattern of s0a enterprise based on cloud computing
After analyzing the characteristics of s0a and cloud computing technologies, we can see that they end up giving customers a service, not the same place is SOA it is more focused on the concept of service to design the architecture. While cloud computing provides a variety of resources (services) to users through IaaS, PAAs, and SaaS, the need to achieve cost savings and the integration of legacy information in the use of their own businesses can be designed using a hybrid architecture based on cloud computing SOA, This can better improve the efficiency of the actual construction of enterprise informatization.
Using this architectural pattern in an enterprise architecture design, the SOA design pattern needs to be used as a whole, and cloud computing technology is used to implement the architectural design of specific parts. First, the application of enterprise applications in the form of a private cloud or public cloud in the hardware, data, and business tiers (with IaaS and PAAs) to increase utilization of system resources: then encapsulate the various features that are distributed in the cloud in the form of Web services in the service layer: Finally, in the presentation layer, in the form of SaaS, Use a unified platform to implement the perfect integration of enterprise applications, thereby enhancing the user experience.
4 Conclusion
Because the development of cloud computing in China is just beginning, many technical problems need constant testing and verification, but SOA in the software development industry is a more mature design architecture concept, it in the enterprise legacy information and isolated information integration has an important role, So the combination of cloud computing and SOA is a good choice, you can better play their advantages, to ensure the rapid development of information technology for enterprises to better provide technical and software support.