mac os php redis

How to Install Redis on Mac

Home » SysAdmin » How to Install Redis on Mac

Redis is an open-source data storage solution. It is primarily used as a database, cache storage, or message broker due to the way it stores key-value pairs.

Redis stands out with its flexibility and high performance, wide language support, and high availability.

In this tutorial, you will learn several ways to install and configure Redis on your Mac computer.

mac os php redis. Смотреть фото mac os php redis. Смотреть картинку mac os php redis. Картинка про mac os php redis. Фото mac os php redis

Installing Redis on Mac

There are two ways to install Redis on Mac:

Homebrew automates most of the installation process, making it quick and easy to add Redis to your system. It also provides more options when configuring Redis, and makes uninstalling it a lot simpler.

Option 1: Install Redis on Mac With Homebrew

If you don’t have Homebrew, install it with the following command:

If you already have a copy of Homebrew installed, update it by using:

With an up-to-date version of Homebrew, install Redis by using the command:

Using this command produces the following output:

mac os php redis. Смотреть фото mac os php redis. Смотреть картинку mac os php redis. Картинка про mac os php redis. Фото mac os php redis

Option 2: Install Redis on Mac Without Homebrew

The second method enables you to install Redis on Mac without Homebrew.

To install Redis without Homebrew, use the following commands:

The remaining commands install the Redis software.

Note: NoSQL databases, like Redis, are meant to run efficiently in distributed clusters that scale out horizontally. Using Docker to deploy Redis in a container makes horizontal scaling a routine, straightforward process.

Starting and Configuring Redis on Mac

Depending on the installation method used, there are two ways to launch Redis on your system.

If you installed Redis using Homebrew, use Homebrew to launch it:

If you installed Redis without Homebrew, use the following code:

mac os php redis. Смотреть фото mac os php redis. Смотреть картинку mac os php redis. Картинка про mac os php redis. Фото mac os php redis

Modify your Redis instance by using the commands listed below.

Launch Redis on Boot

To have Redis launch on system boot, use:

Stop Redis from Launching on Boot

To stop Redis from starting upon system boot, use:

Start Redis Server

There are two ways to start your Redis server:

When starting Redis with the launchctl command, use the following syntax:

If you want to start Redis using the configuration file, use:

Test if Redis Server is Running

Ping your Redis server to verify if it’s running:

The system responds with a ‘pong’ if the server is up and running.

Uninstalling Redis on Mac

To uninstall Redis, use Homebrew with the following command:

Note: Remember to also remove Redis files from your hard-drive by using:

After following this tutorial, you now know how to install, configure, and uninstall Redis on your Mac computer.

For more helpful tips on using Redis, check out our comprehensive guide to Redis data types.

Источник

Mac os php redis

Having trouble with php redis extension installation. \n

i searched on internet but every fix i founded didn’t work. \n

i tried sudo pecl install redis but i had : \n

I also tried before adding extension=redis.so in my php.ini and restart php with brew services restart php : \n

Not works as well. still have the error : \n

Why don’t you give Homestead or Docker a try? \n

both are also pretty slow on mac os x \n \n

Same for me, but I’m willing to accept that tradeoff to keep my host machine as clean as possible. \n

I tried vessel but I have a problem with storage link \n \n

I’ve never tried vessel but I’m using docker-compose and everything is working for me. You can even build simple container which just runs everything within that single container to make things easy and just add Redis and avoid any macOS Redis installation issues. \n»,»bodyInMarkdown»:»>both are also pretty slow on mac os x\n\nSame for me, but I’m willing to accept that tradeoff to keep my host machine as clean as possible.\n\n>I tried vessel but I have a problem with storage link\n\nI’ve never tried vessel but I’m using `docker-compose` and everything is working for me. You can even build simple container which just runs everything within that single container to make things easy and just add Redis and avoid any macOS Redis installation issues.»,»replies»:[],»user»:<"id":18960,"username":"bugsysha","avatar":"\/\/www.gravatar.com\/avatar\/8fce0e9456c83a151bddff10993e2536?s=100&d=https%3A%2F%2Fs3.amazonaws.com%2Flaracasts%2Fimages%2Fforum%2Favatars%2Fdefault-avatar-28.png","experience":<"award_count":"454","level":50,"points":"540,785","pointsUntilNextLevel":"0">,»achievements»:[],»reported»:null,»profile»:<"github":"","twitter":"","full_name":null,"website":"","bio":null>,»dateSegments»:<"created_diff":"6 years ago">>,»likes»:[],»created_at»:»2020-01-23T09:47:35.000000Z»,»links»:<"delete":"\/discuss\/replies\/575189","like":"\/discuss\/replies\/575189\/likes","best_answer":"\/discuss\/conversations\/123308\/best">,»best_answer»:false,»dateSegments»:<"createdDiff":"1 year ago">>,<"id":575194,"conversation_id":123308,"body":"

