Amplify Dashboard

The (IAC) V10 Registry Settings lists the registry settings used to configure, control and tune the INXPO Amplify server product.

AdaptiveCache Values

Name Type Comments
IACServerID String This is the Server ID supplied by INXPO that uniquely identifies this server in the Amplify ecosystem. This MUST match exactly to what is configured in the INXPO platform.
LockSpinCount Integer The number of iterations to wait for a resource to become available before entering a full wait lock state. This is an advanced tuning optimization setting and should not be adjusted without guidance from INXPO.
DefaultTTL Integer This is the server-wide default Time To Live (in seconds) before expiring/invalidating cache for non-live files loaded by the Amplify server. This setting may be overridden at a given Cache Manager level.
LiveFileDefaultTTL Integer This is the server-wide default Time To Live (in seconds) before expiring/invalidating cache for live files loaded by the Amplify server. Live files are defined as manifest files that are in a live mode. This setting may be overridden at a given Cache Manager level.

Live files detected by Amplify:

Extension Type Detection Method Additional Actions
.m3u8 HLS Lack of the closing manifest tag #EXT-X-ENDLIST. Server attempts to extract the last entry in the file and determine its duration. If found, the file TTL is set to the detected duration. Otherwise, it is set to the Cache Manager Live File TTL. Also, no-cache HTTP headers are set when serving this file. If absolute paths are detected in file segment entries and the setting RewriteLiveManifests is set to non-zero, these are replaced to point to the Amplify server.
.mpd DASH All files are processed. If absolute paths are detected in the file segment entries and the setting RewriteLiveManifests is set to non-zero, these are replaced to point to the Amplify server.
(various) Smooth Streaming If the MIME type is text/xml and the Smooth Streaming manifest marker tag The file cache TTL is set to the Cache Manager Live File TTL. Also, no-cache HTTP headers are set when serving this file.
LoaderThreadPoolCount Integer This is the number of threads in the thread pool that loads files from origin servers for all defined Cache Managers. Under heavy load, increasing this value may improve throughput and concurrency.
ConnectTimeout Integer The number of milliseconds to wait for a connection to be established to an origin server before timing out when retrieving a file.
ReceiveTimeout Integer The number of milliseconds to wait for a response from an origin server when retrieving a file before timing out.
StdFileOriginPath String The directory path prefix to strip/ignore when retrieving files from origins. This prefix allows for differentiation between files served by a purpose-built Amplify server integrated with INXPO webcasting versus a general purpose Amplify installation. General purpose installations will typically have this value be blank.
FreeListMaxSize Integer The number of file objects kept available for immediate reuse in the server, rather than having to be reallocated. For busy servers, increasing this value may provide better concurrency and throughput at the expense of memory usage.
NumIdleSecondsForPurge Integer The number of seconds of no access/activity against a file in cache before it is removed from cache and freed. Lowering this value will lower the memory requirements of the server at the potential cost of more origin retrievals. Raising this limit will allow files to live longer in cache before being removed, at the cost of increased memory usage.
PurgeCheckTimeInterval Integer The number of seconds between running the cache purge routine, which checks for expired files and removes them. For busy servers, increasing this value may provide better concurrency and throughput, as the purge routine locks the list of files as it checks them, at the expense of memory usage, due to stale cache files remaining in cache longer.
AsyncWrites Integer [0/1] flag indicating whether to write responses asynchronously. This should only be adjusted when debugging. This is an advanced tuning optimization setting and should not be adjusted without guidance from INXPO.
LogFilePath String The path where the server log file should be written. The directory path must exist. There are some replacement variables available for dynamically building the file name. They may be used in combination as well.

