| |
|
|
| According to the W3C a Web service [1] is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface that is described in a machine-processible format such as WSDL. Other systems interact with the Web service in a manner prescribed by its interface using messages, which may be enclosed in a SOAP envelope, or follow a RESTful approach. These messages are typically conveyed using HTTP, and normally comprise XML in conjunction with other Web-related standards. Software applications written in various programming languages and running on various platforms can use web services to exchange data over computer networks like the Internet in a manner similar to inter-process communication on a single computer. This interoperability (for example, between Java and Python, or Microsoft Windows and Linux applications) is due to the use of open standards. OASIS and the W3C are the primary committees responsible for the architecture and standardization of web services. To improve interoperability between web service implementations, the WS-I organization has been developing a series of profiles to further define the standards involved. |
|
| Standards used |
 |
| |
Web Services Protocol Stack: The Standards and protocols used to consume a web service, considered as a protocol stack. |
|
|
| |
XML: All data to be exchanged is formatted with XML tags. The encoded message may conform to a messaging standard such as SOAP or the older XML-RPC. The XML-RPC scheme calls functions remotely, whilst SOAP favours a more modern (object-oriented) approach based on the Command pattern. |
|
|
| |
Common protocols: data can be transported between applications using any number of common protocols, such as HTTP, FTP, SMTP and XMPP. |
|
|
| |
WSDL: The public interface to the web service is described by Web Services Description Language, or WSDL. This is an XML-based service description on how to communicate using the web service. |
|
|
| |
UDDI: The web service information is published using this protocol. It should enable applications to look up web services information in order to determine whether to use them. |
|
|
| |
ebXML: A modular electronic business framework is enabled using this set of specifications. The vision of ebXML is to enable a global electronic marketplace where enterprises of any size and in any geographical location can meet and conduct business with each other through the exchange of XML-based messages. |
|
|
| |
WS-Security: The Web Services Security protocol has been accepted as an OASIS standard. The standard allows authentication of actors and confidentiality of the messages sent. |
|
|
| |
WS-ReliableExchange: A SOAP-based specification that fulfills reliable messaging requirements critical to some applications of Web Services. Accepted as an OASIS standard. |
|
|
| |
WS-Management: This specification describes a SOAP-based protocol for systems management of personal computers, servers, devices, and other manageable hardware and Web services and other applications. |
|
|
| Designed by award-winning instructional designers, Altius Solutions instructor-led training, online learning and virtual classes offer thorough product instruction, providing you with an in-depth learning experience. |
|
| Advantages of web services |
|
|
Web services provide interoperability between various software applications running on disparate platforms/operating systems. |
|
|
|
Web services use open standards and protocols. Protocols and data formats are text-based where possible, making it easy for developers to comprehend. |
|
|
|
By utilizing HTTP, web services can work through many common firewall security measures without requiring changes to the firewall filtering rules. Other forms of RPC may more often be blocked. |
|
|
|
Web services allow software and services from different companies and locations to be combined easily to provide an integrated service. |
|
|
|
Web services allow the reuse of services and components within an infrastructure. |
|
Web services are loosely coupled thereby facilitating a distributed approach to application integration. |
|
|
| Disadvantages of web services |
|
|
Web services standards features such as transactions are currently nonexistent or still in their infancy compared to more mature distributed computing open standards such as CORBA. This is likely to be a temporary disadvantage as most vendors have committed to the OASIS standards to implement the Quality of Service aspects of their products. |
|
|
|
Web services may suffer from poor performance compared to other distributed computing approaches such as RMI, CORBA, or DCOM. This is a common trade-off when choosing text-based formats. XML explicitly does not count among its design goals either conciseness of encoding or efficiency of parsing. This could change with the XML Infoset standard, which describes XML-based languages in terms of abstractions (elements, attributes, logical nesting). The traditional angle-bracket representation is now seen as an ASCII (or Unicode) serialisation of XML, not XML itself. In this model, binary serialisation is an equally valid alternative. Binary representations such as SOAPMTOM promise to improve the wire efficiency of XML messaging. |
|
|
|
| Web services RPC |
| Web services were another attempt to standardize RPC between platforms by piggybacking on the near-universally deployed HTTP protocol. Using Web services a .NET client running on a Windows client can call a remote procedure implemented in Java on a Unix server (and vice versa). |
|
| Web services use XML as the IDL, and HTTP as the network protocol. The advantage of this system is simplicity and standardization; both XML and HTTP are widely implemented standards. |
|
|
An example of such an RPC system is SOAP, developed in turn from XML-RPC. However, web services have been criticized as wasteful in terms of bandwidth and processing requirements. |
|
|
|
An example of a modern RPC system that attempts to avoid both the complexity of CORBA and the inefficiency of web services is ZeroC's Internet Communications Engine (ICE). |
|
|
|
An alternative approach to RPC is Representational State Transfer (REST). REST is far less well known in the IT community, but it is used where RPC can't or won't fit. |
|
|
|
| Platforms |
| Web services can be deployed by using application server software. A sample of application servers: |
|
|
Action Web Service (AWS) in Ruby on Rails |
|
Axis and the Jakarta Tomcat server (both at the Apache project.) |
|
ColdFusion from Macromedia (Adobe) |
|
Cordys WS-AppServer |
|
DotGnu from GNU Project |
|
infoRouter Document Management software Web Services API |
|
iWay Software Service Manager |
|
Java Web Services Development Pack (JWSDP) from Sun Microsystems (based on Jakarta Tomcat) |
|
JOnAS (part of the ObjectWeb Open Source initiative) |
|
Lasso from OmniPilot |
|
Mono development platform from Novell |
|
Microsoft .NET servers from Microsoft |
|
NextAxiom Service Runtime Environment (SRE) from NextAxiom Technology |
|
OpenEdge Platform from Progress Software |
|
Oracle Application Server from Oracle Corporation |
|
Pramati Application Server from Pramati Technologies Limited |
|
Web Application Server from SAP (the Web AS is a key part of the SAP NetWeaver stack) |
|
WebLogic from BEA Systems |
|
WebSphere Application Server from IBM |
|
XWay Application Server from Appium |
|
Zope is an object orientedweb application server written in Python |
|
IBM Lotus Domino from IBM |
|
PHP has native Web Services libraries, and also a widely used library, non native, called nuSOAP. |
|
4D has native Web Services both client and server. |
|
WebObjects from Apple Computer has native Web Services both client and server. |
|
|
| Companies providing Web Services |
| These are several companies and organizations that provide open public web services: |
|
|
Amazon.com - Search Products, Product Information, Cart System, Wish List |
|
eBay - Auction Search, Bidding, Auction Creation |
|
European Bioinformatics Institute[1] |
|
Google - In Beta - Web Search, Maps |
|
Yahoo! - Maps, Traffic |
|
FedEx - Tracking |
|
PayPal - Payment System |
|
MapPoint - Maps |
|
ShopSync - Web Service for Uploading items to sell. www.shopsync.org |
|
MSN - Virtual Earth |
|
Flickr - Photo |
|
Interfax |
|
cddb |
|
Livejournal |
|
Blogger.com |
|
Xignite - Financial market data |
|
Last.fm |
|
MusicBrainz - Music Metadata |
|
StrikeIron - Address Verification, Sales Tax, SMS, Geocode, Yellow Pages, etc. |
|
Protein Data Bank - Macromolecular structures and PubMed entries. |
|
Rediffmail - News, Shoping |
|
|
| Notes |
|
| 1. |
Many sources also capitalize the second word, as in Web Services |
|
|
|
|
|
| Featured Solutions |
| Committed to delivering innovation,
Altius with its client to help them achieve
high performance. Our Professionals leverage
leading-edge technologies and tools to identify
new opportunities and drive business process
improvements. |
|
| |
| Recent Events |
| Altius is a team company that is composed of business and management consultants then build into the plan, key measurements for the project and eventual realization. Our aim is to provide a quick return on all our assignments. |
| Read More |
|
|