I for simplest use cases \n

For PHP I have php.yml file with following: \n

For Node\/NPM I have node.yml file with following \n

Node containers do not run in background. They just execute the code and exit. \n

Just note that those use cases contain comments at the end of the line. For example \n

Источник

Default install on Mac OS X may not work with homebrew #468

Comments

phpguru commented Apr 26, 2014

This is not actually an issue per se, I just figured I’d put this note here in case someone else runs into the same. Someone will probably offer a better solution.

I’ve installed Redis, and both redis-server and redis-cli are working. I go to install phpredis and everything worked fine as well. I go to configure it by editing /private/etc/php.ini, add extension=redis.so and restart Apache. The Redis extension is not loading. I find another copy of php.ini at /usr/local/etc/php/5.3/php.ini and discover this is the one CLI uses (news to me!)

So I create /usr/local/etc/php/5.3/conf.d/redis.ini and put

Sweet! So my PHP CLI has phpredis loaded, but when I create a phpinfo( ) and load it from Apache there’s no Redis extension and I can’t for the life of me figure out why.

I put the same exact line,

into /private/etc/php.ini and get no love. Any idea what in the world is going on here? I am using Mac OS X 10.8.5 and the built-in Apache & PHP 5.3.28 that ship with Mac OS X. I’ve installed mcrypt, memcache, and a few other extensions without issue on this same laptop.

I should probably add that I’m using homebrew for lots of things on this box, and my extension dir is

placed redis.so here:

So, PHPRedis would not load under Apache until I did

Refreshing my localhost/info.php page and all is right again in the world.

The text was updated successfully, but these errors were encountered:

We are unable to convert the task to an issue at this time. Please try again.

The issue was successfully created but we are unable to update the comment at this time.

Источник

Установка Redis + Redis PHP + phpRedisAdmin на боевом сервере за 15 минут

Всем уже давно известно, что самые лучшие бинарные файлы — это те, которые были скомпилированы именно на этом компьютере. И, когда вопрос заходит о производительности, то компилирование компонентов на этом компьютере даст свое преимущество в скорости и стабильности.

В данной статье речь пойдет о том, как подготовить Redis, phpredis (С модуль для php) и phpRedisAdmin для работы на боевом сервере.

Собираем Redis

Для того, чтоб собрать Редис, нам потребуются сами исходники. Получить их можно с github. Поэтому
https://github.com/antirez/redis/zipball/2.4.4 загружаем сразу нужный тег.

Теперь у нас есть все исходники Redis 2.4.4, осталось их скомпилировать.
Все очень просто

Первой командой мы собрали Redis, второй его проверили на работоспособность.
Make test будет проходить долго (около 2х минут). После теста должна вернуться такая строка «\o/ All tests passed without errors!»

Redis собран, осталось зачистить мусор и унести редис в нужный каталог.
Унесем весь скомпилированный Redis в папку /usr/bin/redis. А чтоб запускать Redis-server, в /usr/bin создадим shell файл redis-server.

Уносим файлы Redis в /usr/bin/redis

Мы все еще остаемся в папке antirez-redis-04bba69, где лежат исходники

Мы скопировали все файлы от Redis и удалили папку с исходниками, она нам уже не нужна.
Будьте осторожны с последней командой! sudo для нее не нужен, папка и так в наших владениях.

Теперь нам нужно создать файл для запуска redis-server.

Для этого файла нужно дать право на исполнение.

Осталось взять redis.conf

Redis.conf загружен, осталось его настроить.
Заменяем в файле конфигурации

Запуск!

Если все было сделано правильно, то запускаем сервер

По идее вам должно показать приглашение от Redis
Trying 127.0.1.1…
Connected to localhost.
Escape character is ‘^]’.

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

Тестируем сервер

Теперь мы общаемся с Redis по сокету.
Авторизируемся:

Устанавливаем тестовое значение

