zf1 icon indicating copy to clipboard operation
zf1 copied to clipboard

Added extra layer of caching / reduce load on Redis

Open maximbaibakov opened this issue 7 years ago • 4 comments

Zend_Locale_Data returns a formatted locale string based on the input. Once string is proceed it stored into cache storage File or Redis or Memcache or MySQL. Every time someone is asking for the same formatted locale string, it will get it from cache.

However, if the same execution is asking for the same locale string, it always looking into the cache storage. Ideally, we can store result in temporary variable to reduce the load on remote cache storage.

Example:

  • There is a booking website
  • There are number of providers who have their open hours
  • Zend_Date function is in use to present data in correct locale
  • Open hour from each provider going via Zend_Date function to display the right date / locale.
  • Page has about 20-50 providers, in some cases, the number of calls to cache storage (e.g. Redis) could jump to 22,000+ on page load.

This commit introduced a temporary variable to store a cache for a single page load.

maximbaibakov avatar Oct 01 '18 22:10 maximbaibakov

CLA assistant check
All committers have signed the CLA.

magento-cicd2 avatar Oct 01 '18 22:10 magento-cicd2

Hello @maximbaibakov,

Thank you for contribution. We begin to process the PR.

naydav avatar Dec 09 '19 16:12 naydav

FYI, In OpenMage we have included similar optimization already See file https://github.com/OpenMage/magento-lts/blob/1.9.4.x/lib/Zend/Locale/Data.php

tmotyl avatar Aug 03 '20 08:08 tmotyl

Hey @tmotyl nice! Hey @naydav do you have any update on this?

maximbaibakov avatar Aug 03 '20 09:08 maximbaibakov