1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/bxb-l-MQTTnet

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

MQTTnet

MQTTnet — это высокопроизводительная библиотека .NET для обмена данными на основе протокола MQTT. Она предоставляет клиент MQTT и сервер (брокер) MQTT, поддерживает протокол MQTT до версии 5 и совместима с большинством поддерживаемых версий .NET Framework и архитектур ЦП.

Особенности

  • Поддержка асинхронного режима работы.
  • TLS-поддержка для клиента и сервера (но не для серверов UWP).
  • Расширяемые каналы связи (например, In-Memory, TCP, TCP+TLS, WS).
  • Лёгкая реализация (только низкоуровневая реализация MQTT без дополнительных функций).
  • Оптимизация производительности (обработка ~150 000 сообщений в секунду)*.
  • Единый API для всех поддерживаемых версий протокола MQTT.
  • Доступ к внутренним сообщениям трассировки.
  • Модульное тестирование (~636 тестов).
  • Отсутствие внешних зависимостей.

* Протестировано на локальном компьютере (Intel i7 8700K) с клиентом и сервером MQTTnet, работающими в одном процессе через канал TCP. Приложение для проверки находится в репозитории /Tests/MQTTnet.TestApp.NetCore.

Клиент

  • Поддерживается связь через TCP (+TLS) или WS (WebSocket).
  • Включен основной LowLevelMqttClient с низкоуровневой функциональностью.
  • Также включён ManagedMqttClient, который автоматически поддерживает соединение и подписки. Также сообщения приложения ставятся в очередь и повторно планируются для более высоких уровней QoS.
  • Поддержка Rx (через другой проект).
  • Совместимость с Microsoft Azure IoT Hub.

Сервер (брокер)

  • Доступен список подключённых клиентов.
  • Одновременно поддерживает подключённые клиенты с разными версиями протокола.
  • Может публиковать собственные сообщения (не требуется клиент обратной петли).
  • Может получать каждое сообщение (не требуется клиент обратной петли).
  • Настраиваемая проверка подлинности клиентов.
  • Поддерживаются сохранённые сообщения, включая сохранение через методы интерфейса (требуется собственная реализация).
  • Поддерживаются WebSockets (через ASP.NET Core 2.0, отдельный пакет NuGet).
  • Можно добавить собственный перехватчик сообщений, который позволяет преобразовывать или расширять каждое полученное сообщение приложения.
  • Проверка подписок и запрет подписки на определённые темы в зависимости от запрашивающих клиентов.

Начало работы

Библиотека MQTTnet поставляется через менеджер пакетов NuGet. Пакеты можно найти здесь: https://www.nuget.org/packages/MQTTnet/.

Чтобы установить MQTTnet вручную, используйте следующие команды в консоли диспетчера пакетов:

Install-Package MQTTnet

Образцы использования MQTTnet являются частью этого репозитория. Для начала рекомендуется использовать эти образцы:

Кодекс поведения

В этом проекте принят кодекс поведения, определённый Соглашением участников, чтобы уточнить ожидаемое поведение в нашем сообществе. Для получения дополнительной информации см. .NET Foundation Code of Conduct.

.NET Этот проект поддерживается .NET Foundation.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/bxb-l-MQTTnet.git
git@api.gitlife.ru:oschina-mirror/bxb-l-MQTTnet.git
oschina-mirror
bxb-l-MQTTnet
bxb-l-MQTTnet
master