Если все прошло успешно, значит сервер работает, и с ним мы заканчиваем. Устанавливаем команду на автозагрузку при старте системы и все.

Redis + PHP5. Компилируем модуль для PHP

Тут тоже все очень просто, так что можно просто следовать командам.

Тут думаю комментарии не нужны.

Теперь собираем redis.so расширение.

Теперь в папке modules появился файл redis.so, он-то нам и нужен.

меняем на имя папки, которое выглядит примерно так: 20090626.

Далее дать информацию php о Redis.so
поэтому

и вписываем в него extension=redis.so
По желанию заменяем apache2 на cli, cgi и так далее, в зависимости от того, как у Вас установлен php, и как вы его хотите использовать вместе с Redis.

Теперь рестартим apache2 и в тестовом php файле пишем:

Если ошибка, что класс Redis не существует, не вылетела, то все отлично.

Проведем benchmark тест непосредственно в php.

У меня появилась информация, что 80000 запросов были обработаны за 2.6 секунд.

На этом с php мы закончили. Далее phpRedisAdmin.

Установка phpRedisAdmin

Установка phpRedisAdmin абсолютно не нужна, но для визуализации данных не помешает.

Качаем из git саму админку.

Мы создаем папку redisadmin в /var/www. Добавляем права на файлы, потому что изначально у меня permission denied на redisadmin.

Не забудьте настроить веб-сервер, чтоб сайт можно было открыть уже из сети.
Но использовать redis admin не безопасно на продакшене, поэтому его нужно как ни как закрыть для всех посторонних глаз паролем.

Нужно расскоментировать строку 11 и установить пароль к серверу.

Далее нужно расскоментировать блок с 36 по 46 строку, назначив админский пароль, который будет запрашиваться при входе в phpRedisAdmin

PROFIT!
За 15 минут мы смогли поднять Redis сервер, настроить его для работы с PHP и поднять phpRedisAdmin.

Источник

Докеризируем Socket.io, redis и php

Для передачи данных сервером на php клиенту можно использовать следующий алгоритм:

Исходный код проекта можно найти на github

Здесь я буду двигаться очень маленькими шагами.
В проекте будет использоваться связка nginx и php-fpm и начну я с настройки
nginx.

Настройка nginx

Начнем создавать docker-compose.yml в корневой папке нашего проекта.

Пересоздадим контейнер nginx

И вновь наблюдаем по в браузере по адресу http://localhost:4400 стандартное
приветствие nginx.
Внесем изменения
docker-compose.yml

Настройка php

Начнем с создания папок для хранения файлов настроек контейнера.

Далее создадим php/Dockerfile

И внесем изменения в docker-compose.yml

Осталось создать файл www/public/info.php со следующим кодом

Перезапустим наш контейнер

И теперь по адресу http://localhost:4400/info.php отображается информация о
настройках php.
Еще немного поэкспериментируем и создадим файл www/Test.php

А содержимое файла www/public/info.php заменим на следующее:

Настройка redis

Внесем изменения в docker-compose.yml

Чтобы протестировать подключение к redis изменим файл www/public/info.php

Теперь подключимся к серверу redis

Подпишемся на канал ‘eustatos’ (название произвольное, чтобы все работало,
долно совпадать с названием канала, которое мы определили в файле
www/public/info.php )

После всех этих приготовлений, переходим в браузере по адресу
http://localhost:4400/info.php и наблюдаем, как в терминале, где мы
подключались к redis появляются примерно следующие строки:

Значит мы стали еще ближе к нашей цели.

Настройка socket.io

Созадим папку, где будут лежать файлы нашего socket.io сервера

Внесем изменения в docker-compose.yml

Перейдем в папку socket

Установим необходимые пакеты

После этого добавим в файл socket/package.json строки

Создадим файл socket/index.js

Перезапустим наш контейнер

После этого в браузере по адресу http://localhost:5000 отображается «success».
Значит мы еще чуть ближе к нашей цели. Осталось совсем немного.
Изменим файл socket/index.js

На этом настройка контейнера socket.io завершена.

Настройка клиентского приложения

Клиентское приложение можно развернуть в любом из наших контейнеров, но
для чистоты эксперимента развернем его в отдельном контейнере.
Файлы клиентского приложения разместим в папке client

Создадим файл client/index.html

Перезапустим наш контейнер

А это значит, что наш сервер благополучно передал клиентскому приложению данные.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *