Comparison of WebServices for building XML architectures

Source: Internet
Author: User
Tags format message
Article title: Comparison of WebServices for building XML architectures. Linux is a technology channel of the IT lab in China. Includes basic categories such as desktop applications, Linux system management, kernel research, embedded systems, and open source.
   I. sequence
In this article, we will compare two types of platforms that can be used to build commercial XML Web Services: Java 2 Enterprise Edition (J2EE) provided by Sun Microsystems) and.. NET platform.
  
Although J2EE represents a public standard. NET is the standard for a single vendor (although. NET tries to obtain the ECMA standard, but it is changed to the standard only when the most basic part is adopted by ECMA. please refer to http://msdn.microsoft.com/net/ecma/, and there is no standardization in the enterprise application.) in contrast to the Java Platform, it is true that all major vendors except Microsoft follow the JCP standards to develop all specifications (refer to the http://www.jcp.org and you will find that all Java technologies come from coordinating the major companies ).
  
Although Java is far ahead in standardization, we will only discuss the Web Services architecture on the server side. For example, our discussion will not involve JINI or Office XP, and we will not discuss Java across Solaris, Linux, Mac OS X, and Windows platforms. NET only cross Windows 98/ME/2000/XP and other Windows platforms. We will not even discuss that the "cross-language" Java has long been trying to achieve this. Microsoft has taken it as a major feature of. NET, but it is not a function at all. (See http://grunge.cs.tu-berlin.de /~ Tolk/vmlanguages.html. you can find that Java has already achieved the so-called cross-language functions. Smalltalk, Eiffel, Lisp, Prolog, BASIC, and other languages can be smoothly converted to Java bytecode, unlike. NET. NET monster, the original language must be tailored to fit. NET, so VB. NET, COBOL. NET ). It is said that cross-language shouting for a long time, even their own VB 6.0 cross. After reading this article, you will have a better understanding of the advantages and disadvantages of these two architectures, and you will have a clearer consideration when making your next-generation Web Services decisions.
  
   II. Preface
The next generation of distributed computing has arrived. In the past few years, XML has been widely used in computer computing environments to achieve the ambitious goal of sharing information on global information networks. Today, it can further share computing power. From a technical point of view, the emergence of Web Services is not a new revolution in distributed computer computing. It can present information in a structured manner, or even messages in a program, which is naturally more eye-catching than XML applications.
  
   III. industrial and enterprise standards
Through Web Services, any application can be smoothly integrated on the network. The basic principle of Web Services is to use standard network protocols (such as HTTP) to send XML messages. This is a very lightweight communication mechanism that allows easy integration of any programming language, intermediate layer components, or platform. Generally, industrial or internal enterprises will accept mature and widely used industry standards, especially those that have been tested by the market for years. With Web Services, you can quickly and cost-effectively integrate two enterprises, departments, or even two programs.
  
To build Web Services, you must use the industry-wide Web Services technology. Now let's take a look at what Web Services are. First, you must first know how to build and use Web Services. In fact, Web Services is a very simple XML interface, applicable to business, applications, and system Services. To put it bluntly, you just need to wear new old technical clothes. Web Services is actually a new generation of distributed Services. Before that, some technologies such as CORBA, DCOM, COM +, and RMI were used to implement distributed architecture, and it has been proved to be very smooth, and the next generation of distributed services, using XML technology, such as XML-RPC and SOAP is the best example, the new generation of distributed technology can be used as the basis (such as SMTP and FTP) by sending communication protocols. However, the most popular method at present is to implant XML in HTTP, however, the performance is not the best communication protocol. Even so, these new generations of technologies have not yet passed the test of time. maybe they may be very successful, or there may be some risks.
  
With so many distributed technologies, the degree of support supported by the J2EE and. NET platforms is as follows:
  
Support for old distributed technologies:
  
J2EE. NET
Supported by CORBA
RMI/IIOP not supported
COM + not supported
  
Support for new-generation Web Services:
  
J2EE. NET
XML-RPC support not supported
SOAP support
  
From the two charts above, we can know that for conservative companies, J2EE supports distributed computing services widely used in existing enterprise systems. the NET platform still only supports COM +, which is extended from COM and DCOM. its predecessor, mts com +, is three years earlier than the Enterprise JavaBeans technology, we can infer the distribution service ratio provided by J2EE. NET technology is three years ahead. In addition, all the large hosts currently used by enterprises are using the CORBA technology. J2EE certainly provides the best support for the old technology, because COM + can only run on Windows platforms.
  
Sun Microsystems offers Java Web Service Developer Pack (XML-RPC), which is more available for companies that are avant-garde and who can use either http://java.sun.com/xml/jaxrpc/index.html or SOAP (http://java.sun.com/xml/jaxm/index.html) technology) for developers to develop Web Services. In contrast, the. NET technology only provides support for SOAP. In the case of insufficient support for existing distributed technologies, the support for the new generation of distributed technologies cannot provide flexible options, and the risks are high and predictable.
  
Even if the new generation of Web Services is very stable, its stability is often affected by the stability of the underlying operating system, if you choose. is bound to the most unstable Windows platform. What's worse ,. NET can only work on Microsoft's official web server. I believe that friends who used IIS will question the security and stability of Nimda after suffering from virus and nightmare such as Nimda? However, if you use J2EE technology, you can choose the most suitable and lowest cost among the application servers provided by many vendors that comply with the standards, and the best platform.
  
You can.
  
All in all, considering the platform stability, server stability, and product diversity, J2EE completely defeated. NET technology.
  
The following technologies are already used in the industry and are the best way to access Web Services:
  
-Web Services personnel are provided to develop, connect and deploy Web Services using their own programming languages, components, and platforms.
  
-Web Services providers define Web Services using Web Services Description Language. The WSDL file allows others to know the functions of Web Services.
  
-Web Services providers register Web Services with UDDI (Universal Description, Discovery, and Integration6. UDDI allows program developers to deploy Web
  
-You can use the UDDI logon method to find Web Services.
  
-Your program combines Web Services and calls Web Services through SOAP (Simple Object Access Protoco) or XML-RPC. XML-RPC or SOAP provides an XML-format message delivery over HTTP. This is a common communication protocol for all Web Services.
  
Note that the above mechanism is a way to build and make Web Services operate. Although there are other ways to do this, we think these technologies are the most important and will be widely used in the industry.
  
We can see from this that there is no consistent way to build Web Services, and there are still many difficulties to overcome in the construction. According to the specifications of SOAP, ebXML, and Service Stream, vendors have different opinions. SOAP is also the most widely publicized feature: it has nothing to do with the programming language and has nothing to do with a specific platform, when you try to use Apache SOAP to communicate with the Web Services generated by Microsoft SOAP Toolkit, it will be thoroughly cracked: type attributes have different relations in practice ). In addition to the differences in understanding the actual details, the more important reason is that someone deliberately breaks the standards.
Even so, there is still a lot of good news for Web Services:
  
-It is rare that all manufacturers, including Sun Microsystems and Microsoft, agree that SOAP, WSDL, and UDDI are good products with potential, so they will enter the future products.
  
-All vendors with different opinions work together to establish standards for Web Services and expand the application of Web Services.
  
   IV. use J2EE and Microsoft. NET to develop Web Services
If you want to develop a useful network server system. The challenges are not as simple as they seem to be. Your Web Services must be reliable, popular, error-free, flexible, and acceptable. These strict requirements are no less than commercial applications of any enterprise level.
  
J2EE and. NET are extensions of existing technologies used to develop enterprise-level applications on servers. Earlier versions of these technologies were not specifically used to develop Web Services. Today, Web Services has become a trend, so the two camps have adjusted their respective platform solutions. Therefore, you can now use these technologies to develop Web Services. The common vision of J2EE and. NET is to develop basic projects for Web Services, such as cross-platform XML communication, load balancing, and transactions. Rather than re-writing these basic projects on its own, it is better to write applications on platforms that provide these services.
  
However, when you develop an application of a certain scale, it will produce a certain degree of complexity. This requires assistance from development tools. if you choose one of the platforms, the following table lists the tools you can use:
  
Develop a new generation of Web Services development tools:
  
J2EE platform tools include:
  
• JBuilder (Borland)
• Forte for Java (Sun)
• WebLogic Workshop (BEA)
• JDeveloper (Oracle)
• VisualAge for Java (IBM)
• Visual Cafe (WebGain)
  
. NET platform
  
Only Visual Stdio. NET
  
We can see from here that you can obtain the best tools and solutions from the vendors that provide your existing enterprise solutions, from the free basic version to the paid professional version, each person can make the best choice based on different needs, rather than looking for the tools and solutions provided by a single vendor.
  
   V. J2EE
Java 2 Platform, Enterprise Edition (J2EE) is designed for special use
Related Article

Contact Us

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.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.