La méthode de stockage du cache dans tp5, mon paramètre local est de lire du texte.
Prenons ce code comme exemple : (Apprentissage recommandé : thinkphp5)
public function getAllManegerId(){ $cache =checkCache('kf_getallManeger'); if($cache)return$cache; $role = Db::table('customer_role')->where(['type'=>2, 'role_status'=>0,])->select(); $array = []; if(!empty($role)){ foreach ($role as $key=>$value){ $customer = Db::table('customer')->where(['role_id'=>$value['role_id'],'user_status'=>0])->select(); foreach ($customer as $keys=>$values){ array_push($array,$values['customer_id']); } } } \cache('kf_getallManeger',$array,300); return $array; }
Il y a deux boucles ici, s'il n'y a pas de mise en cache est utilisé. Il faut essentiellement 400 à 600 ms pour traiter les informations.
Après avoir ajouté le cache fourni avec tp, le temps passé est considérablement réduit, entre 40 et 60 ms, ce qui est idéal.
Après avoir écrit ceci, j'ai juste imaginé si Redis serait d'environ 10 ms, ce qui serait plus puissant que le cache intégré.
Le cache Redis a donc été ajouté
$redis = $this->redis = new \Redis; $redis->connect('127.0.0.1', 6379); $caches = $redis->get('kf_getallManeger'); if($caches)return $caches;
En apparence, c'est fondamentalement la même chose que la méthode de cache de tp, mais en fait, il y a une concurrence et le trafic n'a pas été encore testé
La conclusion est la suivante :
Si la quantité de stockage n'est pas importante, le cache de fichiers de TP est similaire à celui de Redis. Mais la lecture de la mémoire doit être plus rapide. Si de nombreuses valeurs sont stockées, les puissantes capacités d'E/S de Redis seront plus puissantes que la lecture et l'écriture de fichiers ordinaires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!