Сравнение EMQX и Mosquitto 2023 MQTT Broker
Сравнение EMQX и Mosquitto 2023 MQTT Broker

введение

Разработчикам Интернета вещей необходимо выбрать правильный вариант для своих проектов Интернета вещей. MQTT Продукты или услуги обмена сообщениями для создания надежного и эффективного базового уровня данных для обеспечения услуг Интернета вещей верхнего уровня. В настоящее время на рынке существует множество программ с открытым исходным кодом. MQTT Каждый продукт имеет свои преимущества с точки зрения производительности и функциональности. В этой статье будут выбраны две наиболее популярные программы с открытым исходным кодом. MQTT Broker:EMQX и Mosquitto,Из технической архитектуры、производительность、Функция、ситуация в сообщества и другие многомерные 1v1 Сравнение помогает читателям глубже понять эти два продукта.

Введение в Москитто

Mosquitto Первоначально проект был начат IBM и Eurotech В 2013 Разработано Годом и позже В 2016 ежегодное пожертвование в Eclipse фундамент. Затмение Mosquitto база Eclipse Публичная лицензия (EPL/EDL) лицензии), пользователи могут использовать его бесплатно. Как наиболее широко используемый в мире MQTT Одна из реализаций протокола , по состоянию на 2023 Год 3 Месяц, Комар из GitHub Star Число превышает 7.1 K。

Mosquitto использовать C/C++ Написан с использованием однопоточной архитектуры. Комар поддерживать MQTT протоколиз 5.0、3.1.1 и 3.1 версия, хотя поддержка SSL/TLS и Вебсокеты. Легкая конструкция делает его подходящим для развертывания на встроенных устройствах или серверах с ограниченными ресурсами.

преимущество:

  • Простая установка позволяет использовать
  • поддерживать MQTT 5.0 протокол
  • Легкий и эффективный
  • позитивныйиз Сообществоподдерживать

недостаток:

  • Ограниченная масштабируемость(<100k)
  • Нет поддержки кластера
  • Отсутствующие корпоративные функции
  • Ограничено собственным облачным поддержкой

Введение в EMQX

