Выпущен RabbitMQ 4.0 с поддержкой Khepri, улучшенным AMQP 1.0 и новыми функциями очередей
Компания RabbitMQ представила новую, долгожданную версию RabbitMQ 4.0, которая включает множество значительных обновлений и улучшений. Одним из ключевых нововведений стало полное внедрение поддержки Khepri — это специализированное хранилище данных, призванное заменить ранее используемую Mnesia. Напомним, что Khepri до этого момента был в статусе экспериментальной функции.
просмотры 170🕑 2 мин. чтения
Важным изменением является то, что теперь протокол AMQP 1.0 включен по умолчанию и является основным, демонстрируя значительное увеличение пропускной способности — в некоторых сценариях более чем в два раза по сравнению с предыдущей версией 3.13.x. Клиенты AMQP 1.0 теперь могут управлять топологиями так же, как и клиенты AMQP 0-9-1, что стало возможным благодаря улучшенному формату адресов для взаимодействия с существующими сущностями.
Кроме того, версия 4.0 предлагает эффективную восстановление кворумных очередей при запуске узлов, благодаря использованию контрольных точек, а также поддержку приоритетов для таких очередей. Однако реализация приоритетов отличается от классических очередей. Важно отметить, что возможность зеркалирования классических очередей была исключена — разработчики настоятельно рекомендуют переходить на кворумные очереди и стримы для обработки реплицируемых данных. При этом нереплицируемые классические очереди остаются доступны и продолжают развиваться.
Среди других улучшений — повышение эффективности хранения классических очередей, что особенно заметно при восстановлении данных и работе с большими сообщениями (размером более MiB). Узлы, использующие несколько плагинов и имеющие минимальные объемы данных на диске, теперь запускаются на 20-30% быстрее. Также появилась новая функция — Local Random Exchange, новый тип обмена данными, добавляющий дополнительные возможности для работы с сообщениями.
В PHP 8.3 появилась возможность типизации констант классов
В PHP 8.3 было выпущено обновление для серверного языка веб-скриптов. Была добавлена поддержка типизации констант классов, глубокого клонирования свойств, доступных только для чтения, а также были внесены дополнения в функции, связанные с генерацией случайных чисел.