Patent attributes
A system and method is disclosed for allocating servers across a large number of applications and for providing a predictable and consistent service response under conditions where the use of the service and associated loads is driven by unknown factors. The invention provides fault tolerance within an application through multiple resources per application and fault tolerance across applications by limiting the overlap in resources between applications. The computational load on the service may include both individual processing time due to the complexity of a single request and the number of requests. Complexity may be unpredictable because the service is self-provisioned and may allow service users to create an arbitrary sequence of compound processing steps. The number of requests may vary due to a variety of events, including daily, seasonal, or holidays, or factors driven more directly by the user of the service, such as sales, advertising, or promotions. The invention throttles server loads to provide managed degradation of application processing. The system has application in personalization, behavioral targeting, Internet retailing, personalized search, email segmentation and ad targeting, to name but a few applications.