Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and...
-
Upload
augusta-mcdowell -
Category
Documents
-
view
213 -
download
0
Transcript of Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and...
![Page 1: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/1.jpg)
Proxy-Based Acceleration of Proxy-Based Acceleration of Dynamically Generated Content Dynamically Generated Content
on the World Wide Web: An on the World Wide Web: An Approach and ImplementationApproach and Implementation
Anindya Dutta et alAnindya Dutta et al
![Page 2: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/2.jpg)
WEB CACHING SOLUTIONS WEB CACHING SOLUTIONS BACKGROUNDBACKGROUND
BACK-END CACHING BACK-END CACHING PROXY-BASED CACHINGPROXY-BASED CACHING
![Page 3: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/3.jpg)
BACK-END CACHINGBACK-END CACHING
DATABASE CACHING(OR RESULTS OF DATABASE CACHING(OR RESULTS OF QUERIES)QUERIES)
PRESENTATION LAYER CACHING PRESENTATION LAYER CACHING (CACHE HTML FRAGMENTS)(CACHE HTML FRAGMENTS)
COMPONENT LEVEL CACHING(CACHE COMPONENT LEVEL CACHING(CACHE ARBITRARY OBJECTS)ARBITRARY OBJECTS)
![Page 4: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/4.jpg)
PROXY-BASED CACHINGPROXY-BASED CACHING
Page Level CachingPage Level Caching
Both at forward and backward proxyBoth at forward and backward proxy
ImprovesImproves– Delays associated with generation of contentDelays associated with generation of content– Packet filtering Packet filtering – BandwidthBandwidth
![Page 5: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/5.jpg)
DRAWBACKSDRAWBACKS
URL BASED CACHING INCORRECT URL BASED CACHING INCORRECT PAGES.PAGES.
VERY LITTLE REUSABILITY OF FULL VERY LITTLE REUSABILITY OF FULL HTML PAGES(PERSONIZATION)HTML PAGES(PERSONIZATION)
INVALIDATIONINVALIDATION
![Page 6: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/6.jpg)
DYNAMIC PAGE ASSEMBLYDYNAMIC PAGE ASSEMBLY
DYNAMIC WEB PAGE APPROACHDYNAMIC WEB PAGE APPROACH
ESTABLISH A TEMPLATE FOR EACH ESTABLISH A TEMPLATE FOR EACH DYNAMICALLY GENERATED PAGEDYNAMICALLY GENERATED PAGE
EACH PAGE IS FACTORED INTO A EACH PAGE IS FACTORED INTO A NUMBER OF FRAGMENTSNUMBER OF FRAGMENTS
ASSEMBLE FRAGMENT HTML AT ASSEMBLE FRAGMENT HTML AT PROXYPROXY
![Page 7: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/7.jpg)
DRAWBACKSDRAWBACKS
CHANGE THE DESIGN OF CHANGE THE DESIGN OF WEBSITE(USE ONLY TEMPLATES)WEBSITE(USE ONLY TEMPLATES)
NO SEMANTIC INTERDEPENCE NO SEMANTIC INTERDEPENCE BETWEEN FRAGMENTSBETWEEN FRAGMENTS
![Page 8: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/8.jpg)
AIMAIM
““Holy GRALE” of content caching has beingHoly GRALE” of content caching has being
a solution that can provide both bandwidtha solution that can provide both bandwidth
Saving, like proxy-based approaches and Saving, like proxy-based approaches and
as well as server-side acceleration.as well as server-side acceleration.
![Page 9: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/9.jpg)
![Page 10: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/10.jpg)
DYNAMIC PROXY CACHEDYNAMIC PROXY CACHE
OUTSIDE SITE’S INFRA (reverse-OUTSIDE SITE’S INFRA (reverse-PROXY) OR AT NETWORK EDGEPROXY) OR AT NETWORK EDGE
STORES CONTENT FRAGMENTSSTORES CONTENT FRAGMENTS
BEM(BACK END MONITOR) BEM(BACK END MONITOR) GENERATES THE LAYOUTGENERATES THE LAYOUT
FORWARD-PROXYFORWARD-PROXY– Request routingRequest routing– Cache coherencyCache coherency
![Page 11: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/11.jpg)
GRANULAR PROXY BASED CACHINGGRANULAR PROXY BASED CACHING
CACHE DYNAMIC CONTENT CACHE DYNAMIC CONTENT FRAGMENT ON THE PROXY CACHEFRAGMENT ON THE PROXY CACHE
LAYOUT INFORMATION FROM LAYOUT INFORMATION FROM SOURCE SITESOURCE SITE
QUERY TO DYNAMIC PROXY QUERY TO DYNAMIC PROXY
PUSH INTO SERVER PUSH INTO SERVER
SERVER RESPONDS WITH LAYOUT SERVER RESPONDS WITH LAYOUT
![Page 12: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/12.jpg)
Technical DetailsTechnical Details
SYSTEM INITIALIZATIONSYSTEM INITIALIZATION– Identify fragments and Tag themIdentify fragments and Tag them
RUN-TIME OPERATIONRUN-TIME OPERATION– ExampleExample– http://.../catalog.jsp?categoryID=fictionhttp://.../catalog.jsp?categoryID=fiction– Lookup fragID in BEMs cache dirLookup fragID in BEMs cache dir– Insert GET /SET in the codeInsert GET /SET in the code
![Page 13: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/13.jpg)
Back End MonitorBack End Monitor
MANAGE DPC CACHEMANAGE DPC CACHE– cache directorycache directory– Frags of DPC and metadata(ID,Key,valid,ttl)Frags of DPC and metadata(ID,Key,valid,ttl)– Invalid fragment??Invalid fragment??
CACHE INTERMEDIATE OBJECTSCACHE INTERMEDIATE OBJECTS
![Page 14: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/14.jpg)
ANALYTICAL RESULTSANALYTICAL RESULTS
Comparing average bytes served = BComparing average bytes served = B
B = sum(Sci x n(t))B = sum(Sci x n(t))
ncSci = sum(Sei) + fncSci = sum(Sei) + f
cSci = sum(Xj[(hxg) + (1-h)(sei + 2g)] + (1-cSci = sum(Xj[(hxg) + (1-h)(sei + 2g)] + (1-Xj)(sei) + f]Xj)(sei) + f]
Plot ratio cB/ncB with fragment sizePlot ratio cB/ncB with fragment size
Vary hit ratio and observeVary hit ratio and observe
![Page 15: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/15.jpg)
![Page 16: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/16.jpg)
Hit Ratio V/s Saving in Bytes Hit Ratio V/s Saving in Bytes
![Page 17: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/17.jpg)
Cost Due to CacheCost Due to Cache
No cache scan cost = ncB * yNo cache scan cost = ncB * y
Cache Scan cost = cB*2yCache Scan cost = cB*2y
ncB > 2cBncB > 2cB
““It is preferable to dynamic proxy cache It is preferable to dynamic proxy cache when the expected bytes served with no when the expected bytes served with no cache are more than the twice the cache are more than the twice the expected bytes served with cache”expected bytes served with cache”
![Page 18: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/18.jpg)
![Page 19: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/19.jpg)
![Page 20: Proxy-Based Acceleration of Dynamically Generated Content on the World Wide Web: An Approach and Implementation Anindya Dutta et al.](https://reader036.fdocuments.in/reader036/viewer/2022082816/56649f535503460f94c776fc/html5/thumbnails/20.jpg)
LIMITATIONSLIMITATIONS
For forward proxy cacheFor forward proxy cache– Request RoutingRequest Routing– Cache CoherencyCache Coherency– Cache ManagementCache Management– ScalabilityScalability