SOA: What is the new clothes or a beautiful lie?

xiaoxiao2021-03-06  60

Title SOA: New clothes or beautiful lies? Select BLOG keyword SOA from Liuruhong: New clothes or beautiful lies? The origin of the source is published in the tenth issue of the "Programmer" magazine. For more information, please refer to the magazine, this article allows non-commercial sites to reprint, if the commercial website reprints, please contact "Programmer" magazine, this article only represents the author's point of view

This is a bit of ambiguity, but any modification is dimly light relative to SOA (service-oriented architecture). As early as 1996, Gartner Group has already proposed SOA prophecy, but it is just a "prediction" that time, the software development level and informationization is not enough to support such concepts into substantive application phases.

In December 2002, Gartner also put forward SOA is the "most important topic in modern application development", and predicted that by 2008, 75% of new enterprise applications will use SOA elements, 20% in 2003 In 2006, in 2006, in all commercial applications sold globally, the service will exceed 80%; in 2005, 80% of the enterprises attempt to establish real-time business capabilities will seriously underestimate the needs of the network, they It will have to make the final increase, upgrade or modify, so that real-time enterprise applications and capabilities can be carried out. In 2008, SOA will become a software engineering practice of absolute advantage. Mainstream companies should now invest in understanding and application SOA development skills, and better support business processes.

So at this moment, this "old-tuning" has become a new favorite of major manufacturers before one night, and the commercial interest chase is also good, and they have the same style. They have chosen the focus of SOA as their concept speculation in 2004. I hope to stimulate The currently weak IT procurement market, then what is SOA, what kind of software methodology allows the manufacturer to be embarrassed, what is the reason why it is in the same way while promoting the concept?

Throughout the history of software, we have experienced a process -> object-oriented -> - oriented components -> integrated era:

Process: highly coupled, high efficiency, is usually achieved for a specific application, so it is unable to adapt to fast business changes, and it is not suitable for the development of a large-scale customer application. Object-oriented: OOP provides a series of features such as encapsulation, inheritance, polymorphism, and overloading to make the architecture of the application software can be reused, and developers may not have to care about their specific implementation, but focus on what kind of function that can provide Therefore, software reuse is improved, so that the entire IT's infrastructure can adapt to the rapid change in demand. Language Singleness and Source Code Sharing determines that there will be a variety of difficulties in cross-use system reuse. Component: Component sharing of binary levels further accelerates the pace of application implementation, inheriting OO's significant advantage, so that IT infrastructure can adapt to business changes more quickly, but platform singleness still hinders its reuse. Integration: This is an era of full-scale business, all applications are organized by business applications, but integrated cost makes many companies. SOA is born under such a big background. After the OOP is relatively mature, there are many methods for explaining various problems encountered in the development process, such as AOP (facing aspects), MDA. Model drive architecture), contractual design and its limit programming (XP), etc. Simply put, SOA is a software architecture of abstraction, loose coupling and coarse granularity, which can be distributed, combined, and used by the network based on demand. The service layer is the foundation of SOA, which can be used directly to be applied, so that people with the software agent interact with the software agent are dependent. Then let's take a look at how major manufacturers promote and advocate their support for SOA? IBM: Declaration is the first to build, deploy SOA-based IT systems with a range of comprehensive tools, training and service lines, cover all aspects of the SOA life cycle, covering the five major products they offer Wires WebSphere, Workplace, Tivoli, DB2, and its Rational.

BEA: Declare its flagship product WebLogic Platform 8.1 is the best SOA implementation platform in the industry, from WebLogic Server to WebLogic Portal to WebLogic Integration, BEA's full line products are designed with SOA concept, and Workshop 8.1 is the first A complete ISE (Integrated Services Environment, a service-oriented integrated environment), overwrites all aspects from design, development, and testing to deployment, and claims to establish a service-based application to enterprises through it.

Oracle: Declining that its JDeveloper 10g is a development tool based on Java and Web service environment, with network activation, and can support SOA (service-oriented architecture), and propose in SOA tools, leading to IBM and Sun like this The company, through its database product Oracle 10G and OAS (Oracle Application Server), plus APF (Application Platform Foundation) support, Oracle will lead to other vendors in SOA support.

