1. Go to this page and download the library: Download whales/cache library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
whales / cache example snippets
// Service in need of caching and stampede protection
$callableService = function ($key) { return 'resourceIntensiveData'; };
// Would need to be database-backed lock to actual work in the example
// since the InMemoryLock has a per request lifecycle.
$lock = new Cache\StampedeProtection\Locks\InMemoryLock;
$memcached = new \Memcached();
$memcached->addServer('127.0.0.1', 11211);
$transientCache = new Cache\Maps\MemcachedCacheMap($memcached);
// Acts as stale cache while service is processing data
$persistentCache = new Cache\Maps\PdoCacheMap(
new \PDO('mysql:host=localhost;dbname=test'),
'cache'
);
$cachedService = new CallableServiceCachingDecorator(
new MutexLockAcquiringDecorator(
$callableService,
$lock,
$persistentCache
),
new LockReleaseOnSettingCacheMap(
new LinkedNodeCacheMap(
$transientCache,
new LockAffectedCacheMap(
$persistentCache,
$lock
)
),
$lock
)
);
$data = call_user_func($cachedService, 'key1234');
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.