Information Technology Reference
In-Depth Information
2.3.1
Optimizing Web and Grid Services
Ver y l a rge s c ie nt i i c datasets are increasingly becoming available in XML
formats. However, the current XML implementation landscape does not
adequately meet the performance requirements of large-scale applica-
tions. To address this limitation, we have developed a high-performance
XML processor that is designed to meet the needs of emerging grid appli-
cations that need to deal with high volume of XML data:
1. We have designed pre-fetching and piped implementation
techniques that are ideally suited for processing very large XML
documents on multicore nodes (Head and Govindaraju, 2007).
2. We have developed pre-parsing techniques along with static and
dynamic partitioning techniques for load balancing (Lu et al.,
2006a).
3. We have studied the effect of operating system-level caching on
the parsing process of large documents that may be read more
than one time.
4. We have conducted experiments to contrast the effect of our tech-
niques on SMP, CMP, and classic uniprocessor CPU architectures.
2.3.2
Optimizing SOAP
SOAP is the standard communication protocol for Web services, which
currently has a signii cant role in grid standards. SOAP's extensibility,
platform and language independence, interoperability, and robustness
can be offset by poor performance, an important limitation for many grid
applications. In particular, converting in-memory binary data to and from
ASCII format for transmission represents a signii cant bottleneck. To
address this problem, we have built a SOAP implementation (bSOAP),
which includes two effective optimization techniques: (1) differential seri-
alization and (2) differential deserialization.
Differential serialization (Ghazaleh, 2004) can avoid serializing a SOAP
message that is similar to previously sent messages by saving a copy of an
outgoing SOAP message and then in subsequent deliveries only serializ-
ing those i elds where values have changed. This approach requires no
changes to the SOAP protocol, and the on-the-wire representation is fully
compliant with the SOAP specii cation.
Differential deserialization (Ghazaleh, 2005) uses a different technique,
on the server side, to address the same problem. Differential deserializa-
tion periodically checkpoints the state of the SOAP deserializer, and com-
putes checksums of SOAP message portions. bSOAP compares checksums
against those of the corresponding message portion in previous messages,
to identify, with high probability, that the message portions match one
 
Search WWH ::




Custom Search