Redis — это система управления базами данных, которая хранит данные в формате «ключ-значение»: уникальному ключу в БД соответствует некоторое значение. Данные в этой базе данных хранятся в оперативной памяти, благодаря чему запросы обрабатываются быстро.
Согласно рейтингу DB-Engines.com, Redis — это самая популярная СУБД «ключ-значение». Благодаря этому типу, архитектура базы и запросы к ней проще, чем в реляционных баз данных. Однако использовать привычный SQL на стандартном Redis не получится: придется работать с Lua-скриптами или устанавливать модифицированные версии, например RediSQL.
Redis лучше всего использовать в проектах, где нужна база данных с быстрым доступом к данным и простой схемой.
Чтобы вы могли комфортно использовать эту СУБД в своих проектах, мы подготовили материал по установке Redis на три операционные системы: на Windows, Ubuntu и CentOS. По завершении установки мы настроим Redis, после чего СУБД будет готова к работе.
Базы данных
Redis: установка на Windows
Есть два варианта установки Redis на Windows:
- установка портированной версии;
- установка в WSL или Docker.
В этом разделе мы разберем установку портированной версии. Если вы хотите установить в WSL, то:
- руководство по установке и настройке WSL в Windows 10 вы найдете в материале «Как установить Node.js на Windows» в разделе «Установка WSL»;
- инструкция по установке на Ubuntu описана чуть ниже в разделе «Установка на Ubuntu».
Портированная версия для Windows вышла довольно давно: в 2016 году. Она размещена на github и доступна для скачивания всем пользователями. Преимущества установки этой версии заключается в её простоте: для установки не потребуется дополнительная «прослойка» в виде Docker или WSL. Выбирайте порт для Windows, если не хотите усложнять процесс установки и вас устраивает 6-летняя версия.
Установка Redis на Windows
Шаг 1 — заходим в репозиторий на GitHub портированной версии по ссылке: https://github.com/microsoftarchive/redis.
Шаг 2 — переходим на вкладку «Releases».
Шаг 3 — выбираем последний релиз.
Шаг 4 — скачиваем файл с расширением .msi. На изображении он выделен синим цветом:
Шаг 5 — после загрузки откройте файл. Начнется установка.
Шаг 6 — во время установки инсталлятор предложит вам добавить Redis в PATH. Если хотите использовать СУБД из командной строки, проставьте галочку напротив этого пункта.
Шаг 7 — во время выбора порта рекомендуется оставить стандартное значение 6379.
Шаг 8 — после установки необходимо перезагрузить компьютер.
После загрузки компьютера проверим работоспособность Redis. Для этого в командной строке выполняем команду redis-server.
При её выполнении может возникнуть ошибка со следующим сообщением:
Проблема заключается в том, что Windows в автоматическом режиме после установки регистрирует службу, к которой привязывает порт 6379. Когда выполняется команда redis-server, исполнитель обращается к файлу конфигурации и использует порт по-умолчанию, т.е. 6379. Из-за этого возникает ошибка.
Чтобы её решить открываем командную строку и делаем следующее:
- переходим в каталог Redis командой cd;
- запускаем redis-cli.exe;
- выключаем сервер командой shutdown;
- выходим командой exit.
Вот набор команд для стандартного каталога:
После этих действий команда redis-server успешно выполнилась:
Настройки Redis описываются в двух файлах: redis.windows.conf и redis.windows-service.conf.
- Redis.windows-service.conf описывает настройки СУБД, запущенной в качестве службы. Этот формат подразумевает работу в фоновом режиме под управлением операционной системы (запуск при перезагрузке, перезапуск при сбоях и т.п).
- Redis.windows.conf относится к использованию СУБД из командной строки с помощью redis-cli. Это же относится и к использованию СУБД в своих скриптах.
Настройка этих файлов приведет к изменению работы Redis. В нашем случае настроек минимальное количество: СУБД прослушивает любые подключения. Это не совсем безопасно, поэтому позволим подключение к Redis только с localhost. Для этого в файлах конфигурации находим задокументированную строку #bind 127.0.0.1 и удаляем решетку «#»:
Установка Redis: Ubuntu 22.04
Устанавливать Redis на Ubuntu мы будем из официального репозитория. Также, эта инструкция подойдет для установки Redis на Debian.
Шаг 1 — в первую очередь обновим индексы пакетов apt:
sudo apt update
Шаг 2 — загружаем Redis:
sudo apt install redis-server -y
Проверить работоспособность можно командой sudo systemctl status redis:
Служба активна.
Установка Redis: CentOS 7
Устанавливать Redis будем на CentOS 7. В первую очередь установим EPEL (Extra Packages for Enterprise Linux) — это пакет с дополнительными репозиториями, которые не включены в стандартную версию CentOS. Установим их:
sudo yum install epel-release
Теперь мы можем установить redis:
sudo yum install redis -y
Через несколько минут редис будет установлен на компьютер. Чтобы включить редис в автозагрузку, выполняем следующую команду:
sudo systemctl enable redis
Настройка Redis осуществляется через изменение конфигурационных файлов. Они для всех версий будут одинаковыми. Поэтому, для наглядной настройки, мы настроим Redis на операционной системе Ubuntu и удаленно подключимся к ней с Windows.
Для осуществления базовой настройки нам необходимо изменить 2 параметра: открыть удаленное подключение и установить пароль.
Шаг 1 — генерируем пароль:
openssl rand 25 | openssl base64 -A
Вывод:
/37DQhAt5MBq/34Lj24Ppn5LI/UZksAZJQ==
Злоумышленники могут перебирать до 150 тысяч паролей в секунду, поэтому важно выбрать надежный пароль. Копируем полученный результат и переходим к конфигурационному файлу.
Шаг 2 — открываем конфигурационный файл:
sudo nano /etc/redis/redis.conf
Шаг 3 — изменяем конфигурацию.
Найдем в конфигурационном файле строку «bind 127.0.0.1 ::1» и закомментируем её с помощью #. Не закрывая файл, найдем строку «protected-mode yes» и заменим её на «protected-mode no». В раздел «Security» после строки #requirepass foobared добавляем строку со сгенерированным паролем:
requirepass /37DQhAt5MBq/34Lj24Ppn5LI/UZksAZJQ==
Закрываем файл и сохраняем все изменения.
Шаг 4 — перезапускаем Redis, чтобы изменения вступили в силу:
sudo systemctl restart redis.service
Шаг 5 — с помощью netstat проверяем, какие сетевые интерфейсы прослушивает Redis:
sudo netstat -lnp | grep redis
Шаг 6 — подключаемся удаленно. Попробуем подключиться к базе данных из командной строки Windows:
redis-cli -h 192.168.43.37 -p 6379 -a /37DQhAt5MBq/34Lj24Ppn5LI/UZksAZJQ==
Пропингуем СУБД:
192.168.43.37:6379> ping
PONG
И вставим кортеж:
192.168.43.37:6379> set key test
OK
192.168.43.37:6379> get key
"test"
Redis как DBaaS
DBaaS (database as a service) — это база данных, размещенная в облаке. Этот сервис похож на аренду сервера, только вместо виртуальной машины вы получаете базу данных. Такой вариант обладает рядом преимуществ:
- меньшее количество административных хлопот: не нужно обновлять СУБД и обслуживать оборудование;
- легкое масштабирование базы данных: если для вашего проекта потребовалась более производительная БД, то это легко сделать в панели управления;
- быстрый старт: СУБД будет установлена на старте;
- бесперебойная работа.
Заключение
В Timeweb.cloud есть услуга «Облачные базы данных» — уже готовое и настроенное решение. Если вы не хотите отягощать себя административными манипуляциями, то вы можете арендовать базу данных на Redis у Timeweb Cloud. Помимо Redis, Timeweb Cloud может предложить в качестве СУБД MySQL, PostgreSQL и MongoDB.
Друзья, приветствую всех. Изначально планировал писать эту статью в теме про телеграмм ботов и FSM, но решил что она может быть более универсальной и под другие задачи. В связи с этим выпускаю инструкцию отдельно.
Что такое Redis?
Redis (Remote Dictionary Server) — это мощная in-memory база данных с открытым исходным кодом, которая используется для кеширования, управления сессиями и многого другого. Она обеспечивает высокую производительность и позволяет эффективно хранить и извлекать данные в реальном времени. В этом руководстве мы рассмотрим два способа установки и настройки Redis сервера: на Windows 10/11 через WSL (Windows Subsystem for Linux) и на VPS сервере.
Установка Linux Ubuntu на Windows 10/11 и Redis
-
Запустите командную строку.
-
Ввод команды установки WSL:
wsl --install
Если WSL еще не установлен, начнется загрузка и установка дистрибутива Ubuntu.
После завершения установки, создайте имя пользователя и пароль.
Если установка была выполнена ранее, то после ввода этой команды произойдет запуск wsl.
Запуск Linux Ubuntu на Windows 10/11
-
Запустите Ubuntu через командную строку или через меню «Пуск».
-
Для запуска через командную строку используйте команду:
wsl
-
Вы можете изменить дистрибутив Ubuntu на любой другой доступный. Посмотреть список доступных дистрибутивов можно командой:
wsl --list --online
-
Для установки нового дистрибутива используйте команду:
wsl --install -d <Distribution Name>
Замените <Distribution Name> именем дистрибутива, который хотите установить. Например:
wsl --install -d Debian
Для запуска конкретного дистрибутива используйте команду:
wsl -d <DistributionName>
В данном примере мы оставим Ubuntu.
Установка и настройка Redis Server на Windows под Ubuntu
Заходим в Ubuntu и приступаем к настройке Redis:
sudo apt update -y
sudo apt upgrade -y
Добавление репозитория:
sudo apt-add-repository ppa:redislabs/redis
Обновление пакетов:
sudo apt-get update -y
sudo apt-get upgrade -y
Установка Redis сервера:
sudo apt-get install redis-server -y
Перезагрузка Redis сервера:
sudo service redis-server restart
Проверка состояния сервера:
sudo service redis-server status
Если у вас результат такой же, как на скриншоте, значит сервер Redis запущен и готов к использованию.
Дополнительные настройки для удалённого доступа
Инструкции аналогичны до момента, где вы настроили ваш VPS сервер на Linux и установили Redis сервер. Далее следуют некоторые отличия.
-
Если вы планируете использовать Redis сервер с другими серверами или с вашей локальной машины, необходимо изменить конфигурацию.
-
Откройте конфигурационный файл Redis:
sudo nano /etc/redis/redis.conf
Измените следующие параметры:
-
Замените
bind 127.0.0.1 -::1
наbind 0.0.0.0
-
Замените
#requirepass foobared
наrequirepass your_password
Сохраните изменения и закройте файл, нажав CTRL + X
, затем Y
для подтверждения сохранения и ENTER
.
Перезапустите Redis сервер:
sudo service redis-server restart
Проверьте статус сервера:
sudo service redis-server status
Если ошибок нет, значит всё настроено корректно.
Зачем мы изменяем настройки bind и #requirepass foobared на requirepass your_password в Redis?
-
Изменение bind 127.0.0.1 -::1 на bind 0.0.0.0
-
Эта настройка позволяет серверу принимать соединения на всех сетевых интерфейсах. То есть, Redis будет доступен для подключения с любых IP-адресов, что необходимо, если вы хотите подключаться к серверу удалённо с других машин или серверов.
-
Причина изменения: Для обеспечения удалённого доступа к Redis серверу, чтобы можно было использовать его из различных приложений и с разных серверов
-
Изменение
#requirepass foobared
наrequirepass your_password
-
Причина изменения: По умолчанию пароль для подключения не задан, а этим параметром мы установили пароль для подключения. Тут очень важно чтоб пароль был надежен, особенно когда вы установили bind 0.0.0.0
-
Перезапустите Redis сервер, чтобы применить изменения:
sudo service redis-server restart
Подключение к Redis:
Тут, в зависимости от того использовали вы пароль или нет может быть 2 варианта подключения:
-
через ссылку (с паролем и без)
-
через указание параметров подключения вместе с паролем и username
По умолчанию username = «default». В большинстве случаев этого достаточно, но если вы хотите добавить отдельного пользователя со своим именем и паролем, то необходимо воспользоваться утилитой redis-cli.
-
Заходим на сервер где развернут Redis
-
Вбиваем команду
redis-cli -a your_pass
-
Вводим команду:
ACL SETUSER new_user_name on ~* +@all
-
В этой команде:
-
new_user_name
— это имя нового пользователя. -
on
— указывает на включение пользователя. -
~*
— разрешает доступ ко всем ключам. -
+@all
— разрешает выполнение всех команд
-
-
Установка пароля для нового пользователя (опционально):
Если вы хотите установить пароль для нового пользователя, добавьте параметр RESETPASS
с указанием нового пароля:
ACL SETUSER newuser on ~* +@all RESETPASS your_new_password
Обратите внимание. Пароль необходимо передавать в хэшированном виде. Вот пример реализации на python.
from create_bot import bot
import hashlib
password = 'your_pass'
password_hash = hashlib.sha256(password.encode()).hexdigest()
print(password_hash)
# результат 8e498bfcf8aa1fa28a764b8eeb5546f44c0c24dba0c6587b112ced55f688a4f6
И после этого установка пароля будет выглядеть так:
ACL SETUSER new_user_name on ~* +@all RESETPASS #8e498bfcf8aa1fa28a764b8eeb5546f44c0c24dba0c6587b112ced55f688a4f6
Работа с Redis
В этой статье сильно акцентировать внимание на этом не буду, так как вы можете писать на разных языках программирования и использовать redis под разные задачи. Но дам общие принципы и покажу, как подключаться в контексте телеграмм ботов (будем Redis использовать в качестве storage для FSM на aiogram 3 — на эту тему планирую написать большую статью, а сейчас продемонстрирую маленький кусочек).
Устанавливаем redis
pip install redis
Импортируем хранилище:
from aiogram.fsm.storage.redis import RedisStorage
Инициируем storage по ссылке без пароля:
storage = RedisStorage.from_url('redis://HOST:6379/0')
Обратите внимание на формат ссылки. Она состоит из нескольких частей:
-
redis:// — указываем что подключаемся к Redis
-
HOST — это или IP-адрес сервера или «localhost», если запустили Redis на локальной машине
-
6379 — это порт по умолчанию. изменить можно через config
-
0 — это номер базы данных. По умолчанию в Redis баз данных 16 штук (от 0 до 15). Число можно увеличить через config.
Обратите внимание, что если в подключении имеется пароль, то данный метод не сработает.
Инициируем storage по ссылке с паролем и пользователем:
storage = RedisStorage.from_url('redis://username:password@193.3.168.217:6379/0')
Обратите внимание на формат ссылки. Тут мы дополнительно передаем пользователя и пароль для подключения. Пароль на этом этапе передаем в обычном виде (не в виде хэша).
Напоминаю, что если вы не добавляли пользователя отдельно, то его username = «default»
Подключение к Redis c явным указанием параметров.
Импортируем Redis в python:
import redis
Создаем объект:
r = redis.Redis(host='HOST', port=6379, db=0, username='username', password='your_pass')
Тестируем соединение:
try:
info = r.info()
print(info['redis_version'])
response = r.ping()
if response:
print("Подключение успешно!")
else:
print("Не удалось подключиться к Redis.")
except redis.exceptions.RedisError as e:
print(f"Ошибка: {e}")
Смотрим на консоль:
7.2.5
Подключение успешно!
r.ping()
отправляет команду PING
к Redis. Если Redis отвечает, метод вернет True
. Так же мы получили версию redis на сервере к которому подключались, а значит, что все сработало!
Заключение
Поднятие Redis сервера на различных платформах предоставляет множество возможностей для эффективного управления данными. Будь то кеширование, сессии или другие задачи, Redis обеспечивает высокую производительность и надёжность. Следуя данному руководству, вы сможете легко развернуть и настроить Redis сервер на Windows через WSL или на VPS, и начать использовать его в своих проектах.
В будущих статьях я продолжу глубже затрагивать эту тему, так как Redis часто используется в моей практике, особенно в реализации конечных автоматов (FSM) и планировщиков задач (apscheduler).
Подписывайтесь на обновления, чтобы узнать больше, и не забудьте оставить отклик по этой статье.
Благодарю за внимание. До скорого!
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Узнали новое?
Проголосовали 55 пользователей. Воздержались 4 пользователя.
#База знаний
-
0
Пошаговое руководство по работе с популярной NoSQL базой данных.
vlada_maestro / shutterstock
Преподаватель Skillbox. Пишет про Java, учит Go. Помнит рассвет PHP и как «грабить корованы».
Просто и быстро установить Redis в ОС Windows позволяет Chocolatey. Это менеджер пакетов в среде Windows, аналогичный apt-get в мире Linux. С его помощью можно устанавливать множество программ и обновлять их, не скачивая каждый раз дистрибутив с сайта.
Действуем по инструкции с официального сайта проекта Chocolatey.
- Windows 7+ / Windows Server 2003+;
- PowerShell v2+. Для установки с сайта требуется как минимум v3 (из-за требований TLS 1.2);
- .NET Framework 4+. Программа попытается установить .NET 4.0, если он не установлен. Минимальная необходимая версия для установки с этого веб-сайта — 4.5 (из-за требований TLS 1.2).
Запустите консоль запуска команд, нажав WIN + R, и введите команду cmd. Если вверху выведена версия Windows, как на скриншоте, этого достаточно.
Если нет, введите команду systeminfo. В начале вывода должна появиться версия Windows.
Если у вас установлена версия 7 или выше — переходим к следующему шагу.
Для этого открываем PowerShell, вводим команду $PSVersionTable.PSVersion и получаем ответ:
На нашем скриншоте версия PowerShell 5.1. Если у вас версия ниже 3, необходимо установить PowerShell версии 3 (или выше). Инструкция есть по этой ссылке.
Запускаем редактор реестра: нажимаем WIN + R и выполняем команду regedit.
Переходим в раздел
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP и смотрим, какие папки там присутствуют:
Если нет такой ветки или отсутствует версия 4.0 и выше, то необходимо её установить. Подробная инструкция находится по этой ссылке.
После всех подготовительных действий устанавливаем Chocolatey. Это делается одной командой PowerShell.
Важно! До начала установки необходимо проверить, есть ли на это права. Если прав недостаточно, их нужно добавить.
В PowerShell необходимо убедиться, что Get-ExecutionPolicy не является Restricted. Рекомендуется использовать Bypass для снятия ограничений или AllSigned для более безопасного использования.
Выполните команду Get-ExecutionPolicy. Если она вернёт Restricted, запустите Set-ExecutionPolicy AllSigned (рекомендуется) или Set-ExecutionPolicy Bypass -Scope Process.
После этого введите команду установки:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
Если всё прошло успешно, получим:
В этом случае можно переходить к установке пакетов приложений. В нашем случае это будет Redis.
Находим в поиске Chocolatey нужный пакет Redis, например, https://chocolatey.org/packages/redis-64/3.0.503 — и копируем (клавиши Ctrl-C) указанную на сайте ссылку для установки:
Примечание: после версии 3.0.503 текущий проект был переименован и больше не разрабатывался, однако для знакомства с Redis и её изучения подходит.
Затем вводим скопированную команду из буфера обмена (Ctrl-V) в консоль PowerShell:
choco install redis-64 --version 3.0.503
Если установка прошла нормально, получаем:
Теперь пробуем использовать Redis. Для этого запускаем сервер, выполнив команду:
Если у вас включён брандмауэр, разрешите в нём доступ к Redis. В консоли PowerShell должно появиться сообщение о том, что сервер Redis работает и принимает соединения.
После этого откройте ещё одно окно Powershell, не закрывая окно с запущенным сервером. В новом выполните команду:
Теперь вы можете использовать redis в командной строке для работы с сервером Redis:
Для использования в коде программы и для связи с сервером вам может понадобиться номер порта для подключения. Его можно найти в окне запуска Redis:
Бесплатный курс по Python ➞
Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе.
Смотреть программу
Learn Step By Step to install and set up Redis on Windows..
This tutorial shows multiple ways to install the Redis server on Windows.
- Using Docker
- Using Windows Subsystem for Linux
- Window Installer or Zip
Following are the steps required to install Redis as a window Service
- First, Download Redis for windows
. - It downloads to the
Redis-x64-5.0.14.1.msi
file - Click on to install on windows.
- Click next to proceed next steps.
- In The Destination Folder, Give the path
A:\Java\Redis\
. - Next Screen, It asks for the
Port to run Redis on
box to6379
. - Give all default values and click the Next button
- It installs as a window Services
- Start the Redis server by Window + Run and type “Services.msc”.
- It opens Services Window, selects Redis Services, and Right-click to start, restart and stop the server.
Install Redis using docker in Windows?
Redis can be installed using docker.
Check whether Redis is installed or not in windows
First, Open Command Line
change directory to the path A:\Java\Redis\
in terminal
cd A:\Java\Redis\
Run the below command to check the Redis version
It gives an installed redis server version
A:\Java\Redis>redis-server -v
Redis server v=5.0.14.1 sha=ec77f72d:0 malloc=jemalloc-5.2.1-redis bits=64 build=5627b8177c9289c
next, type redis-cli
on the command prompt to check cli is working or not
A:\Java\Redis>redis-cli
127.0.0.1:6379>
try running the ping command to print the hello world message
127.0.0.1:6379> ping "Hello World"
"Hello World"
How to run Redis Server as Daemon background in Windows
redis-server has daemonize
option with yes value.
C:\Users\Kiran\Downloads\Redis-x64-5.0.14.1>redis-server --daemonize yes
[5416] 07 Mar 13:23:08.601 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
[5416] 07 Mar 13:23:08.601 # Redis version=5.0.14.1, bits=64, commit=ec77f72d, modified=0, pid=5416, just started
[5416] 07 Mar 13:23:08.601 # Configuration loaded
[5416] 07 Mar 13:23:08.601 # Windows does not support daemonize. Start Redis as service
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 5.0.14.1 (ec77f72d/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 5416
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
[5416] 07 Mar 13:23:08.617 # Server initialized
[5416] 07 Mar 13:23:08.617 * DB loaded from disk: 0.000 seconds
[5416] 07 Mar 13:23:08.617 * Ready to accept connections
however, Windows does not support daemonize
, We have to install as a Window Service.
It is not possible to install as daemon or background, If you installed Redis with Zip folder(not msi file)
You can install as a service with below command
redis-server --server-install
if the above command does not work, install Redis as a service
28 ноября 2024
Что такое Redis, и для чего он нужен? Как его установить и использовать? Основные типы данных.
- все проекты выполнены в плановые сроки, а результаты приняты Заказчиками;
- корпоративная награда Logrocon. «Команда года — 2022»;
- повышение квалификации:
- обучение методологии разработки учётной системы ERP Ultima 2C и интеграции её с внешними системами.
Навыки
Разработка ПО:
- Стек технологий .NET — C#, ASP .NET MVC, LINQ, Entity Framework, Dapper, .NET Core;
- PHP (YII, Cake PHP);
- 1С;
- DI контейнеры — Autofac, MEF, Castle Windsor, .NET Core встроенный;
- Стек технологий frontend — HTML, CSS, SAAS, Bootstrap, AngularJS, ReactJS, Redux, Javascript native, Webpack, NodeJS;
- написание тестов: NUnit, xUnit;
- навыки проектирования и реализации БД (SQL / T-SQL).
Опыт использования продуктов:
- системыконтроля версий — Git, TFS, SVN;
- среды разработки — MS Visual Studio, VS Code, PgAdmin, MS SQL Management studio, Oracle sql developer;
- базыданных — PostgreSQL, MSSQL Server, Oracle, MySql, MongoDb, ElasticSearch, OpenSearch;
- коммуникационные шины — RabbitMQ;
- хранилища в памяти — Redis;
- логирование — Nlog, Serilog, Loki + Grafana;
- валидация — FluentValidation.
Развертывание: · Docker.
Кеширование на уровне приложения vs Распределённое кеширование
Redis (Remote Dictionary Server) — удалённое хранилище в памяти
Может использоваться как база данных, как брокер сообщений. В основном используется в роли кеша, предназначенного для ускорения получения данных в паре с основной базой данных (PostgreSQL и др.). Целесообразно хранить данные, которые редко меняются и используются на чтение.
Установка Redis на Windows
1. Включить WSL (подсистема Windows для Linux).
2. Установить дистрибутив Ubuntu.
3. Запустить терминал, задать логин, пароль, обновить (sudo apt-get update) …
4. Установить Redis, запустить redis-cli. При необходимости указать хост и порт.
Ключи Redis (регистрозависимые)
Любая последовательность байтов. Обычно используются строки, но можно также использовать числа (будет переведено в строку) или содержимое файла
Для получения всех ключей (или только нужных — по паттерну) используется команда KEYS
В ключе можно выделять основную часть (и) и специфичную для данной записи — для облегчения поиска по паттерну => animals.cat.
Подробнее о теме в нашей видеолекции ниже.
Содержание лекции:
00:00:00 — Вступление. Зачем нужен Redis? Что такое кеширование?
00:05:55 — Установка на Windows. Ключи Redis.
00:12:23 — Основные типы данных. Строки (String). Неупорядоченные множества (Set). Списки (List). Хэш таблицы (Hash).
00:21:35 — Устаревание данных (expiration). redis-cli help.
00:24:41 — Почему именно Redis? Варианты развертывания.
00:32:00 — Постоянное хранение в Redis. OpenSource интерфейс взаимодействия (Another Redis Desktop Manager).
00:39:38 — Использование Redis с помощью библиотек C#. Распределенная блокировка (алгоритм Redlock). Распределенное кеширование.
00:44:50 — Запускаем тестовое приложение. Работа с библиотекой StackExchange.Redis.
00:54:49 — Вопросы.
Вам также может быть интересно