EMQX(https://github.com/emqx/emqx?utm_source=cloud.tencent.com&utm_medium=referral Проект В 2012 Годконецсуществовать Github Опубликовано по лицензии Apache2 на сегодняшний день стал самым масштабируемым в мире. MQTT Сервер обмена сообщениями, широко используемый Вещи, Интернет транспорта, Промышленный Интернет вещи и другие ключевые бизнес-сценарии.

EMQX Выбиратьиспользовать Erlang/OTP Написан на этом языке программирования, предназначенном для создания масштабируемых программных систем реального времени. и Mosquitto Разное, EMQX существующие с самого начала своей разработки используют архитектуру распределенного кластера, которая позволяет легко добиться эластичного горизонтального расширения и, таким образом, стабильно размещать крупномасштабные MQTT-клиентДоступ。最新版本 EMQX 5.0 Доступно на 23 отдельный узел установлен в одном кластере 1 亿индивидуальныйодновременноиз MQTT соединять.

преимущество:

  • поддерживать крупномасштабное развертывание
  • Гао Кэиспользоватьсекс
  • Горизонтальная масштабируемость
  • высокийпроизводительностьи Гао Кэ靠
  • 丰富изпредприятие Функция
  • 率先Выбиратьиспользовать MQTT over QUIC

недостаток:

  • Комплекс для начала
  • Трудно эффективно управлять

ситуация в сообществе

EMQX да GitHub Самый рейтинговый и самый активный из MQTT Broker проекты в прошлом 12 Есть месяцы 11.4K индивидуальный Star Превышать 3000 индивидуальный Commit。

Mosquitto Благодаря своей легкой однопоточной архитектуре развертывание существует лучше, чем EMQX В более общем плане, особенно на встроенных устройствах с ограниченными ресурсами.

Примечание: Комар Первоначально проект был начат Roger Light существовать 2008 Годсоздавать,позжесуществовать 2013 Гододеяло Eclipse Фонд получает.

Производительность и масштабируемость

Mosquitto какодининдивидуальный轻量级 MQTT Промежуточное программное обеспечение сообщений имеет относительно превосходную производительность на одном узле и может поддерживаться одной машиной. 10w Уровень параллелизма устройств соединяет, но не поддерживает архитектуру кластера.

EMQX как может быть развернут в кластерах и крупномасштабных серверах сообщений. Один узел может иметь миллионы одновременных подключений, а один кластер может иметь сотни миллионов одновременных подключений. CPU и память увеличивает скорость использования.

EMQX да Как поддержать один кластер на миллиардном уровне MQTT одновременно连接из?Нажмите, чтобы просмотреть Подробный процесс тестирования →

Поддержка протокола

Mosiquitto как MQTT Broker При условии полного из MQTT 3.1/3.1.1/5.0 Поддержка протокола, поддержка протокола, спецификация из сообщений воли, сохраненных сообщений, общих подписок и других возможностей, а также поддержка MQTT over WebSocket,может удовлетворить большинство MQTT Требования к доступу к оборудованию.

EMQX Также полное одобрение MQTT 3.1/3.1.1/5.0 а также MQTT over Websocket протокол. в то же время EMQX 5.0 Пионер внедрения интернет-протоколов следующего поколения. HTTP/3 из Базовый протокол передачи QUIC изпод поддержка для решения проблем связи в сложных сетевых средах и повышения общей пропускной способности и стабильности мобильных соединений. Кроме того того, EMQX 也扩展поддерживать MQTT-SN、CoAP、LwM2M、STOMP а Также Другие расширения протоколов.

безопасность

безопасностьверно ВИнтернет Вещи Подключение устройства Также Обмен данными между устройствами, а также между устройствами и облачными сервисами имеет решающее значение. Комар и EMQX Всеподдерживатьбаза TLS/SSL из Безопасностьсоединять.Кроме того,EMQX возвращатьсяподдерживать QUIC Транспорт, ОЦСП Stapling、Audit Logs и Black Duck Сканирование исходного кода.

Аутентификация и аутентификация

существующийклиент Разрешения на аутентификацию и контроль доступа, Mosiquitto Предоставляет подключаемый модуль динамической безопасности, применяет гибкий способ обработки аутентификации по имени пользователя/паролю и контроля доступа. Мосикитто Поддержка является анонимной и использует аутентификацию по имени пользователя и паролю, а плагин динамической безопасности обеспечивает настраиваемую группу и роль управления темой сообщения в зависимости от прав доступа.

EMQX поддержка нескольких механизмов аутентификации, таких как аутентификация по имени пользователя и паролю, JWT Сертификация такжебаза MQTT 5.0 расширенная сертификация протоколиз. EMQX Поддержка интегрируется с несколькими методами хранения данных, включая встроенные базы данных, файлы MySQL, PostgreSQL, MongoDB. и Redis。

Кроме того, EMQX Для пользователей предусмотрена функция черного списка, пользователи могут вводить Dashboard и HTTP API Добавьте указанного клиента в черный список, чтобы запретить доступ к клиенту. Помимо идентификатора клиента, поддержка также напрямую блокируется с использованием имени учетной записи или даже имени. IP Адрес, удобный для использования пользователями для гибкого управления соединениями и доступом.

интеграция данных

Mosquitto Пропустить по умолчанию Метод подписки на сообщения MQTT-клиент реализует потребление данных внешними системами. Кроме того, Москитто Предоставлено многоиндивидуальный Mosquitto междуизданныеперекрытиеспособность,Можетиспользовать Вмногоиндивидуальный broker Откройте связь между распределенным развертыванием и данными.

EMQX существоватьинтеграция данные обеспечивают WebHook Метод отправки клиентских сообщений и событий во внешнюю систему. EMQX Также предоставляет аналогичные В Mosquitto из MQTT Функция перекрытия данных, можно подключить несколько индивидуальных EMQX кластер или другие критерии MQTT Служить. EMQX Существующая Enterprise Edition дополнена ключевыми улучшениями интеграции. данныхспособность。EMQX Версия Enterprise может применять механизм правильные стыковки с различными основными базами данных и очередями сообщений Также значительно повышаются облачные услуги, надежность существующих данных и гибкость проектирования архитектуры.

механизм правил

дляиспользовать户更加方便地实现высокийпроизводительностьданные预处理ибазапотребности бизнесаизданные路由,EMQX база встроенная SQL измеханизм правильный компонент, с перекрытием данных используйте использовать, вы можете добиться универсального результата без написания кода IoT данные提取、фильтр、Конвертировать、Хранение и обработка,Для ускорения интеграции приложений и бизнес-инноваций.

Работоспособность и наблюдаемость

Mosquitto обеспечивает базовыеизбревноиотлаживать Функция,использовать В Состояние агента мониторинга и Устранение неполадок. Однако,Ему не хватает расширенных функций управления и мониторинга.,делатьиспользовать户难以从其运行状态获得更много洞察进行производительностьоптимизация。

EMQX проходить HTTP API и Dashboard Предоставляет богатые функции визуализации и мониторинга, упрощающие мониторинг и управление. Кроме того того, EMQX поддерживатьи Prometheus、StatsD иDatadog из Интеграция позволяет группам эксплуатации и технического обслуживания легко использовать сторонние платформы мониторинга.

Облачное развертывание и поддержка K8s

Mosquitto поддерживатьбаза docker из Контейнерное развертывание. EMQX существуют базы на этой основе Kubernetes Operator и Terraform Возможность автоматического развертывания в облаке делает развертывание, эксплуатацию и обслуживание в контейнерной среде более удобным.

EMQX Kubernetes Operator: Нажмите, чтобы просмотреть

Мост Mosquitto к EMQX

Хотя EMQX и Mosquitto как MQTT Broker Отличий много, но они могут присутствовать MQTT перекрытиеиз способ добиться идеального сочетания.

我们Можетсуществовать Интернет Вещи Edge из Развернуто на встроенном оборудовании или шлюзе Mosquitto реализует мелкомасштабный доступ к периферийным данным, а затем подключается к облаку способом прохожденияперекрытия. EMQX Интеграция для крупномасштабного агрегирования и доступа к облачным данным.

перекрытие Mosquitto MQTT сообщение для EMQX?utm_source=cloud.tencent.com&utm_medium=referral

Заключение

Над контрастом мы видим: Комара как одиночный узел из легкого веса MQTT Промежуточное ПО для обмена сообщениями больше подходит для развертывания на промышленных шлюзах, промышленных компьютерах и небольших серверах для достижения малых и средних размеров. MQTT Быстрый и эффективный доступ к данным и маршрутизация сообщений в сценариях подключения устройств. и EMQX какподдерживать Гао Кэиспользоватькластеризкрупный масштаб MQTT Серверы обмена сообщениями больше подходят для развертывания в центрах обработки данных, публичных облаках или частных облачных средах для более масштабного доступа к данным. Также Оказание услуг домохозяйствам с высоким спросом изиспользовать.

Вы можете выбрать Mosquitto использоватьвстроенное оборудование IoT Edge развертывание и включение использования EMQX как Высокая масштабируемость и доступность в облаке MQTT Служба обмена сообщениями.

также,Существует потребность в более масштабных подключениях устройств и доступе к данным с высокой пропускной способностью.,且верноданные完整секс、данные持久化а такжеинтеграция Пользователям, имеющим высокие требования к гибкости, мы рекомендуем использоватьиспользовать EMQX Корпоративная версия。?utm_source=cloud.tencent.com&utm_medium=referral

Заявление об авторских правах: эта статья принадлежит EMQ. При перепечатке указывайте источник.

Исходная ссылка:https://www.emqx.com/zh/blog/emqx-vs-mosquitto-2023-mqtt-broker-comparison?utm_source=cloud.tencent.com&utm_medium=referral

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose