Валки 9.1

коомчулук өрөөн объявило о выпуске Валки 9.1 — новой стабильной версии высокопроизводительного хранилища данных типа «ключ-значение» с открытым исходным кодом (лицензия BSD), которое поддерживает различные сценарии использования, такие как кэширование и очереди сообщений, а также может выступать в качестве основной базы данных. Проект поддерживается Linux Foundation, что гарантирует его постоянную доступность в виде открытого исходного кода.


Проект является форком Redis и создан после изменений в его лицензировании.

Этот выпуск включает в себя новые возможности, усовершенствования в безопасности, мониторинге, производительности и эффективности инструментария. В подготовке релиза приняли участие более 80 человек.

Негизги өзгөрүүлөр

  • Lua вынесен в отдельный модуль.
    В Valkey 9.1 движок сценариев Lua отделён от основного сервера и перенесён в самостоятельный модуль. Такое разделение уменьшает поверхность атаки ядра Valkey и даёт администраторам возможность полностью отключить Lua, если сценарии на нём не используются. Чтобы было проще понять, какие движки сценариев загружены в системе, команда INFO получила новый раздел ответа — Scripting Engines.

  • Новые исправления безопасности.
    В стабильный выпуск 9.1.0 вошли исправления трёх уязвимостей: use-after-free в механизме разблокировки клиента, некорректного доступа к памяти в команде 7RESTORE, а также use-after-free при полной синхронизации во время выполнения Lua/function-кода с уступкой выполнения. В заметках они указаны как CVE-2026-23479, CVE-2026-25243 и CVE-2026-23631.

  • Database-level ACL.
    Добавлена система контроля доступа на уровне отдельных баз данных. Это позволяет тоньше разделять права в многопользовательских конфигурациях и не ограничиваться только глобальными правилами доступа на уровне всего экземпляра Valkey.

  • Автоматическая перезагрузка TLS-сертификатов.
    Valkey 9.1 получил поддержку автоматической перезагрузки TLS-сертификатов. Для администраторов это означает меньше ручных операций при ротации сертификатов и более удобную эксплуатацию защищённых инсталляций.

  • Новая команда HGETDEL.
    Команда атомарно получает и удаляет одно или несколько полей из hash-структуры. Практический смысл — сценарии, похожие на очередь или одноразовое потребление данных, где раньше приходилось комбинировать HGET и HDEL через транзакцию.

  • Новая команда MSETEX.
    MSETEX позволяет одной командой установить несколько ключей с общим временем жизни. Раньше для такого сценария требовались несколько вызовов SETEX либо связка SET и EXPIRE через pipeline. Новая команда уменьшает число обращений и упрощает типичный код для сессионных и временных данных.

  • Новая команда CLUSTERSCAN.
    В кластерах появилась единая команда для сканирования ключей по всем узлам. Раньше клиентам приходилось самостоятельно выполнять SCAN на каждом узле и объединять результаты. CLUSTERSCAN упрощает клиентские библиотеки, админские инструменты и эксплуатационные задачи вроде поиска ключей по шаблону или типу во всём кластере.

  • Оптимизация потребления памяти строками.
    За счёт внутренних оптимизаций указателей для строк короче 128 байт заявлено снижение потребления памяти до 20%. Это особенно важно для типичных кэширующих нагрузок, где хранится большое количество небольших значений.

  • Меньше памяти для sorted sets.
    Оптимизации skiplist-структур уменьшают расход памяти для sorted set до 10%. Дополнительно ускорены операции над отсортированными множествами, включая запросы вроде ZRANGEBYSCORE и ZRANGEBYLEX.

  • Ускоренная работа с rehashing.
    Внутреннее перераспределение hash-таблиц, которое часто проявляется при росте keyspace, оптимизировано так, чтобы уменьшить задержки. В release notes также упомянуто снижение latency spikes за счёт incremental page release.

  • Улучшенная модель I/O threading.
    В релиз-кандидате 9.1.0-rc2 была переработана модель взаимодействия потоков ввода-вывода с использованием lock-free queues. В заметках указано увеличение пропускной способности на 8–17%.

  • Ускорение GET и SET.
    Valkey теперь по умолчанию использует аппаратные часы там, где это возможно, что снижает накладные расходы на системные вызовы, связанные со временем. Проект заявляет прирост производительности GET и SET до 3% в целом.

  • Более быстрые массовые удаления.
    При операциях вроде SREM, ZREM и HDEL Valkey теперь временно приостанавливает внутреннее изменение размеров hash-таблиц, чтобы избежать лишнего rehashing и ускорить массовое удаление элементов.

  • Более эффективное создание реплик при AOF.
    При создании реплики с включённым AOF теперь повторно используется полученный RDB-файл вместо генерации нового снимка для начального AOF base file. Это должно снизить лишнюю нагрузку при развёртывании реплик.

  • Улучшения valkey-cli и valkey-benchmark.
    В valkey-cli добавлена поддержка atomic slot migration через параметр —cluster-use-atomic-slot-migration для операций —cluster rebalance и —cluster reshard. В valkey-benchmark добавлен вывод распределения RPS, а также параметры —warmup и —duration, что делает тестирование производительности более управляемым.

Отдельно вместе с Valkey 9.1 в экосистеме продвигаются связанные проекты: Valkey Admin для визуального управления кластерами, Valkey Search 1.2 с полнотекстовым поиском, числовыми фильтрами, тегами и векторным поиском, а также клиентская библиотека Valkey GLIDE.

Valkey 9.1 — заметное обновление с точки зрения эксплуатации: меньше памяти на типичных структурах, меньше задержек при внутренних перестроениях, новые команды для кластеров и временных данных, а также более аккуратная модель безопасности для production-инсталляций.

Source: linux.org.ru

DDoS коргоосу, VPS VDS серверлери бар сайттар үчүн ишенимдүү хостинг сатып алыңыз 🔥 DDoS коргоосу, VPS VDS серверлери бар ишенимдүү веб-сайт хостингин сатып алыңыз | ProHoster