Redis 7.0 выходит с улучшениями производительности, исправлениями ошибок и многим другим.

Новая версия СУБД Redis 7.0 уже выпущена, Redis предоставляет функции для хранения данных в формате «ключ-значение», расширенные поддержкой форматов структурированных данных, таких как списки, хэши и наборы, а также возможностью запуска драйверов сценариев Lua на стороне сервера.

В отличие от систем хранения в оперативной памяти, таких как Memcached, Redis обеспечивает постоянное хранение данных на диске и обеспечивает безопасность базы данных в случае нештатного завершения работы. Исходные тексты проекта распространяются под лицензией BSD.

Клиентские библиотеки доступны для самых популярных языков, включая Perl, Python, PHP, Java, Ruby и Tcl. Redis поддерживает транзакции, которые позволяют выполнять группу команд за один шаг, обеспечивая согласованность и непротиворечивость (команды из других запросов не могут блокировать) выполнение заданного набора команд, а в случае возникновения проблем позволяет выполнить откат перемены. Все данные полностью кэшируются в оперативной памяти.

Основные новые функции Redis 7.0

В этой новой версии СУБД, которая представлена добавлена ​​поддержка серверных функций, в отличие от ранее поддерживаемых скриптов Lua, функции не зависят от приложения и предназначены для реализации дополнительной логики что расширяет возможности сервера.

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

Еще одна новинка, которая выделяется в Redis 7.0, — это Второе издание ACL, что позволяет управлять доступом к данным на основе ключей и позволяет определять различные наборы правил доступа для команд с возможностью привязки нескольких селекторов (наборов разрешений) к каждому пользователю. Каждый ключ может быть идентифицирован с определенными разрешениями, например, вы можете ограничить доступ только чтением или записью к определенному подмножеству ключей.

В дополнение к этому отмечается, что Redis 7.0 обеспечивает уна фрагментарная реализация парадигмы распространения сообщений Опубликовать-Подписка, работающий на кластере, где сообщение отправляется на конкретный узел, к которому привязан канал сообщения, после чего это сообщение перенаправляется на остальные узлы, включенные в корпус. Клиенты могут получать сообщения, подписавшись на канал, подключившись как к основному узлу, так и к второстепенным узлам раздела.

Также подчеркивается, что обеспечена возможность обработки нескольких конфигураций одновременно в одном вызове CONFIG SET/GET и что в утилиту redis-cli были добавлены опции «–json», «-2», «–scan», «–functions-rdb».

По умолчанию, доступ к настройкам и командам, влияющим на безопасность, отключен для клиентов (например, отключены команды DEBUG и MODULE, запрещено изменение конфигураций с флагом PROTECTED_CONFIG). Redis-cli перестал отправлять команды, содержащие конфиденциальные данные, в файл истории.

С другой стороны, выделяется, чтоe внесена большая часть оптимизаций, направленных на повышение производительности и уменьшить потребление памяти. Например, потребление памяти значительно снижено при включенном режиме кластера, при выполнении операций копирования при записи и при работе с ключами hash и zset, а также была улучшена логика для сброса данных на диск (называется fsync).

Исправлена ​​уязвимость CVE-2022-24735. в среде выполнения Lua-скриптов, что позволяет вам переопределить собственный Lua-код и заставить его выполняться в контексте другого пользователя, в том числе с более высокими привилегиями.

Кроме того, мы можем указать на уязвимость (CVE-2022-0543) в пакетах с Redis для Ubuntu и Debian (проблема специфична для отдельных сборок и не связана с самим Redis), что позволяет выполнять произвольный код Lua на удаленном сервере и обходить механизм изоляции песочницы среды для запуска скриптов в Redis.

Устранена уязвимость CVE-2022-24736, которая могла привести к сбою процесса сервера Redis из-за разыменования нулевого указателя. Атака осуществляется путем загрузки специально созданных Lua-скриптов.

наконец, если вы интересно узнать о нем больше, Вы можете проверить детали в следующем ссылка.


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.