Scaling with Wowza Media Cache

Wowza Media Cache is a caching mechanism that runs on Wowza Streaming Engine™ software. It's specifically designed for caching large video on demand (VOD) assets efficiently. It can cache assets from various sources either through networked file systems or through regular HTTP requests to a web server or storage server. It can also be used with edge server DVR workflows to cache content from an origin server application that's running Wowza nDVR.


How Media Cache works
Media Cache sources
More resources

How Media Cache works

Wowza Media Cache differs from most regular caches in the way that it caches content. With a regular cache, content is only cached once after it's completely downloaded. This is very inefficient for large VOD files and, in most cases, the files are too large for a regular cache to handle anyway. Wowza Media Cache caches partial content so it only caches what's actually requested. If a user only views a short portion of a file, only that portion is initially cached. When another user views the same content, they'll initially get the cached content and then, after they get to the end of the cached content, Media Cache automatically starts caching the new content. After the content hasn't been watched for a period of time, it's automatically flushed from the cache to make room for new content.

Media Cache sources

Multiple content sources can be configured in a Media Cache configuration and each can be accessed separately by applications that are enabled to use the Media Cache. There are currently two types of sources, HTTP-based sources and file-based sources.

HTTP sources

HTTP-based Media Cache sources are probably the most common used. Generally, any web-based storage system that supports HTTP HEAD requests and HTTP Range requests can be used as an HTTP source. These could be standalone HTTP servers or storage networks. Currently, Media Cache authenticates directly with Amazon S3 and will support authentication with other storage network providers in the future. When content is first requested, Media Cache sends an HTTP HEAD request to the storage server to get information about the content. Then it sends a series of HTTP Range requests to retrieve the actual content.

File-based sources

Remote storage servers connected to the Wowza media server as a networked file system can be used as a file-based source. Media Cache retrieves content from the file system in much the same way that the Wowza media server would retrieve it directly; however, it does so more efficiently by only retrieving the content once instead of every time a player requests it. This reduces the number of requests to the networked storage server.

More resources

How to scale video on demand streaming with Media Cache
Wowza Streaming Engine Media Cache User's Guide (PDF)
Load balancing overview
Originally Published: For Wowza Streaming Engine on 01-13-2015.

If you're having problems or want to discuss this article, post in our forum.