Image Number 7 for United States Patent #7680848.
In a multi-tenant environment, synchronous processing requests from clients associated with tenants are handled by middle tier servers, which forward requests for asynchronous processing to queues associated with organizational databases for each tenant directed by a locator service. A group of independent asynchronous processing servers are used to perform the asynchronous processing interacting with the databases in a distributed manner. The allocation of the requests among the asynchronous servers is managed by an exponential back off for organizations with no waiting requests algorithm combined with a quota system based on historic load for organizations that have requests. The independence of the synchronous and asynchronous processing servers, as well as the distributed interaction between the asynchronous processing servers and the databases enables scalability of the system based on request types and implementation of reliable recovery mechanisms.