Patent ID: 7953603
Filing Date: 2011-05-31
Classification: G06F,G10L,H04W

Abstract:
1. A machine readable storage including a set of instructions for load balancing, said storage comprising: identifying a plurality of different load balancing algorithms, each stored in a tangible storage medium and executing, via hardware capable of running the load balancing algorithms, within one of a plurality of different voice servers, each load balancing algorithm generating a speech utilization score that reflects an ability of the corresponding voice server to accept additional requests for speech services, wherein each load balancing algorithm is uniquely tailored for the voice server to which it corresponds, wherein each load balancing algorithm calculates the speech utilization score for the corresponding voice server based upon at least three speech processing specific factors of that voice server; at least one plug-in receptor hosted within a load balancer comprising software stored on a tangible storage medium and executable by computing equipment that is remote from any of the different voice servers, wherein the plug-in receptor is compliant with a known industry standard and is associated with the plurality of different load balancing algorithms; and the load balancer operable to utilize the speech utilization scores produced by the voice servers executing the load balancing algorithms to determine which of a plurality of different voice servers are to handle incoming speech processing requests, wherein the speech processing specific factors used to calculate the speech utilization score include at least three factors selected from a group consisting of a number of allocated ASR engines, a number of allocated TTS engines, a number of configured ASR engines, a number of configured TTS engines, a CPU MHz per channel for ASR, a CPU MHz per channel for TTS, a duty cycle for ASR, a duty cycle for TTS, an average ASR latency, an average TTS latency, an average ASR grammar size, an average TTS grammar size, a total number of ASR processing requests, a total number of TTS processing requests, a number of active speech processing sessions, a total number of concurrent speech processing sessions permitted, an average length of ASR engine usage per session, and an average length of a TTS engine usage per session.