Common Deployment Architecture: Multiple Tiers

Ooyala recommends a multi-tier design for your server deployments.

For best performance for your viewers and efficiency of your own services, plan a server architecture with "separation of concerns," a typical design with multiple tiers of servers, each tier dedicated to fulfilling some portion of the overall service. A simple conceptual view is shown below, with the commonplace tiers of front, middle, and back.

Front At the front is your web site.

Ooyala recommends that you implement a caching subsystem on the front to hold results of database or other queries. This is the most performant way to serve your viewers. Best Practices has more information.

A representative programming language on the front is JavaScript, with auxiliary tools like JQuery (for database retrieval) and others. (Of course, many different programming languages are used.)

Middle Typically the middle tier is some sort of database or other services intermediate between front and back.

The middle communicates with Ooyala services on the back through application programming interfaces (APIs) and other mechanisms. Data retrieved from Ooyala is commonly stored in the middle database for serving the front.

Not all architectures use or need a middle tier, which is probably most common in large scale deployments. If there is no middle, then the front itself commonly serves the functions that might commonly be relegated to the middle.

Back In this simple recommended architecture, the back is composed of Ooyala's API and other services. (Not all services are shown, nor are your own back-end services.)

For a list of API server names and an overview of their functions, see API Server Endpoints.