I am in process of building Mash up mobile application. I need to call my API Provider and integrate with Facebook , twitter etc. During this process, I have to make multip
Programming level - use code optimization/threading/parallel programming.
API level - use pagination/filters/ranges to generate fine-grained data that is tailored to the need of the client.
Cache - Have heard somewhere that the "fastest HTTP call is the one that you don't make" that is, use caching(Memcache/Redis), most of the requests are read operations, wise use of cache control headers are also useful. That spares the database from serving repeated read requests which are expensive. (Not sure if Etags can be of any use ?)
Request/Response - Use JSON serializer and gZip compress techniques for the data transmitted over the web.
Geography - Account for the distance between end users and origin servers, we can use CDNs for storing the static contents of the response, so that it can be served real fast.
(Have heard about asynchronous methods/reactive programming which improves the performance of APIs, but not so sure)