Distributed Architecture

Increased Reliability and Capacity

(AUG 2007) — The LumenVox Speech Engine comes out–of–the–box with all the technology you need to integrate it into your fully distributed and load–balanced environment. Incorporating the Speech Engine into such an environment means that you can distribute the Speech Engine software across multiple machines. If one machine becomes busy or otherwise unavailable, you can continue to perform speech recognition on the rest of your servers.

Why Use Distributed Architecture?

Redundancy: If all of your speech processing, licensing and incoming or outgoing trunks run through the same server, you truly have your eggs in one basket. Avoid having one single point of failure and risk your application being off line by using distributed architecture.

Performance: You can achieve a more robust application with improved performance by dedicated different servers for different tasks. For example, your speech recognition server is separate from your application server, which is separate from your licensing server. This removes competition for processing power and enables a "purity" of tasking for each server.

Ability to Scale: As demand for your speech solution grows with either call volume or speech recognition use, so can your ability to scale. It can be as simple as adding an additional application server to your architecture to handle your growing needs. Upgrading becomes a more efficient task if your application is set up in a distributed way from the start.

Why Use Distributed Architecture?

The LumenVox Speech Engine works quite well in distributed environments. The Engine software includes both a client and a server. The speech client interfaces with your application or platform and the speech server performs the actual speech decodes.

By installing the Speech Engine on two machines, a speech client on one machine may communicate with a speech server on another. This means you can move the intensive work of performing speech decodes to a machine that is not also running your platform or application, splitting the load among two computers.

If you wish to have more distribution, you can install the Engine on a cluster of machines. You can have multiple speech clients communicating with multiple speech servers, allowing you to accommodate very heavy traffic.

The speech client has a built–in server monitor that will regularly check a list of speech servers. If a speech server is taken offline for some reason, the client's server monitor will not attempt to send decodes to that server. If that speech server is put back online, the speech clients will begin sending decodes to that server again.

The speech client's server monitor will also automatically send new decodes to the server that is the least busy, automatically performing load balancing across a cluster.

Because LumenVox licensing is also distributed, you can install the Speech Engine on as many machines as you would like, regardless of the number of licenses you have. Speech clients will only use a license while a speech port is open, and they can be configured to look for licenses on a license server you specify.

LumenVox Distributed Architecture Chart

Above is an example of the LumenVox software being used in a distributed environment by Ontelnet, one of our customers. The Ontelnet application runs on multiple machines, each with the LumenVox Speech Engine's client running on it. Those speech clients each talk to various speech servers and license servers.

Interested in more about distributed architecture? Check out our whitepaper on distributed speech architecture at LumenVox.com. More

Controlling Which Servers Are Used

The Engine API includes a property called PROP_EX_SRE_SERVERS that is set using the SetPropertyEX function.

This property takes as a value a list of IP addresses and ports, separated by semicolons. Specifying ";" would tell the Engine to use two servers, one at on port 5730 and another at using port 5721.

If you are using the LumenVox Speech Engine with a telephony platform, check with your vendor or contact LumenVox support for instructions on how to send decodes to different servers.

News and Notes

See us at SpeechTEK 2007, in New York City from Aug. 20–23. We will be at booth 303. For a free VIP pass to the show, register using the code VIPLUM. More

As usual, we've been making regular updates to our online training videos. We have new videos covering the basics of speech recognition and troubleshooting Linux installations of the Speech Engine. We now have more than 25 short training videos on a host of topics, so if you haven't stopped by yet, we recommend you do today. More

The Speech Resources section of our Web page also contains several useful articles on this and other subjects. More

Version 8.0 of the LumenVox products, including the Speech Engine, will be available this month. Version 8 includes all of the improvements since 7.0 was released last year, as well as new enhancements such as faster grammar compilations and improved confidence scores for several domains.

For information on downloading the latest releases of the LumenVox software, please contact us. It is a free download for users with current software maintenance packages.

For a full list of changes since last year, see the Speech Engine Release Notes.

© 2016 LumenVox, LLC. All rights reserved.