Mysql
 sql >> база данни >  >> RDS >> Mysql

Memcache - съхраняване на mysql резултати

Не можете да съхранявате резултатния обект, не, но можете да извлечете всички редове в масив и да съхраните този масив. Ако имате нужда от рефакторинг на вашия код на други места, зависи от това как сте написали кода си и колко добре сте абстрахирали достъпа до базата данни по-рано.

Например, ако имате функция като тази:

function database_result($query) {
   ...
   $result_array = $result->fetchAll();
   return $result_array;
}

След това можете да добавите кеширане на Memcached вътре в тази функция:

function database_result($query, $expire = 60) {
   $memcached_key = 'db:' . $query;
   $cached = $memcached->get($memcached_key);
   if ($memcached->getResultCode() !== Memcached::RES_NOTFOUND) {
       return $cached;
   }
   ...
   $result_array = $result->fetchAll();
   $memcached->set($memcached_key, $result_array, $expire);
   return $result_array;
}

Ако използвате необработения PDO или MySQLi обект навсякъде, тогава имате повече работа за вършене.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Надстроен до Ubuntu 16.04 сега зависимостите на MySQL-python са нарушени

  2. Сума стойности на един ред?

  3. Как да изтрия дубликати в MySQL таблица?

  4. JSON_SET() – Вмъкване или актуализиране на стойности в JSON документ в MySQL

  5. C# Mysql връзка в конфигурация на txt файл