Как установить Redis на Ubuntu
Обновлено: 21.11.2024
Redis — это мощное хранилище пар "ключ-значение" в памяти, которое можно использовать в качестве сервера базы данных, кэша и брокера сообщений. Он широко известен своей высокой производительностью, гибкостью и поддержкой самых разных языков. Это бесплатное программное обеспечение с открытым исходным кодом, написанное на языке программирования C. В этом руководстве вы узнаете, как установить и защитить Redis в Ubuntu 18.04.
Предпосылки
Чтобы следовать этому руководству, вам необходимо заранее подготовить несколько вещей. Вам нужен сервер Ubuntu 18.04, который вы можете легко установить, следуя нашему руководству. Кроме того, вам необходимо иметь пользователя без полномочий root с привилегиями sudo и настроить базовый брандмауэр. Вы можете настроить это, следуя нашим руководствам по настройке файла sudoers для Linux и настройке UFW на облачном сервере Ubuntu и Debian.
Установка Redis
Redis доступен непосредственно в официальном репозитории Ubuntu. Это самый простой способ его установки и настройки. Мы рекомендуем следовать этому пути, если нет особых причин не делать этого. Поскольку исходный код Redis доступен бесплатно, также можно собрать Redis из исходного кода. Однако мы не рекомендуем его, потому что управлять им и обновлять его сложнее.
Установите Redis из репозитория Ubuntu
Сначала обновите локальный кэш пакетов APT:
Затем установите Redis с помощью следующей команды:
Установить Redis из исходного кода
По умолчанию Ubuntu не поставляется с инструментами для сборки и необходимыми библиотеками. Следующая команда установит все необходимые инструменты для сборки Redis:
Есть две дополнительные зависимости для сборки Redis. Эти зависимости необходимы для компиляции Redis с дополнительными функциями, например, поддержкой TLS, интеграцией с systemd и т.д. Для компиляции Redis с поддержкой TLS установите пакет «libssl-dev». Чтобы скомпилировать Redis для поддержки systemd, установите пакет «libsystemd-dev»:
Исходный код Redis доступен на GitHub. Посетите страницу Redis на GitHub. Затем возьмите исходный код:
Измените текущий активный каталог на каталог исходного кода Redis:
После этого запустите инструмент make, чтобы начать компиляцию. Он скомпилирует Redis без каких-либо дополнительных элементов:
Чтобы включить поддержку TLS (при условии, что «libssl-dev» установлен), используйте следующую команду:
Чтобы включить поддержку systemd (при условии, что «libsystemd-dev» установлен), используйте следующую команду:
Далее проверьте, прошла ли компиляция успешно. Обратите внимание, что для запуска теста может потребоваться дополнительный пакет «tcl-dev» и связанные с ним зависимости:
Наконец, установите Redis, выполнив следующую команду:
Если Redis был создан с использованием TLS, то запуск сервера должен выполняться следующим образом:
Настройка Redis
После завершения установки пришло время настроить Redis. Откройте файл конфигурации Redis в текстовом редакторе и прокрутите вниз до раздела «контролируемый»:
Измените значение «supervised» на «systemd». Это гарантирует, что служба Redis будет управляться системами. Чтобы изменения вступили в силу, перезапустите службу Redis:
Тестирование Redis
Всегда полезно проверить, правильно ли работает Redis, прежде чем использовать его в дальнейшем. Вот несколько способов проверить поведение Redis. Первый шаг — проверить, запущена ли и работает ли служба Redis:
Здесь Redis уже запущен. По умолчанию служба Redis запускается при загрузке. Если службу Redis нужно запускать вручную, отключите ее:
Следующий тест — проверка с помощью консоли Redis. Запустите клиент командной строки Redis:
Выполните команду «ping»:
Вывод подтверждает, что соединение с сервером все еще активно. Следующий тест — посмотреть, позволяет ли он устанавливать ключи. Создайте ключ «temp» со значением «hello world:»
Получить значение с помощью команды «get»:
Если пока все работает нормально, Redis должен вернуть значение ключа без каких-либо проблем. Закройте клиент командной строки Redis:
Последний тест — проверить, может ли Redis сохранять данные, даже если он остановлен или перезапущен. Перезапустите службу Redis:
Если вы получили сообщение об ошибке при выполнении вышеуказанной команды, используйте команду «systemctl enable redis-server»:
На этом тестирование Redis завершается. Теперь ваш сервер Redis готов к использованию по назначению.
Защита Redis
На данный момент Redis полностью готов к работе.Однако некоторые из его конфигураций по умолчанию не обеспечивают наилучшей безопасности. Если не обновиться, любой злоумышленник может воспользоваться возможностью получить доступ к серверу и его данным. В этом разделе будет показано, как уменьшить эти уязвимости. Хотя эти действия необязательны, настоятельно рекомендуется выполнять их, чтобы усилить безопасность системы.
Привязка к локальному хосту
По умолчанию Redis доступен только с локального хоста. Однако, если Redis был настроен на удаленном сервере, конфигурацию необходимо обновить, чтобы разрешить подключение из любого места. Однако это может быть не так безопасно, как привязка к локальному хосту. Чтобы повторно привязать Redis к локальному хосту, откройте файл конфигурации Redis в текстовом редакторе:
Прокрутите вниз и найдите следующий. Убедитесь, что это не закомментировано:
Сохраните и закройте файл. Затем перезапустите службу Redis, чтобы изменения сразу вступили в силу:
Убедитесь, что изменение прошло успешно:
Если вы получите сообщение об ошибке «netstat: команда не найдена», используйте команду для установки сетевых инструментов «sudo apt-get install net-tools». Вывод подтверждает, что «redis-сервер» успешно привязан к локальному хосту (127.0.0.1), что отражает недавно внесенное изменение. Если есть какой-то другой IP-адрес (например, 0.0.0.0), то перепроверьте файл конфигурации и снова перезапустите сервер Redis.
Настройка пароля Redis
Настройка пароля позволяет использовать встроенную функцию безопасности Redis — команду «AUTH». Он требует, чтобы клиенты аутентифицировались для доступа к базе данных. По умолчанию в Redis пароль не настроен. Пароль должен быть объявлен в файле конфигурации Redis. Откройте файл конфигурации в текстовом редакторе:
Затем прокрутите вниз до следующей строки и раскомментируйте ее:
После раскомментирования паролем по умолчанию будет «foobared». Измените его на пароль по вашему выбору. Когда дело доходит до Redis, серьезной проблемой является надежность пароля. Поскольку Redis — это высокопроизводительный сервер, его потенциально проще использовать для атак методом перебора. Вот почему файл конфигурации прямо содержит следующее предупреждение. Вот краткий пример создания очень надежного случайного пароля. Мы будем использовать команду OpenSSL для генерации случайной строки:
После настройки нового пароля перезапустите службу Redis, чтобы изменения вступили в силу:
Пришло время проверить, успешно ли применен пароль. Запустите консоль командной строки Redis:
Затем попробуйте установить новый ключ:
Redis отклонит запрос, так как для действия нет аутентификации. Для выполнения каких-либо действий на сервере пользователь должен сначала авторизоваться. Авторизуйте пользователя с помощью следующей команды:
Если пароль правильный, Redis подтвердит действие. Теперь Redis разрешит доступ к функциям своего сервера:
На данный момент наша работа с консолью Redis завершена. Вы можете закрыть консоль:
Переименование опасных команд
Redis позволяет переименовывать или полностью отключать определенные команды, которые считаются опасными. Это еще одна важная встроенная функция безопасности Redis. Почему команды считаются опасными? Если эти команды запускаются неавторизованным пользователем, они могут изменить конфигурацию, уничтожить или стереть данные на сервере. Обычной практикой является отключение/переименование множества опасных команд Redis. Обратите внимание, что угроза безопасности команды зависит от ситуации. Например, некоторые из следующих команд могут быть необходимы на регулярной основе. В таких случаях отключать их не рекомендуется. В такой ситуации переименование команды может оказаться более полезным. Вот краткий список команд, которые считаются опасными. Это хорошая отправная точка для повышения безопасности сервера Redis:
- FLUSHDB
- ПРОМЫВКА
- КЛЮЧИ
- ПРОДОЛЖЕНИЕ
- УДАЛ
- НАСТРОЙКА
- ВЫКЛЮЧЕНИЕ
- BGREWRITEAOF
- СОХРАНИТЬ БГС
- СОХРАНИТЬ
- СПОП
- СРЭМ
- ПЕРЕИМЕНОВАТЬ
- ОТЛАДКА
Чтобы переименовать или отключить команду, ее необходимо объявить в файле конфигурации Redis. Откройте файл конфигурации Redis и добавьте следующие строки. Здесь «rename-command» используется для переименования команд в пустую строку. Добавьте столько записей, сколько необходимо:
Redis – это хранилище данных в памяти с открытым исходным кодом. Он используется как гибкая, высокодоступная база данных "ключ-значение", поддерживающая высокий уровень производительности.
Помимо производительности и гибкости, Redis отличается широкой языковой поддержкой, высокой доступностью и автоматическим разделением.
Из этого руководства вы узнаете, как установить Redis в Ubuntu 20.04/18.04.
- Система под управлением Ubuntu 20.04 (или Ubuntu 18.04)
- Доступ к окну терминала/командной строке
- Права Sudo или root на локальных/удаленных компьютерах
Установите и защитите Redis в Ubuntu
Следующие шаги объясняют, как установить Redis в Ubuntu 20.04. Вы также можете использовать это руководство в Ubuntu 18.04.
Помимо установки и настройки базовой конфигурации, в руководстве рассказывается, как добавить аутентификацию по паролю, привязать Redis к локальному хосту и переименовать опасные команды.
Шаг 1. Установите Redis
Выполните шаги, описанные ниже, чтобы установить и настроить Redis в вашей системе Ubuntu.
<р>1. Начните с обновления репозитория пакетов: <р>2. Затем установите Redis с помощью команды:Шаг 2. Настройте Redis
<р>1. После завершения установки измените файл конфигурации Redis. Для этого откройте файл в любом текстовом редакторе (мы используем nano): <р>2. Далее найдите строку, определяющую контролируемую директиву. По умолчанию для этой строки установлено значение no . Однако, чтобы управлять Redis как службой, установите для контролируемой директивы значение systemd (система инициализации Ubuntu).<р>3. Сохраните изменения и закройте файл.
<р>4. Наконец, перезапустите службу Redis, выполнив:Шаг 3. Проверка установки Redis
Чтобы убедиться, что вы правильно настроили Redis, проверьте, запущена ли служба. Кроме того, проверьте подключение к серверу и возможность установки пары "ключ-значение".
Шаг 3.1. Проверьте статус службы Redis
Проверьте состояние службы Redis, выполнив команду:
Вывод должен отображать, что служба активна (и работает), как показано на изображении ниже.
Шаг 3.2. Проверьте подключение к Redis
Вы также должны проверить подключение к серверу Redis с помощью инструмента redis-cli. Чтобы подключиться к этому клиенту командной строки, введите в окне терминала следующее:
Вы перейдете к командной строке redis-cli. Чтобы проверить подключение, запустите:
Вывод должен отвечать:
Шаг 3.3. Тестовая настройка пар "ключ-значение"
Поскольку Redis — это база данных NoSQL типа "ключ-значение" в памяти, вы также можете проверить, извлекает ли она назначенные значения на основе указанного ключа.
Сначала установите ключ с помощью команды set. В этом примере ключ помечен как key1 и должен иметь значение «Вы успешно установили пару ключ-значение!» .
Для этого выполните команду:
<р>2. Как только вы нажмете Enter, на приглашение отобразится OK. <р>3. Теперь проверьте, успешно ли вы присвоили данное значение ключу с помощью команды get: <р>4. Вывод должен ответить сообщением, которое вы добавили в качестве значения на первом шаге.<р>5. Чтобы выйти из оболочки Redis, выполните:
Примечание. Redis невероятно гибок и поддерживает самые разные типы данных. Прочтите нашу статью, чтобы узнать все о типах данных Redis.
Шаг 4. Защитите Redis
Шаг 4.1. Настройте аутентификацию Redis
Redis включает функцию аутентификации в качестве дополнительного уровня безопасности. Функция не включена по умолчанию. Поэтому вам нужно изменить файл конфигурации, чтобы активировать его.
<р>1. Для начала откройте файл конфигурации Redis для редактирования: <р>3. Раскомментировав строку, замените foobared паролем по вашему выбору.<р>4. Сохраните и закройте файл.
<р>5. Перезапустите службу Redis:После того как вы настроите Redis на требование аутентификации, он будет отклонять любые запросы, пока вы не предоставите требуемый пароль.
Например, если вы переключитесь на командную строку redis-cli и попытаетесь запустить тест ping, на выходе появится сообщение: (ошибка) Требуется аутентификация NOAUTH.
Единственный способ начать работу в Redis в таком случае — указать пароль, указанный в файле конфигурации.
Используйте команду:
Если вывод отвечает OK, все готово.
Шаг 4.2. Привязка Redis к локальному хосту
Если вы установили программное обеспечение, выполнив шаги, описанные выше, Redis должен быть доступен только с локального хоста. Такое ограничение доступа является вопросом сетевой безопасности.
Однако вы могли изменить настройки по умолчанию и теперь хотите ограничить подключения к локальному хосту.
Для этого откройте файл конфигурации Redis для редактирования:
После сохранения и выхода из файла обязательно перезапустите службу с помощью:
Благодаря этому вам удалось привязать Redis к локальному хосту, ограничив доступ к другим подключениям.
Примечание. Если вы новичок в Redis и ищете способ легко очистить кеш или автоматизировать очистку кеша, обратитесь к нашему руководству Как очистить кеш Redis.
Шаг 4.3. Переименуйте или уничтожьте опасные команды
Еще один способ защитить ваши данные — отключить определенные команды или переименовать их, чтобы их нельзя было угадать. Это полезная функция безопасности, которая может запретить обычным пользователям использовать команды, которые могут нанести вред системе.
Чтобы отключить или переименовать такие команды, откройте файл конфигурации Redis:
Например, чтобы переименовать команду CONFIG, добавьте строку:
В этом примере команда config переименована в sys_admin_config_836 (о чем обычный пользователь не догадается).
Чтобы удалить определенные команды, вы можете отключить (убить) их. Для этого переименуйте опасную команду в пустую строку.
Поэтому, если вы хотите отключить команду config, добавьте строку:
После внесения этих изменений обязательно сохраните их и перезапустите службу Redis.
Это руководство поможет вам установить и настроить Redis на Ubuntu 20.04 (или 18.04). Кроме того, в нем содержится несколько советов по обеспечению безопасности хранилища данных Redis.
Базы данных NoSQL, такие как Redis, предназначены для эффективной работы в распределенных кластерах с горизонтальным масштабированием. Использование Docker для развертывания Redis в контейнере превращает горизонтальное масштабирование в рутинный и простой процесс.
Это документ для быстрого старта, предназначенный для людей, не имеющих опыта работы с Redis. Чтение этого документа поможет вам:
- Загрузите и скомпилируйте Redis, чтобы приступить к взлому.
- Используйте redis-cli для доступа к серверу.
- Используйте Redis из своего приложения.
- Понять, как работает сохраняемость Redis.
- Установите Redis более правильно.
- Узнайте, что читать дальше, чтобы узнать больше о Redis.
Предлагаемый способ установки Redis – это компиляция из исходных кодов, поскольку Redis не имеет никаких зависимостей, кроме работающего компилятора GCC и libc. Не рекомендуется устанавливать его с помощью диспетчера пакетов вашего дистрибутива Linux, поскольку обычно доступная версия не является последней.
Чтобы скомпилировать Redis, выполните следующие простые шаги:
На этом этапе вы можете проверить, правильно ли работает ваша сборка, набрав make test, но это необязательный шаг. После компиляции каталог src внутри дистрибутива Redis заполняется различными исполняемыми файлами, которые являются частью Redis:
- redis-server — это сам сервер Redis.
- redis-sentinel — это исполняемый файл Redis Sentinel (мониторинг и отработка отказа).
- redis-cli — это утилита интерфейса командной строки для взаимодействия с Redis.
- redis-benchmark используется для проверки производительности Redis.
- redis-check-aof и redis-check-rdb (redis-check-dump в версии 3.0 и ниже) полезны в редких случаях повреждения файлов данных.
Рекомендуется скопировать сервер Redis и интерфейс командной строки в нужные места либо вручную, используя следующие команды:
- sudo cp src/redis-server /usr/local/bin/
- sudo cp src/redis-cli /usr/local/bin/
Или просто с помощью sudo make install .
В следующей документации мы предполагаем, что /usr/local/bin находится в вашей переменной среды PATH, чтобы вы могли запускать оба двоичных файла без указания полного пути.
Самый простой способ запустить сервер Redis — просто выполнить двоичный файл redis-server без каких-либо аргументов.
В приведенном выше примере Redis был запущен без явного файла конфигурации, поэтому все параметры будут использовать внутренние значения по умолчанию. Это совершенно нормально, если вы запускаете Redis просто для того, чтобы немного поиграть с ним или для разработки, но для производственных сред вам следует использовать файл конфигурации.
Чтобы запустить Redis с файлом конфигурации, используйте полный путь к файлу конфигурации в качестве первого аргумента, как в следующем примере: redis-server /etc/redis.conf. Вы должны использовать файл redis.conf, включенный в корневой каталог дистрибутива исходного кода Redis, в качестве шаблона для записи файла конфигурации.
Внешние программы взаимодействуют с Redis, используя сокет TCP и специальный протокол Redis. Этот протокол реализован в клиентских библиотеках Redis для разных языков программирования. Однако, чтобы упростить работу с Redis, Redis предоставляет утилиту командной строки, которую можно использовать для отправки команд в Redis. Эта программа называется redis-cli.
Первое, что нужно сделать, чтобы проверить, правильно ли работает Redis, — это отправить команду PING с помощью redis-cli:
Запуск redis-cli, за которым следует имя команды и ее аргументы, отправит эту команду экземпляру Redis, работающему на локальном хосте с портом 6379. Вы можете изменить хост и порт, используемые redis-cli, просто попробуйте параметр --help чтобы проверить информацию об использовании.
Еще один интересный способ запустить redis-cli без аргументов: программа запустится в интерактивном режиме, вы сможете вводить разные команды и видеть их ответы.
С этого момента вы можете общаться с Redis. Сейчас самое время немного приостановиться в этом руководстве и начать пятнадцатиминутное введение в типы данных Redis, чтобы изучить несколько команд Redis. В противном случае, если вы уже знаете несколько основных команд Redis, вы можете продолжить чтение.
По умолчанию Redis привязывается ко всем интерфейсам и вообще не использует аутентификацию. Если вы используете Redis в очень контролируемой среде, отделенной от внешнего интернета и вообще от злоумышленников, это нормально. Однако если Redis без какой-либо защиты будет доступен в Интернете, это станет серьезной проблемой безопасности. Если вы не уверены на 100 %, что ваша среда защищена должным образом, проверьте следующие шаги, чтобы сделать Redis более безопасным, которые перечислены в порядке повышения безопасности.
- Убедитесь, что порт, который Redis использует для прослушивания подключений (по умолчанию 6379 и дополнительно 16379, если вы запускаете Redis в кластерном режиме, плюс 26379 для Sentinel), защищен брандмауэром, чтобы невозможно было связаться с Redis из внешнего мира.
- Используйте файл конфигурации, в котором задана директива bind, чтобы гарантировать, что Redis прослушивает только те сетевые интерфейсы, которые вы используете. Например, только петлевой интерфейс (127.0.0.1), если вы получаете доступ к Redis только локально с того же компьютера и т. д.
- Используйте параметр requirepass, чтобы добавить дополнительный уровень безопасности, чтобы клиентам требовалось проходить аутентификацию с помощью команды AUTH.
- Используйте шпионское или другое программное обеспечение для туннелирования SSL, чтобы зашифровать трафик между серверами Redis и клиентами Redis, если ваша среда требует шифрования.
Обратите внимание, что Redis, подключенный к Интернету без какой-либо защиты, очень легко взломать, поэтому убедитесь, что вы понимаете вышеизложенное, и примените хотя бы уровень брандмауэра. После установки брандмауэра попробуйте подключиться с помощью redis-cli с внешнего хоста, чтобы убедиться, что этот экземпляр на самом деле недоступен.
Конечно, использовать Redis только из интерфейса командной строки недостаточно, поскольку цель состоит в том, чтобы использовать его из вашего приложения. Для этого вам необходимо загрузить и установить клиентскую библиотеку Redis для вашего языка программирования. На этой странице вы найдете полный список клиентов для разных языков.
Например, если вы используете язык программирования Ruby, мы рекомендуем использовать клиент Redis-rb. Вы можете установить его с помощью команды gem install redis.
Эти инструкции специфичны для Ruby, но на самом деле многие клиенты библиотек для популярных языков выглядят очень похоже: вы создаете объект Redis и выполняете команды, вызывающие методы. Короткий интерактивный пример с использованием Ruby:
Вы можете узнать, как работает сохраняемость Redis, на этой странице, однако для быстрого старта важно понимать, что по умолчанию, если вы запускаете Redis с конфигурацией по умолчанию, Redis самопроизвольно сохраняет набор данных только время от времени ( например, по крайней мере через пять минут, если у вас есть как минимум 100 изменений в ваших данных), поэтому, если вы хотите, чтобы ваша база данных сохранялась и перезагружалась после перезапуска, обязательно вызывайте команду SAVE вручную каждый раз, когда вы хотите принудительно установить набор данных. снимок. В противном случае обязательно отключите базу данных с помощью команды SHUTDOWN:
Так Redis обязательно сохранит данные на диск перед выходом. Настоятельно рекомендуется прочитать страницу сохраняемости, чтобы лучше понять, как работает сохраняемость Redis.
Запуск Redis из командной строки удобен только для того, чтобы немного поработать с ним или для разработки. Однако в какой-то момент у вас появится реальное приложение для запуска на реальном сервере. Для такого использования у вас есть два разных варианта:
- Запуск Redis с помощью экрана.
- Установите Redis в вашем Linux-компьютере надлежащим образом, используя сценарий инициализации, чтобы после перезагрузки все снова запустилось должным образом.
Настоятельно рекомендуется правильная установка с использованием сценария инициализации. Следующие инструкции можно использовать для правильной установки с помощью сценария инициализации, поставляемого с Redis 2.4 в дистрибутивах на основе Debian или Ubuntu.
Мы предполагаем, что вы уже скопировали исполняемые файлы redis-server и redis-cli в /usr/local/bin.
Создайте каталог для хранения файлов конфигурации Redis и ваших данных:
Скопируйте сценарий инициализации, который вы найдете в дистрибутиве Redis в каталоге utils, в /etc/init.d. Мы предлагаем называть его именем порта, на котором вы запускаете этот экземпляр Redis. Например:
Отредактируйте сценарий инициализации.
Обязательно измените REDISPORT в соответствии с используемым портом. И путь к файлу pid, и имя файла конфигурации зависят от номера порта.
Скопируйте файл конфигурации шаблона, который вы найдете в корневом каталоге дистрибутива Redis, в /etc/redis/, используя номер порта в качестве имени, например:
Создайте каталог внутри /var/redis, который будет работать как каталог данных и рабочий каталог для этого экземпляра Redis:
Отредактируйте файл конфигурации, внеся следующие изменения:
- Установите для параметра daemonize значение "да" (по умолчанию установлено значение "нет").
- Задайте для pid-файла значение /var/run/redis_6379.pid (при необходимости измените порт).
- Измените порт соответствующим образом. В нашем примере он не нужен, так как порт по умолчанию уже 6379.
- Установите предпочитаемый уровень ведения журнала.
- Установите файл журнала /var/log/redis_6379.log
- Установите каталог /var/redis/6379 (очень важный шаг!)
Наконец добавьте новый сценарий инициализации Redis на все уровни выполнения по умолчанию, используя следующую команду:
Готово! Теперь вы можете попробовать запустить свой экземпляр с помощью:
Убедитесь, что все работает должным образом:
- Попробуйте пропинговать свой экземпляр с помощью redis-cli.
- Выполните тестовое сохранение с помощью redis-cli и убедитесь, что файл дампа правильно сохранен в /var/redis/6379/ (вы должны найти файл с именем dump.rdb).
- Убедитесь, что ваш экземпляр Redis правильно регистрируется в файле журнала.
- Если это новая машина, на которой вы можете попробовать ее без проблем, убедитесь, что после перезагрузки все по-прежнему работает.
Примечание. В приведенных выше инструкциях мы пропустили многие параметры конфигурации Redis, которые вы хотели бы изменить, например, для использования сохраняемости AOF вместо сохраняемости RDB, для настройки репликации и т. д. Обязательно прочтите пример файла redis.conf (который содержит много комментариев) и другую документацию, которую вы можете найти на этом веб-сайте для получения дополнительной информации.
Этот веб-сайт представляет собой программное обеспечение с открытым исходным кодом и спонсируется Redis Ltd. Просмотреть все авторы.
Redis — это хранилище данных в памяти. То есть Redis хранит данные в памяти компьютера (ОЗУ). Redis используется в качестве кеш-сервера веб-сайта или приложения и кеша базы данных. Кэш-сервер значительно повышает производительность вашего веб-сайта или приложения, поскольку наиболее часто используемые данные кэшируются в оперативной памяти вашего компьютера, что очень быстро.
На простом примере необходимость в кэш-сервере станет намного понятнее. Допустим, у вас есть приложение-словарь английского языка. В вашей словарной базе около 200 000 слов. Когда пользователь ищет слово в вашем приложении, ваше приложение должно искать в базе данных и находить слово, а затем отображать значение и несколько примеров предложений для пользователя. Но 90% или более людей ищут очень распространенные слова, скажем, 30 000 слов из 200 000 слов в вашей базе данных. Таким образом, ваше приложение-словарь тратит много времени на поиск в базе данных одного и того же слова. Таким образом, увеличивается нагрузка на сервер и время доступа к странице. Что, если бы вы могли быстрее и эффективнее доставлять обычно просматриваемые 30 000 слов? Что ж, если вы настроите кеш-сервер и кешируете наиболее часто просматриваемые слова, то нагрузка на сервер уменьшится на 90%. Ваше приложение также будет реагировать быстрее, чем когда-либо. Таким образом, вы можете сделать больше с меньшими затратами. Вам не нужен очень мощный сервер, если вы используете кеш-сервер между ними. Производительность приложения-словаря можно быстро повысить без увеличения затрат.
Теперь вы знаете, насколько важны кэш-серверы. Redis — отличное решение для кэширования. В этой статье я покажу вам, как установить Redis на Ubuntu. Для демонстрации я буду использовать Ubuntu 18.04 LTS. Но это должно работать для любой современной версии Ubuntu. Приступим.
Redis доступен в официальном репозитории пакетов Ubuntu. Так что это действительно легко установить. Сначала обновите кэш репозитория пакетов APT на вашем компьютере с Ubuntu с помощью следующей команды:
Кэш репозитория пакетов APT должен быть обновлен.
Теперь установите Redis с помощью следующей команды:
Теперь нажмите y, а затем нажмите, чтобы продолжить.
Redis должен быть установлен.
Теперь проверьте, правильно ли работает Redis, с помощью следующей команды:
Как видите, на моем компьютере с Ubuntu 18.04 LTS Redis 4.0.9 установлен и работает правильно.
Запуск и остановка службы Redis:
Теперь, чтобы проверить, запущена ли служба Redis, выполните следующую команду:
Как видите, служба Redis запущена.
Чтобы остановить службу Redis, выполните следующую команду:
Как видите, служба Redis больше не работает.
Чтобы запустить службу Redis, выполните следующую команду:
Как видите, служба Redis снова работает.
Запуск Redis при загрузке системы:
Если вы хотите, чтобы служба Redis запускалась при загрузке компьютера, вы можете добавить службу Redis в системный запуск вашего компьютера с Ubuntu. Добавьте службу Redis в системный запуск вашего компьютера с Ubuntu с помощью следующей команды:
Служба Redis должна быть добавлена при запуске системы вашего компьютера с Ubuntu.
Удаление службы Redis из автозапуска системы:
Если вы добавили службу Redis в автозагрузку вашего компьютера с Ubuntu и хотите удалить ее из автозагрузки системы сейчас, выполните следующую команду:
Служба Redis должна быть удалена из системного запуска вашего компьютера с Ubuntu.
Создание Redis из исходного кода:
Вы также можете собрать Redis из исходного кода в Ubuntu. Это легко, потому что Redis не имеет никаких зависимостей. Все, что вам нужно, это иметь рабочий набор инструментов компилятора GCC. Вы можете легко установить GCC и все инструменты сборки в Ubuntu с помощью следующей команды:
Теперь нажмите y, а затем нажмите .
Должны быть установлены GCC и все инструменты сборки.
На момент написания этой статьи последняя бета-версия Redis — 5.0. Давайте скомпилируем и установим его. Сначала создайте временный каталог (назовем его redis5) и перейдите к нему с помощью следующей команды:
Теперь загрузите исходный код Redis 5.0-RC 6 с помощью следующей команды:
Необходимо скачать архив исходного кода Redis 5.0 Beta.
Теперь извлеките файл архива исходного кода с помощью следующей команды:
Файл архива должен быть извлечен.
Как видите, создается новый каталог redis-5.0-rc6/.
Теперь перейдите в каталог redis-5.0-rc6/ с помощью следующей команды:
Теперь скомпилируйте Redis с помощью следующей команды:
Как видите, Redis компилируется. Это займет некоторое время.
После завершения процесса компиляции вы должны увидеть следующий вывод:
Теперь установите Redis с помощью следующей команды:
Redis установлен.
Чтобы проверить, где установлены двоичные файлы Redis, выполните следующую команду:
Как видите, двоичные файлы Redis доступны в каталоге /usr/local/bin.
Чтобы проверить, работает ли Redis, выполните следующую команду:
Как видите, Redis 4.9.106 установлен и работает корректно.
Поддержка языка программирования Redis:
Вы можете взаимодействовать с Redis со многими языками программирования, такими как Node.js, PHP, Ruby, Python, C, C++, Java и многими другими.
Вот как вы устанавливаете Redis в Ubuntu. Спасибо, что прочитали эту статью.
Читайте также: