Quick Review:Ajax
Understanding quality of service for Web services Improving the performance of your Web services

throughout an enterprise. Message queues provide two major advantages:

  1. It is asynchronous: A messaging service provider can deliver messages to the requestor as they arrive and the requestor does not have to request messages in order to receive them.
  2. It is reliable: A messaging service can ensure that a message is delivered once and only once.

In the future, Publish & Subscribe messaging systems over the Internet such as the Utility Services package from alphaWorks , can be used for Web service invocations (see Resources).

Private WANs and Web service networks

Use of private WANs/extranets and Web services networks can be a suitable option for businesses depending on Web services which are mission-critical. These private networks provide low network latency, low congestion, guaranteed delivery, and non-repudiation. However, in some cases it could be costly to have a private network.

SOAP and performance
SOAP is the defacto wire protocol for Web services. SOAP performance is degraded because of the following:

  1. Extracting the SOAP envelope from the SOAP packet is time-expensive.
  2. Parsing the contained XML information in the SOAP envelope using a XML parser is also timeexpensive.
  3. There is not much optimization possible with XML data.
  4. SOAP encoding rules make it mandatory to include typing information in all the SOAP messages sent and received.
  5. Encoding binary data in a form acceptable to XML results in overhead of additional bytes added as a result of the encoding as well as processor overhead performing the encoding/decoding.

The XML processor must be loaded, instantiated, and fed with the XML data. Then the method call argument information must be discovered. This involves a lot of overhead as XML processors grow to support more XML features.

The role of the XML parser in SOAP performance

Most existing XML parsers are too expensive in terms of code size, processing time, and memory foot print because these parsers have to support a number of features like type checking and conversion, wellformedness checking, or ambiguity resolution. All these make XML parsers require more computing resources. Some applications can consider using of stripped down version of XML parser which have a small code size and memory foot print.

Also, most of the current SOAP implementations are Document Object Model (DOM) based. DOM parsers are inherently slow to parse the messages. SAX-based SOAP implementations can be used
to increase throughput, reduce memory overhead, and improve scalability.

Compressing XML

SOAP uses XML as its payload. And if we consider thousands of SOAP messages being transmitted over the Web, the network bandwidth is being pushed to its limit. XML’s way of representing data usually results in a substantially larger size than representing the same data in binary, which is on average 400% larger. This increase of the message size creates a critical problem when data has to be transmitted quickly, which effectively results in increase of the data transmission time. Some application designs should consider techniques for compact and efficient representation. One of the

June 2008 | Java Jazz Up | 42
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,

, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,   Download PDF