Redis
 sql >> база данни >  >> NoSQL >> Redis

Как да настроите Yii2 с Redis конфигурация

В предишната си статия за Yii2 обсъдих как да инсталирам и използвам elasticsearch с Yii. В друга статия демонстрирах възможностите на рамката Yii2 чрез просто приложение за задачи. Днес ще демонстрирам как да използвам Redis като кеш и манипулатор на сесия за Yii2. В предишните си статии за Redis обсъждах използването на Redis като кеш с персонализирани PHP сайтове и Redis за управление на сесиите на PHP.

За да инсталирате Redis на Cloudways, прегледайте статията ми, свързана по-горе.

Стъпка 1:Инсталиране на разширението Redis на Yii 2

Отворете вашия composer.json файл и добавете следния ред в секция изискване :

"yiisoft/yii2-redis":"~2.0.0"

Сега в конзолата изпълнете следната команда, за да инсталирате разширението

актуализация на композитора

След като композиторът завърши инсталацията, отворете Yii2 в браузъра. Отворете лентата за отстраняване на грешки в Yii и намерете инсталираните разширения. Ще намерите yii2-redis в списъка.

Това означава, че Redis е инсталиран успешно и е готов за употреба.

Стъпка 2:Свързване на Redis с Yii2

След това свържете приложението Yii2 с Redis. Насочете се към конфигуриране папка и отворете web.php. Добавете следните редове в компонентите раздел.

 'redis' => ['class' => 'yii \ redis \ connection', 'hostname' => 'localhost', 'port' => 6379, 'база данни' => 0,], 'сесия' => [            'class' => 'yii\redis\Session',       ],       'cache'         => [           'class' => 'yii\redis\Cache', pres.      > 

След като сте готови, запазете файла. Време е да използвате разширението като манипулатор на сесията.

Стъпка 3:Използване на Redis като манипулатор на сесия с Yii2

Сега отворете вашата папка контролери и добавете нов контролер в него. Нека го наречем RedisController.php. Сега отворете файла и поставете следния код в него.

сесия->setFlash('contactFormSubmitted'); $a =Yii::$app->session->getFlash('contactFormSubmitted'); ехо $a; }}

Сега стартирайте този контролер в браузъра и ще видите изображението по-долу, след като вашата сесия бъде създадена.

Сега нека проверим дали тази сесия е добавена към кеша на redis . Отворете SSH терминала и въведете следната команда, за да отворите redis cli.

redis-cli

В командния ред въведете следната команда, за да проверите дали е добавен нов ключ:

клавиши *

Ако намерите буквено-цифров ключ в микс, този ключ е сесионният ключ. Това показва, че сесията на Redis работи правилно.

Нека оставим този прозорец на конзолата отворен, за да проверим ключа за кеш паметта по-късно.

Стъпка 4:Използване на Redis като манипулатор на кеша с Yii2

Сега отворете контролера, който беше създаден по-рано, и добавете тази нова функция в него.

   публична функция actionCaches()   {       $cache =Yii::$app->cache; $key   ='нов'; $data  =$cache->get($key); if ($data ===false) {           $key  ='нов'; $data ='Ново добавен кеш'; $cache->set($key, $data); }       ехо $data; }

Нека изпълним това действие в браузъра. Ще получите „Добавен нов кеш“ като изход. Нека проверим дали е запазен в Redis или не. Превключете към конзолата, която е останала отворена, и въведете следната команда:

клавиши *

Ще намерите своя нов кеш ключ заедно с ключа на сесията, който беше генериран по-рано.

Резюме:

Както можете да видите, че е лесно да се използва Redis с Yii2. просто инсталирате разширението и свързвате Yii2 с него. След това можете да използвате разширението като манипулатор на сесия и кеш за вашето приложение. Ето пълния списък с теми, обхванати в тази серия на Yii2. Ако трябва да зададете въпрос относно тази статия, моля, оставете коментар.


No
  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. SQL срещу NoSQL за система за управление на инвентара

  2. Сървърът MongoDB не е достъпен в локалната мрежа въпреки обвързването на ip

  3. Не може да се свърже със сървъра Redis от Docker контейнера

  4. Опростеното използване на EM::Synchrony#sync причинява грешка в "root fiber" FiberError -- моя грешка?

  5. Memcached срещу Redis?