Will the DMP Control Tag Impact Page Load Performance?

The Control Tag is asynchronous, meaning that it is non-blocking and is optimized for faster page load times. 

The following is a list of performance characteristics, which are either core considerations, or
features of its implementation which make the DMP Control Tag have least amount of impact
on the end-user experience.

Asynchronous - The Control Tag is typically loaded via a JavaScript snippet which in
turn loads the the configuration and the application components asynchronously leaving the
browser free to continue parsing the rest of the page, only executing the code when it is
available.

Minified - This eliminates whitespace (human friendly formatting requires whitespace and
indents which requires additional bytes that machines do not need) making the total amount
of data the client must download over the network smaller and therefore faster.

Compressed - Compression takes two forms where by 1) the JavaScript uses advanced
compression to shorten variable and function names as part of other more sophisticated
optimizations which reduce the total payload size and 2) leverages the ability of the client
browser and the server to exchange data in compressed form (gzip) which also improves
load time (data is downloaded compressed and then uncompressed client side and parsed).

Advanced Compression - The Control Tag Config is not delivered using advanced
compression in order to allow live site debugging and analysis, but the content is still
delivered as compressed data by the server to the client browser as core optimization.

Cached - The Control Tag is versioned and compressed with a far future expiration
which allows the browser to rely on the local cache whenever possible rather than download
the same code with each page view.  The Control Tag Application has a 10 year
expiration which means the client should only have to download it once after a new version is
released.

The Control Tag Config has a 20 minute Time-to- Live (TTL) which represents a
compromise between the need for performance and the ability for customers to modify their
configuration and see those changes within a reasonable period of time.

Delivered via Content Delivery Network (CDN) - The Control Tag Config and
Application are delivered via CDN which is a geographically dispersed set of servers which
which puts content closer to the client improving response and load times by shortening the
distance traveled instead of forcing clients to make network connections all the way to the
origin.  The DMP CDN configuration specifically allows for a regional edge node to serve a
stale object on content expiration while it attempts to validate the content with the backend
for a configurable period time.  Only if the 'stale-while- revalidate' expiration window is
exceeded are requests blocked by the backend which improves content delivery while
minimizing the delays.  As an example, if an object can be cached for 30 minutes (1800
seconds), Salesforce DMP might set a CDN only expiration of 20 minutes (1200 seconds) with a
corresponding 'stale-while- revalidate' of 600 seconds.  As a result, the edge node initiates a
backend request once the 20 minute expiration is reached, but continues to serve the
previously valid content for up to 10 additional minutes until the content is revalidated with
the origin, all transparently behind the scenes ensuring a consistent and reliable and more
importantly, responsive experience for the end-user.

Graceful Degradation - The Control Tag JavaScript code is engineered to fail gracefully
under a multitude of circumstances and leverage whatever information is available via local
storage in the client browser or failing any local browser context, terminate completely and unobtrusively. While the Control Tag JavaScript component degrades gracefully, so
does the backend supporting infrastructure and services which are specifically engineered to
deliver a cached response if available or in the event of a complete timeout serve a synthetic
response which explicitly instructs the Control Tag to leverage whatever information it
has at hand via local storage.  The majority of Control Tag operations and interactions
are designed to be best effort and progressively updated via asynchronous requests.  Our
timeouts are extremely aggressive and are far shorter than the standard defaults.

Have more questions? Submit a request

0 Comments

Article is closed for comments.