Variable Description Example
{ProcessID} The Windows process ID of the server. C:\IAC\Logs\ServerLog-{ProcessID}.log
=>
c:\IAC\Logs\ServerLog-4458.log
{Timestamp} The current date and time in YYYYMMDDHHMM format. C:\IAC\Logs\ServerLog-{Timestamp}.log
=>
c:\IAC\Logs\ServerLog-201803021138.log
ClearLogFilesAfterDays Integer The number of days after which to purge old log files when the server starts up. The account that the server runs under must have delete rights to the folder containing the log files.
PropagatePUTThreadCount Integer This is the number of threads in the thread pool that pushes files received via PUT requests to configured downstream Amplify servers for all defined Cache Managers. Under heavy load, increasing this value may improve throughput and concurrency.
VHS String The domain name of the INXPO home server that Amplify will push its statistics to and receive directives from. This value should NOT contain protocol information, just the DNS name.

AdaptiveCache Cache Manager Subkeys

Each cache manager is defined as a subkey under the AdaptiveCache key. The format of each subkey is CMx where x is a number between 1 and 49. And example would be CM1 or CM2. The values for each Cache Manager are listed in the following section.

AdaptiveCache Cache Manager Values

The Stats tab contains four customized enabled graphs, Throughput, Exceptions, Offload and Users.

Throughput graph measures the amount of data being Served, Read and Cached by the Amplify server. The data can be viewed by General VTS file, Streaming and by an Aggregate amount.

Name Type Comments
Description String Description/Name of this Cache Manager.
IncludeQueryString Integer [0/1] flag indicating where the Cache Manager should include the query string when determining whether this cache can service the current request based on the Match List. This is an advanced tuning optimization setting and should not be adjusted without guidance from INXPO.
RewriteLiveManifests Integer [0/1] flag indicating whether the Cache Manager should replace absolute domain name URLs in live manifest files with the domain name of this Amplify server. This is an advanced tuning optimization setting and should not be adjusted without guidance from INXPO.
LockSpinCount Integer The number of iterations to wait for a resource to become available before entering a full wait lock state. If omitted, this defaults to the AdaptiveCache server setting. This is an advanced tuning optimization setting and should not be adjusted without guidance from INXPO.
RewriteLiveManifests Integer [0/1] flag indicating whether the Cache Manager should replace absolute domain name URLs in live manifest files with the domain name of this Amplify server. This is an advanced tuning optimization setting and should not be adjusted without guidance from INXPO.
DefaultTTL Integer Default Time To Live (in seconds) before expiring/invalidating cache for non-live files loaded by the Amplify server. If omitted, this defaults to the AdaptiveCache server setting.
LiveFileDefaultTTL Integer Default Time To Live (in seconds) before expiring/invalidating cache for live files loaded by the Amplify server. If omitted, this defaults to the AdaptiveCache server setting. Live files detected by Amplify:

