Basic Tuning with MediaCache in your Workflow

We have seen time and again the need to modify your default properties for your MediaCache setup. There are a few items to consider upon the following cases:

1. Slow to respond source file sources

If you have trouble with buffering during the playback of your file, one common cause is that MediaCache, by default, is set to only fetch the next block of data upon the file being read 50% way through  the previous fetch.  If you set this property to be 20-25% it will allot more time for MediaCache to keep up with demand.  You can set this property within your MediaCacheSources/MediaCacheSource as follows:

<ReadAheadThreshold>20</ReadAheadThreshold>

2. Too many requests to your source server

Another common issue is to leave your DefaultBlockSize at 256kb of which is 9 times out of 10 too small for a scalable requests size.  We’d typically suggest between 1-3MB in this value of which will cut down significantly on total number of these requests.  Under MediaCacheSources/MediaCacheSource change the following:

<DefaultBlockSize>2M</DefaultBlockSize>

3.  HTTP Request Timeout

For HTTP sources, it is also good to ensure you’ve specified a timeout for read requests as to avoid any hangups within the server.  Add the following property to MediaCacheSources/MediaCacheSource/Properties:

<Property>
<Name>httpReadTimeout</Name>
<Value>3000</Value>
<Type>Integer</Type>
</Property>

4. WriteRate and WriteRateMaxBucketSize

If you have an SSD drive, I’d highly suggest modifying your MediaCacheStores/MediaCacheStore write rate values to be about double the defaults.   Assuming about 25% of a sustained I/O rate of 150MBps, you’d be looking at 38MBps.  Thereafter, you can increase the bucket size to 152M as follows:

<WriteRate>38M</WriteRate>
<WriteRateMaxBucketSize>152M</WriteRateMaxBucketSize>

 


Comments are closed.