Caching review

  • View
    84

  • Download
    0

Embed Size (px)

Text of Caching review

Caching application entities based on an aspected-oriented approach

An Aspect-Oriented Approach to Consistency-PreservingCaching and Compression of Web Service Response MessagesWubin Li, Johan Tordsson, and Erik ElmrothDepartment of Computing Science and HPC2NUmea UniversityUmea, Sweden{wubin.li, tordsson, elmroth}@cs.umu.se2010 IEEE International Conference on Web Services1Agenda2010 IEEE International Conference on Web ServicesAbstractMotivationAOPWeb ServicesProposed solutionDesign and ImplementationExperimental Evaluation

Abstract2010 IEEE International Conference on Web ServicesThis article describes a tool called Tantity proxy which acts as a middleware layer to improve the throughput of Webservices using Caching and AOP techniques. It also describes the use of compression in order to reduce the size of the soap information over the network.MotivationWeb Services suffer from overhead due to verbose encoding and extensive (de)serializationReducing response time of costly remote services is a critical challenge

No related work for Caching without semantic interpretation

Previous work on handling caching transparent ignored the consistency aspectPrevious work which provides consistency does not ignores transparency thus requires substancial effor on implementation

2010 IEEE International Conference on Web Services42010 IEEE International Conference on Web ServicesAOP2010 IEEE International Conference on Web ServicesProgramming methodology for separating crosscutting concerns;LoggingCachingSuch concern is represented in a unit called AspectAspectUnit that provides a functionality with a crosscutting cocernEncapsulates behavior that affects multiple classesWeaving rulesSet of rules which indicates in which classes aspects will be appliedAOP2010 IEEE International Conference on Web Services

Web Services2010 IEEE International Conference on Web ServicesWeb services is method of communication between two eletronic devicesIn A web service enviroment SOAP provides interoperability between client and ServiceCommunication happens using XML-encoded messagesSubstantial overhead is induced due to (de)serialization

Web Service response cachingPrevious work on Remote object caching utilizing CORBA, SOAP object, Java RMIThis work does not handle ConsistencySigSitAccelaratortackles the consistency using Cryptographical hashingProposed solution2010 IEEE International Conference on Web ServicesTechnologies:JavaAspectJApache CXFWSTest benchmark suite

Proposed solution2010 IEEE International Conference on Web ServicesTantivy proxyCache textual-based data uzing GZIPLayer betweeen client and server sideCaching and sending hashed object over network

Proposed solution (server side)2010 IEEE International Conference on Web Services

Proposed solution (server-side)2010 IEEE International Conference on Web Services

Proposed solution (client side)2010 IEEE International Conference on Web Services

Experimental Evaluation(Benchmarking)2010 IEEE International Conference on Web ServicesWSTEst Suite BenchmarkingMulti-thread application performing parallel calls simulating real life scenarioReports throughput ( average number of requests performed per second)Reports response time (average time it takes to process a request)

Experimental evaluation(Benchmarking)2010 IEEE International Conference on Web ServicesEchoVoid - sends and receives an empty message. This benchmark performs neither serialization nor deserialization.

EchoStruct - receives an array of arbitrary length as input parameter and returns this array. The structures in the array contain one element each of type integer, float, and string. The longer the array, the more work is required in deserialization and re-serialization of the SOAP object to and from XML.

EchoList - sends and receives a linked list of any size, where each element in the list consists of the same structure as used in EchoStruct.

EchoSynthetic - sends and receives a structure that contains a byte array of varying length.

GetOrder - simulates a request for a complete purchase order for an e-commerce service. This benchmark takes three integer input parameters and returns an order object. The order object is a complex structure that include order header information, a customer structure with shipping address and billing address structures, as well as any number of objects.Experimental evaluation(Results)2010 IEEE International Conference on Web ServicesTime: 600sBandwith: 5Mb/s, 20 Mb/s, 100 Mb/sCache-hit Ratio: 0%, 8%, 13%Mix of invocations (20% for each approach)Client Threads: 600

Experimental evaluation(Results)2010 IEEE International Conference on Web ServicesBandwidth: 5 Mb/sCache-hit ratio: 0%

Experimental evaluation(Results)2010 IEEE International Conference on Web ServicesBandwidth: 5 Mb/sCache-hit ratio: 8%

Experimental evaluation(Results)2010 IEEE International Conference on Web ServicesBandwidth: 5 Mb/sCache-hit ratio: 13%

Experimental evaluation(Results)2010 IEEE International Conference on Web ServicesBandwidth: 100 Mb/sCache-hit ratio: 8%

Experimental evaluation(Results)2010 IEEE International Conference on Web ServicesBandwidth: 20 Mb/sCache-hit ratio: 8%

Experimental evaluation(Results)2010 IEEE International Conference on Web ServicesBandwidth: 20 Mb/sCache-hit ratio: 8%

Conclusion2010 IEEE International Conference on Web ServicesWeb Services have received substantial attention around the opportunities they provide

This paper proposed a new way to address response latency issues

performance can be substantially reduced through caching and compression without any compromise to the strict consistency semantics of service response messages

Tantivy uses hashing to detect similarity with previous results and sends either hashes of results or compressed results rather than original results

Tantivy is the first system that combines the use of hash-based techniques, application object data representation, and data compression techniques with caching of response messages to improve Web Service performanceFuture work2010 IEEE International Conference on Web ServicesWeb Service cache consistency management protocols would help in avoiding consistency problems and in achieving higher cache-hit ratios.

Dinamically compression threshold based on current network conditions

Caching sub elements of a SOAP message for frequently exchange a common set of dataConclusion (reviewer)2010 IEEE International Conference on Web ServicesGood article on avoiding the duplicated payload going over the wire unnecessarily

The article descibres similar response objects but it needs to be identical in order to work;

The article does not mention how the compressed data plus SHA-1 key is sent back to the Tantivy Client;

The article does not show any raw request using the Tantivy Service

The proposed solution does not handle very similar bug big payload;