Microsoft: Although the concept of SOA is not from this manufacturer, but in the later promotion, it takes a very important location, and the launch of BizTalk Server 2004 has finally letting this software giant began to start the SOA propaganda, compared to other manufacturers. In terms of "wise" choice from developers, guide developers to enter SOA, from MBF (Microsoft Business Framework), providing a reference architecture to developers. From the current market confrontation, enterprise application development can be broken down into three major camps:

The Java apps headed by IBM, BEA, ORACLE, and SUN firmly occupies high-end applications, except for cross-platform features, it is more important to form a very mature product line on the Java standard, from development tools to The application server is reached to the enterprise application, and there is a complete solution from beginning to end, and they become leaders in this world, they focus on the high-end market.

With Microsoft-based Windows-based application solution providers, they fully depend on the functions provided by the Windows architecture, the main development tools are Visual Stuido 6.0 and Borland's Delphi, now gradually move to .NET, Medium and low-end markets, they have a long development efficiency and ease of use, and have a trend toward high-end applications.

The application based on Perl, PHP, Python, etc. focusing on the medium and low-end markets. They see leading by the price advantage, and there is a solid community support. The key issue is that there is no support for strong manufacturers, so more Suitable for some relatively independent application solutions.

In a sense, SOA is "self-top", is because the enhancement of enterprise application complexity has caused a lot of applications that cannot be fully developed, so "integration". It has become a problem that the company is daunting, but the SOA has a series of born advantages such as service, "service, service, standardization, loose coupling", etc., SOA, "service, non-needed, standardization, loose coupling", etc. To this new concept is the best entry of IT procurement, so the group has been made, and the glory of SOA today is unlimited.

Everything is not so perfect. If it is perfect, there is no such text, and there is no so many complaints. I believe that many people are equivalent to the Web Services, from the initial definition to the manufacturer's propaganda is conveying a topic: SOA! = Web Services, Web Services is just a technology implementation of SOA, not enough to form all SOA, through JMS, JDBC, .NET Remoting, IIOP and Corba and TCP / IP can become SOA technology to implement architecture, and there are Vendors have realized SOA models on private agreements, such as IBM WebSphere product lines, such as WebLogic Workshop, such as Microsoft's .NET 2.0 libraries, and more.

As the SOA-world SOA promoter of SOA, they think that SOA does not equals Web Services, because they can use IIOP, JMS, CORBA and other protocols during the implementation of SOA, on the Java platform, these protocols can work The efficiency than the Web Services, the software architecture that achieves a big unified in the Java world seems to be close at hand, then we have reason to choose SOA.

Although Microsoft is still not enough to become the concept of absolute leaders, there is a bit of certain, ignoring Microsoft's reunion is not perfect enough or even sorrow, although not care, but ignore the more Microsoft developers to discuss new A generation of software architecture seems to be insufficient. Microsoft chose a sleek way to advance SOA, although his product has not been the best, but there is no doubt, and other manufacturers have smoked in terms of ease of use. Microsoft also knows that SOA is not Web Services, but the same also knows that only Web Services can truly help them to realize SOA dreams, so they are interested in distinguishing the difference, and the final ending is that most Microsoft developers think SOA is Web. Services, and vs.net is currently the best tool for developing Web Services. Although everything is not so satisfied, not let Microsoft satisfied, let Java world is dissatisfied, but we don't forget: Microsoft developers have developed The half of the people of the staff. From a personal point of view, I agree that SOA is a new generation of software architecture. It is the most dazzling software methodology of "OO era", but is the theoretical theory, is it possible to solve all kinds of problems in current enterprise application? Everything needs us to wait and see. Inadvertently to negate or attack manufacturers, after all, through the concept to stimulate IT procurement is their ultimate goal, we do our developers or companies, SOA is not a panacea? Also need to go back to SOA! = Web Services, although it is boring, but before, if there is no SOA is equal or complete, we can't continue to continue this hundred bored themes, since SOA emphasizes it to cross heterogeneous Platform integration business, then it is necessary to need a specific technical means to achieve, as far as the development of the three camps Where is the starting point? Everyone understands that only Web Services can make this argument say it.

So what about today's web services? In terms of enterprise applications, it has gradually become mainstream protocols, but in the enterprise, we all know that the current Web Services is still difficult to be Daleo, after all, SOAP serialization and reverse sequence is a lot In practical applications, it will become a terrible performance bottleneck. So the current application of Web Services is still integrated as the Lord, in real-time applications, they have not become their own stage.

