SOA, OngoingSOA is hot now ". Currently, I have heard of SOA in two ways: "disruptive revolutionary architecture" and "careful watching ". However, there is no doubt that SOA has developed very fast in recent years, and major software vendors have followed up in a high profile. The reports on SOA are endless. Some programmers are excited and looking forward to "SOA hot", while others are confused, recently, when I was talking to programmers at the Java club in cities such as Guangzhou and Shanghai on Kingdee middleware, they said: "In the past, the object-oriented technology was outdated and the SOA era came." Or I repeatedly asked me, "What is SOA? What is the role? "
So what is SOA? What problems can be solved? Are we and our customers ready? The answer I gave is "Just Processing, SOA-in progress ". What is SOA? SOA (Service-Oriented Architecture) is defined as a Service-Oriented Architecture, that is, the software is designed as a Service by function, these services define interfaces in a standard way and call them through standard protocols. The interfaces and calling methods defined by SOA are independent of programming languages and runtime platforms. in a broad sense, SOA can be implemented based on different underlying technologies, such as CORBA and Web Services. However, because CORBA is too complex and bloated, it is rarely used. Therefore, the vast majority of SOA currently mentioned is implemented based on Web Services technology. In the implementation of Web Services, the interfaces of SOA Services are defined in XML. In the SOA architecture, software development starts from business process analysis and uses componentized business modeling methods to identify and analyze various business models, integrate various practices into them, and establish use cases on this basis, use Cases Directly generate BPEL, which can be integrated into a service integration framework and describe the information of various services, so as to unify the modules on the ESB, form a huge service warehouse. In this way, SOA is even a dream of all software personnel: it removes the middle layer and makes a metadata and business logic across the technical architecture at the middle layer, this makes it a cross-technical architecture, Enterprise Business Library that can be inherited for a long time and continuously accumulated, and the most valuable information asset, that is, a service-oriented component library, this service component library can also be reused by other enterprises and does not depend on any technical architecture. To put it bluntly, if all software companies use the SOA architecture, the world's software industry will change completely. Obviously, such a framework is neither a product nor a technology, but a methodology for solving problems. What are the problems that SOA can solve in two scenarios and existing problems of SOA? In my opinion, in terms of technology, SOA may be applied to two scenarios: first, business interconnection, and second, closed transaction systems, that is, the separation of metadata and business logic to form reusability. For example, in the first scenario, when the businesses of different enterprises need to call each other, SOA technology may be used. In the second scenario, when the system needs to be migrated inside the enterprise, the original data and business processes defined by the SOA technology can be quickly completed. No doubt, SOA is a great idea. It tries to define a rule that everyone (various software vendors) recognizes and follows, everyone uses this method for interconnection, so as to achieve seamless connectivity, as well as the inheritance and reuse of service component libraries, freeing invalid and repetitive efforts. An inappropriate metaphor is like a human language. SOA may be like the story of the famous "tongtianta" in the Bible: the power of communication in the same language is so great, so that they almost want to build a "Tower of Heaven" in Babylon to go directly to the heaven of God. However, existing problems are also obvious in the two scenarios of SOA: Business interconnection, that is, application system interconnection. Business interconnection is not so much a technical issue as a business issue. For example, asynchronous integration of ERP and CRM cannot integrate the two systems at the data layer, SOA is just one of the implementation tools, and the integration effect will not be better. We can say that SOA is the most "not bad" method before other options are available, but it cannot solve all the problems. In fact, EAI has a wide range of concerns, and we know that, some problems cannot be solved simply by technology. Scenario 2: Closed transaction systems with slow performance and no clear specification for Web Services-based transactions. The slow information interaction using XML is acknowledged by everyone. performance issues will cause some resistance to the Development of SOA. At the same time, the SOA specifications are not complete. For example, the Transaction specifications are constantly improved, and Web services have little effect over the years. In general, SOA is still in a development stage, many standards are still being developed, and different vendors are still incompatible. Therefore, SOA cannot be said to be a mature technology, it also takes time to test and is still in progress ". Of course, Kingdee middleware, as a member of the JCP organization, will also promote the implementation of SOA specifications on the J2EE platform. In addition to the potential prospects of SOA technology, we have to go back and calmly say that there is still a distance between SOA and our common customers-Chinese enterprises. The informatization process in China is different from that in Europe and America. A large number of basic business systems have not yet been established, and the demand for integration is not as big as imagined. From our understanding of our customers, we found that few customers have SOA requirements. Simply put, there is no foundation for intercommunication, and there is no strong demand for new systems. A large number of business systems in the European and American markets need to be integrated. From this perspective, SOA applies to them. At the same time, with few successful cases, SOA is still in the cultivation period, and there is still a certain risk to use SOA technology to create a closed transaction system. A new technology needs to be digested by the market. Large enterprises will not easily transfer to a new technology platform to protect their investment. Even if mature technologies such as J2EE have been developing for so many years, I can't say that I have a dominant market share. SOA also needs to be promoted by users and suppliers in the entire IT industry. What kind of technical architecture is required for informatization in China and what kind of cost price is acceptable? This is not only what our customers need to consider, but our software vendors should be clearer and more advanced than customers. In this variable-filled competitive market, only calm and pragmatic can survive and develop.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.