Understand caching of extended Tank Strapping tables
- Last UpdatedApr 24, 2025
- 2 minute read
To improve the performance of the lookup procedure used by Extended Tank Strapping, two levels of caching are utilized as follows.
Level 1 Caching
When the initial request is made to convert Level to Volume for a tank that uses Extended Tank Strapping, a call to the Business Logic Tier (BLT) is made to retrieve the Tank Strapping table for that tank and the returned information is cached. This is known as level 1 caching. When future requests are made, before calling the BLT, the cache is checked first to avoid the overhead of calling the BLT. The level 1 cache is refreshed every 60 seconds. First, a lightweight call is made to the Historical database to check if there is an update to the revision numbers of all tables. Then, a refresh is requested via the BLT only for new, modified, or deleted strapping tables. The refresh frequency for this cache level can be configured by using the following property:
STRAPPING_SYNCHRONIZATION_FREQUENCY_MS_LEVEL1 found in LMS.TankStrapping.json.
Level 2 Caching
The BLT responsible for converting levels to volumes initially loads all Tank Strapping data from the Historical database into its cache. This is known as level 2 caching.
After the initial load, the level 2 cache is refreshed every 60 seconds from the Historical database. First, a lightweight call is made to the Historical database to check if there is an update to the revision numbers of all tables. Then, a refresh is requested from the Historical database only for new, modified, or deleted strapping tables. The refresh frequency for this cache level can be configured by using the following property:
STRAPPING_SYNCHRONIZATION_FREQUENCY_MS found in LMS.TankStrapping.json.