


Yii Framework Official Guide Supplement Series 29 - Mise en cache?: mise en cache des données
Feb 15, 2017 am 09:15 AMLa mise en cache des données stocke certaines variables PHP dans le cache, puis les récupère du cache ultérieurement. à cette fin, la classe de base CCache des composants de mise en cache fournit les deux méthodes les plus couramment utilisées : set() et get().
Pour stocker une variable $value
dans le cache, on choisit un identifiant unique et on appelle set() pour la stocker :
Yii::app()->cache->set($id,?$value);
Les données mises en cache resteront dans le cache à moins qu'elles ne soient effacées en raison d'une politique de mise en cache (par exemple, l'espace du cache est plein, les anciennes données sont supprimées). Pour modifier ce comportement, nous pouvons fournir un paramètre d'expiration lors de l'appel de set(), afin que les données mises en cache soient effacées après une période de temps définie?:
//?值$value?在緩存中最多保留30秒 Yii::app()->cache->set($id,?$value,?30);
Plus tard, lorsque nous aurons besoin d'accéder à cette variable (dans la même requête Web ou dans une requête Web différente), nous pouvons appeler get() par ID pour l'obtenir du cache Back. Si false est renvoyé, cela signifie que cette valeur n'est pas disponible dans le cache et nous devons la régénérer.
$value=Yii::app()->cache->get($id); if($value===false) { ????//?因?yàn)樵诰彺嬷袥](méi)找到?$value?,重新生成它?, ????//?并將它存入緩存以備以后使用: ????//?Yii::app()->cache->set($id,$value); }
Lors de la sélection d'un ID pour la variable à mettre en cache, assurez-vous que cet ID est cohérent avec tous les autres variables de l'application sont uniques. Cet identifiant n'a pas besoin d'être unique entre les différentes applications. Le composant de mise en cache est suffisamment intelligent pour différencier les identifiants dans différentes applications.
Certaines mémoires de cache, telles que MemCache, APC, prennent en charge la récupération de plusieurs valeurs de cache en mode batch. Cela réduit la surcharge liée à la récupération des données mises en cache. à partir de la version 1.0.8, Yii propose une nouvelle méthode appelée mget(). Il peut profiter de cette fonctionnalité. Si la mémoire cache sous-jacente ne prend pas en charge cette fonctionnalité, mget() peut toujours la simuler.
Pour effacer une valeur mise en cache du cache, appelez delete(); pour effacer toutes les données du cache, appelez flush(). Soyez prudent lorsque vous appelez flush() car cela effacera également les caches d'autres applications.
Astuce?: Puisque CCache implémente
ArrayAccess
, le composant cache peut également être utilisé comme un tableau. Voici quelques exemples?:
$cache=Yii::app()->cache; $cache['var1']=$value1;??//?相當(dāng)于:?$cache->set('var1',$value1); $value2=$cache['var2'];??//?相當(dāng)于:?$value2=$cache->get('var2');
Dépendances du cache
En plus de paramètres d'expiration, les données mises en cache peuvent également devenir invalides en raison de modifications des conditions de dépendance. Par exemple, si nous mettons en cache le contenu de certains fichiers et que ces fichiers changent, nous devons invalider les données mises en cache et lire le dernier contenu du fichier plut?t que du cache.
Nous représentons une dépendance comme une instance de CCacheDependency ou l'une de ses sous-classes. Lors de l'appel de set(), nous le transmettons avec les données à mettre en cache.
//?此值將在30秒后失效 //?也可能因依賴的文件發(fā)生了變化而更快失效 Yii::app()->cache->set($id,?$value,?30,?new?CFileCacheDependency('FileName'));
Maintenant, si nous récupérons $value
du cache en appelant get() , la dépendance sera Check que si des changements ont eu lieu, nous obtiendrons une fausse valeur indiquant que les données doivent être régénérées.
Ce qui suit est une brève description des dépendances de cache disponibles?:
CFileCacheDependency?: Si l'heure de la dernière modification du fichier change, la dépendance change.
CDirectoryCacheDependency?: Si les fichiers du répertoire et de ses sous-répertoires changent, la dépendance change.
CDbCacheDependency?: si le résultat de la requête de l'instruction SQL spécifiée change, la dépendance change.
CGlobalStateCacheDependency?: si l'état global spécifié change, la dépendance change. L’état global est une variable de requête croisée et de session dans l’application. Il est défini via CApplication::setGlobalState().
CChainedCacheDependency?: cette dépendance change si une dépendance dans la cha?ne change.
CExpressionDependency?: Si le résultat de l'expression PHP spécifiée change, la dépendance change. Cette classe est disponible depuis la version 1.0.4.
Ce qui précède est la série 29 du supplément au guide officiel du Yii Framework - Cache?: cache de données. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.miracleart.cn)?!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Mise en cache des données et partage d'expérience de stockage local dans le développement du projet Vue Dans le processus de développement du projet Vue, la mise en cache des données et le stockage local sont deux concepts très importants. La mise en cache des données peut améliorer les performances des applications, tandis que le stockage local peut permettre un stockage persistant des données. Dans cet article, je partagerai quelques expériences et pratiques d'utilisation de la mise en cache des données et du stockage local dans les projets Vue. 1. Mise en cache des données La mise en cache des données consiste à stocker les données en mémoire afin qu'elles puissent être rapidement récupérées et utilisées ultérieurement. Dans les projets Vue, il existe deux méthodes de mise en cache des données couramment utilisées?:

Stratégies d'optimisation pour la mise en cache des données et les tables en mémoire des index PHP et MySQL et leur impact sur les performances des requêtes Introduction : PHP et MySQL sont une combinaison très courante lors du développement et de l'optimisation d'applications basées sur des bases de données. Dans l'interaction entre PHP et MySQL, les stratégies de mise en cache des données d'index et d'optimisation des tables mémoire jouent un r?le crucial dans l'amélioration des performances des requêtes. Cet article présentera les stratégies d'optimisation de la mise en cache des données et des tables de mémoire des index PHP et MySQL, et expliquera en détail leur impact sur les performances des requêtes avec des exemples de code spécifiques.

Comment choisir une solution de mise en cache de données adaptée aux projets PHP ? Avec le développement rapide d'Internet et l'avènement de l'ère du Big Data, la manière de gérer efficacement l'accès aux données et la mise en cache est devenue une question importante pour les projets PHP. En tant que méthode courante d’optimisation des performances, la mise en cache des données peut améliorer efficacement la vitesse de réponse et l’expérience utilisateur du site Web. Cependant, lors du choix d'une solution de mise en cache de données adaptée aux projets PHP, nous devons prendre en compte une série de facteurs, notamment le type de cache, le mode d'accès aux données, la stratégie de mise en cache, etc. Cet article expliquera comment choisir parmi ces aspects

Mise en cache des données et stratégies de mise en cache pour la fonction de chat en temps réel à l'aide de PHP Introduction : Dans les applications modernes de médias sociaux et Internet, la fonction de chat en temps réel est devenue une partie importante de l'interaction des utilisateurs. Afin de fournir une expérience de chat en temps réel efficace, la mise en cache des données et les stratégies de mise en cache sont devenues la priorité des développeurs. Cet article présentera la mise en cache des données et les stratégies de mise en cache pour implémenter la fonctionnalité de chat en temps réel à l'aide de PHP, et fournira des exemples de code pertinents. 1. Le r?le de la mise en cache des données La mise en cache des données est de réduire la charge sur la base de données et d'améliorer la vitesse de réponse du système. en chat en direct

Application de la technologie de file d'attente au traitement différé des messages et à la mise en cache des données dans PHP et MySQL Introduction : Avec le développement rapide d'Internet, la demande de traitement de données en temps réel est de plus en plus élevée. Cependant, les méthodes traditionnelles d'exploitation des bases de données entra?nent souvent des goulots d'étranglement en termes de performances lors du traitement de grandes quantités de données en temps réel. Afin de résoudre ce problème, la technologie de file d'attente a vu le jour, ce qui peut nous aider à mettre en ?uvre un traitement asynchrone des données et à améliorer les performances du système et la vitesse de réponse. Cet article présentera l'application de la technologie de file d'attente dans le traitement différé des messages et la mise en cache des données dans PHP et MySQL, et via du code spécifique.

Lorsque vous vous préparez à une entrevue avec YII Framework, vous devez conna?tre les principaux points de connaissances suivants: 1. Architecture MVC: Comprendre le travail collaboratif des modèles, des vues et des contr?leurs. 2. ActiveRecord: ma?triser l'utilisation des outils ORM et simplifier les opérations de base de données. 3. Widgets et aides: familier avec les composants et les fonctions d'assistance intégrés, et créez rapidement l'interface utilisateur. La ma?trise de ces concepts de base et des meilleures pratiques vous aidera à vous démarquer dans l'entretien.

YII Framework adopte une architecture MVC et améliore sa flexibilité et son évolutivité via des composants, des modules, etc. 1) Le mode MVC divise la logique d'application en modèle, vue et contr?leur. 2) L'implémentation MVC de YII utilise le traitement de la demande de raffinement d'action. 3) YII prend en charge le développement modulaire et améliore l'organisation et la gestion du code. 4) Utilisez l'optimisation des requêtes de cache et de base de données pour améliorer les performances.

YiiremainspopularbutislessfavanedthanLaravel, withabout14kgithubstars.itexcelsInterformanceAndActiveRecord, Buthasaspeeperlearningcurveandasmallerecosystem.