What kind of thing is SOA, what kind of relationship is with Web Services, is the new clothes of software or a beautiful lie, we will wait and see.

Author Blog: http://blog.9cbs.net/liuhong/ Related Articles "MSDN Development Selection" third volume: August Flower SOA: New clothes or beautiful lies? Return C / S? Explanation of Bindows JavaScript Prototype (Prototype) to Implement User Manual (GB8567 - 88) LIURUHONG (2004-09-23) Hi, Betaman

I agree that SOA should be based on technical architecture, or as the vision of your software interaction, if a technology or a structure is charming, then I am more willing to believe that the charm is from the standard, that is, J2EE, in the Java world has formed their own standards, although their respective manufacturers have different implementations, but does not hinder their communication.

SOA! = Web Services, this is recognized in many vendors, but if you need to cross the development and running platform for heterogeneous business integration, the Web Services should be a most suitable technical architecture, which is the upper layer of SOA. A means of architecture. However, the current Web Services is almost standard, but it is not so suitable in considerable applications. Of course, the Web Services can be accepted by everyone, but the application response requires a high A2A? Betaman (2004-09-23) For SOA, because the front time is concentrated in research, there is some experience with you with you:

1) The current market will always put SOA and Web Service, Oo, etc., I feel that some are not correct: Web Service is a technology realization system (XML, WSDL, SOAP, UDDI), and OO is a design Thought, although SOA is directly "service-oriented architecture", this architecture is actually a more emphasis on software interaction. In order to achieve this vision, various technical means can be used (J2EE, CORBA, Web Service ... and various design methods (OO, MDA, AOP ...);

2) From the definition of SOA, many things we do now are SOA, but why do you want to emphasize SOA? This is because there is still a complete different thing-standard that is currently doing the current SOA. This standard will be very strong, which is required to implement the J2EE standard. From the abstract point of view, it is the summary and summary of software higher-level applications (.NET and J2EE standards are actually constrained. Web Application Server This foundation on this foundation), the order in this regard is what we can't avoid, just like we can't leave J2EE and .net to construct the application based on other platforms. If the J2EE platform is made, the new E-ON (Service On Demand) is to create a SOA system that is much larger than J2EE standards, this system will include such as security, process, organization, etc. Higher levels of a series of related standards;

3) Here, it is necessary to clarify that the Web Service acts as a specific, B2B application-based technology, indeed, is indeed in applicable to a business system requiring short and high throughput, but SOA cannot be simple. It is understood as "slow" because SOA does not limit the specific technical implementation means, and the calls in the RMI, the process can be implemented as SOA technology. The premise is that as long as the corresponding technical carrier is implemented as SOA-related The standard is ok.

4) Finally, from a historical point of view, the software industry is still in a relatively low level of development compared to other industries. We can look at the construction industry: in the primary stage of the construction industry, a large number of building materials companies offer a variety of calibers One water pipe, in this case, there has been a building materials manufacturer (just like the current EAI vendor) specifically for various types of water pipes, but with the development of the building industry, whether the buyer is still the seller, Real estate: If the water pipe is based on the same criteria, it will save a lot of trouble, so the relevant standards come out (for example, the national standard of the GB series), in which case the building materials supplied by the conversion tube have died Everyone has tasted the sweetness from this standardization process. Realling this process, we found that the specific way to produce the water pipe has not changed (there is almost no innovation in the technical carrier), but it is all based on standard. Our current software industry is also experiencing almost the same process, SMTP, JNDI, J2EE is a product that is evolving from this process. So, at this stage, the software industry itself proposes a standardized slogan, I hope This is a rational return after chaotic competition. While all manufacturers make money, we will also share the increase in market expansion and profits due to standardization. If you don't believe, you can think about it, today's BEA, IBM is indeed It is based on the J2EE platform to earn, but if there is no such platform, we will definitely make more hardships, it is because J2EE standardization dispels the customer's choice between different technical standards, he exchanges today J2EE The situation in the world and our good benefits, I hope that SOA can continue this brilliant! The essence of SOA is the standard.

转载请注明原文地址:https://www.9cbs.com/read-112261.html

New Post(0)