Skip to content

Instantly share code, notes, and snippets.

@koras
Created October 4, 2023 07:31
Show Gist options
  • Save koras/d62b75d3c06b07893462b652896b3a27 to your computer and use it in GitHub Desktop.
Save koras/d62b75d3c06b07893462b652896b3a27 to your computer and use it in GitHub Desktop.
public static function getItemSurchargeCash($itemID, $partnerID = 0, $price = null) {
// Создайте новый объект Memcached
$memcached = new Memcached();
// Добавьте сервер Memcached (обычно это localhost на порту 11211)
$memcached->addServer('localhost', 11211);
// Создаем ключ кэша на основе параметров запроса
$cacheKey = "getItemSurcharge:itemID={$itemID}:partnerID={$partnerID}:price={$price}";
// Попытка получения результата из кэша
$cachedSurcharge = $memcached->get($cacheKey);
if ($cachedSurcharge !== false) {
// Если результат найден в кэше, вернем его
return $cachedSurcharge;
}
// Если результат не найден в кэше, выполним расчет
// ... (ваш существующий код)
$surcharge = self::getItemSurcharge($itemID, $partnerID = 0, $price = null);
// После выполнения расчета, сохраняем результат в кэше
$memcached->set($cacheKey, $surcharge, 3600);
// Cache::put($cacheKey, $surcharge, 600); // В данном случае, кэширование на 60 секунд
return $surcharge;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment