Cache AWS Responses Locally

You can improve application performance by saving Amazon data locally and updating it on a regular schedule.

If you find your application requesting the same data from Amazon over and over again, you may be able to speed things up by caching the data locally. Why make the same request for live data again and again if you’re getting the same data each time? A local version will always be faster. Also, if Amazon’s server happens to be down for maintenance, you can rely on your local cache to make up for it.

Tip

As mentioned in the previous hack, Amazon requires that the data you display on your site be up to date. The Web Services Licensing Agreement says that data must be updated every 24 hours. If you want to cache data for longer periods of time, you’ll need a written agreement from Amazon.

Adding a data cache requires just a few lines of extra code and can make your applications much more efficient. There are many approaches to caching data; the code here shows two different ways to go about it.

Cache in Memory with ASP

This ASP code stores the Amazon XML response as an Application variable, which means the code is available to the entire application in memory. Storing data in memory makes it available for quick access, but memory is a limited commodity. This is a great solution if you’re storing only a few responses locally.

Along with the cached XML, this code sets a DateCached application variable that stores when the data was last saved. A check at ...

Get Amazon Hacks now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.