Extension Type Detection Method Additional Actions
.m3u8 HLS Lack of the closing manifest tag #EXT-X-ENDLIST. Server attempts to extract the last entry in the file and determine it's duration. If found, the file TTL is set to the detected duration. Otherwise, it is set to the Cache Manager Live File TTL. Also, no-cache HTTP headers are set when serving this file. If absolute paths are detected in file segment entries and the setting RewriteLiveManifests is set to non-zero, these are replaced to point to the Amplify server.
.mpd DASH All files are processed. If absolute paths are detected in file segment entries and the setting RewriteLiveManifests is set to non-zero, these are replaced to point to the Amplify server.
(various) Smooth Streaming If the MIME type is text/xml and the Smooth Streaming manifest marker tag The file cache TTL is set to the Cache Manager Live File TTL. Also, no-cache HTTP headers are set when serving this file.
LongLoadTimeLimit Integer Time, in milliseconds, that a file retrieve from an origin must exceed before logging it as a long load time.
FilePathRetryCount Integer The number of times to retry loading a file that has failed with file not found, sharing violations, path not found and access denied. The system will retry reading the file FilePathRetryCount times before returning a 404. This setting ONLY applies to UNC pathname based origins. This allows for smoother interaction serving files from programs that generate files with exclusive locking or delayed writing methods or other exclusive access interaction.
FilePathRetryDelay Integer Time, in milliseconds, that the system waits before retrying to read a file that failed with file not found, sharing violations, path not found or access denied errors from a UNC pathname origin.
ChunkedReadDelay Integer Time, in milliseconds, that the system waits before reading the next block of ChunkedReadSize bytes from a UNC pathname based origin file. This is useful if read speeds need to be throttled on a overtaxed file server. This value is only used if ChunkedReadSize is defined and non-zero.
ChunkedReadSize Integer Chunk size, in bytes, which to read the file in increments of. If omitted or zero, the entire file is read in one operation. This is useful if read speeds need to be throttled on a overtaxed file server.
PropagatePUTRequests Integer [0/1] flag indicating whether to propagate PUT requests to the list of downstream servers specified by PropagatePUTServerList. This controls whether this Amplify server will push content downstream automatically in response to content being pushed to it via PUT requests.
HTTPUID String HTTP User ID credential that can be specified if origin servers require HTTP authentication.
HTTPPwd String HTTP Password credential that can be specified if origin servers require HTTP authentication.
OriginConnectSSL Integer [0/1] flag indicating the default of whether to use SSL (https) when connecting to origin servers if not explicitly specified in the origin server definition.
OriginPort Integer Default port number to use when connecting to origin servers if not explicitly specified in the origin server definition.
OriginList Multi-String Value The origin list is the list of servers that Amplify will query to retrieve content from when requested. If more than one origin is listed, the first in the list will be the primary origin and, if that origin fails, the Amplify server will automatically fail over to the next origin in the list. The origin server entries also define the type of origin this is (web url-based, UNC pathname-based), as well as other configuration information regarding connecting to the origin, such as port, SSL and whether the origin server is, itself, another Amplify server.

Format of the Origin Server definition string: DNS name or UNC Pathname, Use SSL flag, Port number, Is an Amplify Server flag, Is UNC pathname flag, Virtual directory strip list

Each of these are detailed below:

Element Type Description
DNS name or UNC Pathname String For Web Origins:
This is the DNS name of a web server that this server will retrieve content from. This content is retrieved using web HTTP or HTTPS calls, depending upon the SSL setting. Only put the DNS name and do NOT put protocol. Example: onlinexperieces.com

For UNC Pathname Origins:
This is the UNC pathname of the root that this server will read content from. This content is read using standard file server disk I/O in a read-only fashion. Example: \\MyFileServer.myorg.dmz\WebContent

Use SSL Flag Integer [0/1/space] flag indicating whether to use SSL (https) to retrieve content. To use the Cache Manager or AdaptiveCache defaults, simply leave this parameter blank.
Port Number Integer The port number to use when connecting to this web origin server. To use the protocol default (http:80 or https:443), simply leave this blank.
Is an Amplify Server Integer [0/1] flag indicating that this origin is itself another Amplify server. This flag will control whether the StdFileOriginPath value is prepended to the resource url.
Is UNC pathname Integer [0/1] flag indicating whether this origin is a UNC pathname [1] or a web server origin [0/blank].
Virtual directory strip list String For use with UNC pathname origins, this is the list of virtual directories to strip off of file requests. The list of directories is delimited by the pipe [|] character. Can be left blank if extraneous virtual directories that do not map directly to the file system directory structure are not used, or if this is a web-based origin.
MatchPatterns Multi-String Value The Match Patterns list is what determines what files and directories this Cache Manager services. When a request is received, the URL of that request is matched up against the list of terms defined in this match list. These terms may be path names [/MediaFiles/] or file extensions [.jpg] or any combination that identifies what this Cache Manager's origin can serve.
PropagatePUTServerList Multi-String Value The Propagate PUT Server list identifies which downstream Amplify servers should automatically be pushed content when this server receives that content as a PUT request. Each server listed will be pushed the content automatically. Servers in this list MUST contain the protocol and server DNS name or IP address. Examples include http://10.11.12.44 and https://chicago-amplify.myorg.com.