Caching results from an API via drupal_http_request I need to frequently access a restful API via drupal_http_request. I am doing this in a custom View. Is there anyway to cache this data so that I don't need to as frequently query the servers?
You could use the Drupal's cache API to store the response doing something like:

if (!cache_get('my_module_cache')) {
  $data = drupal_http_request($url, $options); // Add the param for the request to web service
  cache_set('my_module_cache', $data, 'cache',  REQUEST_TIME  + (3600 * 24 * 30 * 6)); // Stores in cache table and expires after 6 months
  return($data);
} else {
  $return = cache_get('my_module_cache');
  return($return-&gt;data);
}


Depending on how many times you need to get that cached value on same execution, you could also use drupal_static().

On the example that I provided above, the expire policy is only based on time (6 months), in your case, you will need to analyse carefully the expire policy you are going to implement to expire/renew the cached value.

Lullabot has a great article about Drupal cache: A beginner's guide to caching data