Когда дело доходит до Redis, все, должно быть, слышали о нем и должны были использовать его более или менее в проекте.Может быть, вы думаете, что Redis прост в использовании, но если кто-то задаст вам следующие вопросы (например, коллеги или интервью) Сотрудник ), вы можете ответить на него?
- Что такое Редис?
- Какие структуры данных может хранить Redis?
- Сколько механизмов сохраняемости есть в Redis? Каковы их преимущества и недостатки?
- В каких сценариях необходимо использовать Redis?
- Что такое кэш-лавина и как ее избежать?
- Что такое проникновение в кеш и как его избежать?
- Что такое сбой кеша и как его избежать?
Если вы можете ответить на него, поздравляю, это означает, что у вас есть определенное понимание Redis. Если вы не можете ответить на него, это не имеет значения. Эта серия блогов даст серию объяснений по Redis. Добро пожаловать, чтобы обратить внимание !
Так называемая хорошая работа должна сначала отточить свои инструменты, поскольку мы хотим изучить Redis, мы должны, по крайней мере, знать, что такое Redis и как установить среду Redis, что также является основным содержанием этого блога.
1. Введение в Redis
Что такое Редис?
Redis — это хранилище структур данных в памяти с открытым исходным кодом (под лицензией BSD), используемое в качестве базы данных, кэша и брокера сообщений. Он поддерживает структуры данных, такие как строки, хэши, списки, наборы, отсортированные наборы и т. д.-- Официальный сайт Redis
Redis — это открытый исходный код, использующий язык ANSI C, поддерживающий сеть, может сохраняться в высокопроизводительных базах данных Key-Value.-- Энциклопедия Байду
Redis — это высокопроизводительная система хранения «ключ-значение», выпущенная по протоколу с открытым исходным кодом BSD, которую часто называют сервером структуры данных.-- другие пользователи сети
Redis — это удаленная база данных в памяти, которая не только мощная, но также обладает характеристиками репликации и уникальной моделью данных для решения проблем. Redis предоставляет 5 различных типов структур данных, с которыми можно естественным образом сопоставить всевозможные проблемы.-- "Редис бой"
Redis — очень быстрая нереляционная база данных. Она может хранить сопоставления между ключами и 5 различными типами значений, а также может сохранять данные пары "ключ-значение", хранящиеся в памяти, на жестком диске. Вы можете использовать функцию репликации для масштабирования чтения производительность, и вы можете использовать сегментирование на стороне клиента для масштабирования производительности записи.-- "Редис бой"
2. Установка среды Redis (Windows)
Примечание: Redis официально не предоставляет версию Redis для Windows, и не рекомендуется использовать версию Redis для Windows в рабочей среде.Производственная среда моей текущей компании Redis развернута на сервере Linux.
Хотя Redis официально не поддерживает версию для Windows, MicrosoftMicrosoft Open Tech GroupПредоставляет версию Redis для Windows, адрес загрузки:GitHub.com/Microsoft AR….
Разархивируйте загруженный файл в ваш любимый каталог, вот E:\Tools\Redis-x64-3.0.504, как показано ниже:
Дважды щелкните файл redis-server.exe, отмеченный красным на рисунке выше, чтобы запустить службу Redis:
Вы также можете открыть окно cmd, переключиться в каталог, где находится Redis, а затем выполнить следующую команду для запуска:
redis-server.exe redis.windows.conf
Чтобы открыть через эти два метода, вам нужно убедиться, что окно cmd всегда открыто.После закрытия клиент не может подключиться.Если сервер перезагружается, вам нужно снова открыть сервер Redis.Чтобы решить эту проблему, мы можем установить Redis как службу Windows:
cd E:\Tools\Redis-x64-3.0.504
redis-server --service-install redis.windows.conf
Вы можете запустить/остановить службу прямо в интерфейсе или выполнить команды cmd для запуска/остановки/удаления службы:
Запустите службу:
redis-server --service-start
Не работает:
redis-server --service-stop
Удалить службу:
redis-server --service-uninstall
3. Установка среды Redis (Linux)
Во-первых, нам нужно разместить установочный пакет Redis в среде Linux на сервере.Есть два способа.Первый способ - открыть адрес загрузки официального сайта Redis:redis.io/download, загрузите стабильную версию на эту машину:
Затем используйте инструменты, такие как Xftp, для загрузки локально загруженных файлов в каталог на сервере Linux.Например, каталог, который я хочу загрузить, это /mnt.
Второй способ — напрямую загрузить установочный пакет Redis в каталог /mnt сервера с помощью команды Конкретная команда выглядит следующим образом:
cd mnt/
wget -q http://download.redis.io/releases/redis-5.0.7.tar.gz
Затем выполните следующую команду, чтобы разархивировать файл:
tar -xzf redis-5.0.7.tar.gz
Затем выполните следующую команду, чтобы извлечь каталог usr из хорошего локального файла в / / и скомпилировать:
mv redis-5.0.7 /usr/local/
cd /usr/local/redis-5.0.7
make
Примечание. После выполнения команды make на экран будет выведено много информации, около 2-3 экранов.
Когда вы видите следующую информацию, это означает, что компиляция завершена:
Затем перейдите в каталог /usr/local/redis-5.0.7/src и выполнитеmake install
команда для установки:
cd src/
make install
Затем перейдите в каталог /usr/local/redis-5.0.7, создайте новые папки bin и т. д. и переместите файл redis.conf в этот каталог в каталог etc,
Поместите mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server в каталог /usr/local/redis-5.0.7/src
Перейдите в каталог bin, который вы только что создали:
cd ..
mkdir bin
mkdir etc
mv redis.conf etc/
cd src
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server /usr/local/redis-5.0.7/bin/
Затем перейдите в каталог /usr/local/redis-5.0.7/etc и измените файл конфигурации Redis redis.conf:
cd ..
cd etc/
vi redis.conf
Redis.conf в основном изменяет следующие 4 пункта:
-
Измените daemonize no на daemonize yes, указав, что он должен работать в фоновом режиме.
-
Закомментируйте строку bind 127.0.0.1
Привязка здесь означает, что только указанный сегмент сети может получить удаленный доступ к этому редису, после комментирования такого ограничения нет.
-
Изменить режим защиты да на режим защиты нет
По умолчанию установлен режим защиты yes, к которому удаленный доступ невозможен.После изменения на no удаленный доступ возможен.
-
Добавить к
requirepass 123456
Установить пароль (пароль по умолчанию пуст)
Наконец, перейдите в каталог /usr/local/redis-5.0.7/bin и выполните следующую команду, чтобы запустить службу Redis:
cd ..
cd bin/
redis-server /usr/local/redis-5.0.7/etc/redis.conf
После запуска вы можете выполнить следующую команду, чтобы проверить, запущен ли Redis, и идентификатор процесса:
ps aux | grep redis-server
4. Пример Redis Hello World
Откройте окно cmd и откройте интерактивное окно redis-cli, чтобы просто использовать Redis:
redis-cli.exe -h 127.0.0.1 -p 6379
Настройте кеш «ключ-значение», где ключ — это привет, а значение — привет, мир!:
set hello "hello world!"
Получите значение, ключ которого — hello:
get hello
5. Использование диспетчера рабочего стола Redis
Хотя мы можем просматривать данные, хранящиеся в Redis, с помощью команд, в конце концов, это не очень удобно.Вот более популярный инструмент: Redis Desktop Manager.
Адрес официального сайта:redisdesktop.com/.
Текущая версия официального сайта 2019.5 должна быть платной, иначе есть только 14 дней пробного периода.
Следующий открытый или около того, цена выглядит как, ах, ха-ха в 2019 году, шесть.
Тем не менее, мы все еще можем скачать ранее неоплачиваемую версию, адрес загрузки:/Re на GitHub.com/UG….
Процесс установки относительно прост и здесь повторяться не буду.После завершения установки подключитесь к серверу Redis в родной среде Windows:
После успешного подключения вы можете увидеть установленное ранее значение:
Вы также можете подключиться к серверу Redis в удаленной среде Linux:
Некоторые учащиеся могут использовать инструмент Another.Redis.Dsektop.Manager, размещенный здесь только в разделе «Загрузка»:электрон JS.org/apps/press OT и…, желающие студенты могут загрузить его самостоятельно.
6. Исходный код и ссылка
Установка и развертывание Redis (Windows)
Использование Redis под Windows (1) Установка и использование