mirror of
https://gitee.com/dgiiot/dgiot.git
synced 2024-12-04 05:09:09 +08:00
142 lines
6.0 KiB
Markdown
142 lines
6.0 KiB
Markdown
|
# Брокер EMQ X
|
|||
|
|
|||
|
[![GitHub Release](https://img.shields.io/github/release/emqx/emqx?color=brightgreen)](https://hub.fastgit.org/emqx/emqx/releases)
|
|||
|
[![Build Status](https://travis-ci.org/emqx/emqx.svg)](https://travis-ci.org/emqx/emqx)
|
|||
|
[![Coverage Status](https://coveralls.io/repos/github/emqx/emqx/badge.svg?branch=master)](https://coveralls.io/github/emqx/emqx?branch=master)
|
|||
|
[![Docker Pulls](https://img.shields.io/docker/pulls/emqx/emqx)](https://hub.docker.com/r/emqx/emqx)
|
|||
|
[![Slack Invite](<https://slack-invite.emqx.io/badge.svg>)](https://slack-invite.emqx.io)
|
|||
|
[![Twitter](https://img.shields.io/badge/Follow-EMQ-1DA1F2?logo=twitter)](https://twitter.com/EMQTech)
|
|||
|
[![Community](https://img.shields.io/badge/Community-EMQ%20X-yellow?logo=github)](https://hub.fastgit.org/emqx/emqx/discussions)
|
|||
|
|
|||
|
[![The best IoT MQTT open source team looks forward to your joining](https://www.emqx.io/static/img/github_readme_en_bg.png)](https://www.emqx.io/careers)
|
|||
|
|
|||
|
[English](./README.md) | [简体中文](./README-CN.md) | [日本語](./README-JP.md) | русский
|
|||
|
|
|||
|
*EMQ X* — это масштабируемый, высоко доступный, распределённый MQTT брокер с полностью открытым кодом для интернета вещей, межмашинного взаимодействия и мобильных приложений, который поддерживает миллионы одновременных подключений.
|
|||
|
|
|||
|
Начиная с релиза 3.0, брокер *EMQ X* полностью поддерживает протокол MQTT версии 5.0, и обратно совместим с версиями 3.1 и 3.1.1, а также протоколами MQTT-SN, CoAP, LwM2M, WebSocket и STOMP. Начиная с релиза 3.0, брокер *EMQ X* может масштабироваться до более чем 10 миллионов одновременных MQTT соединений на один кластер.
|
|||
|
|
|||
|
- Полный список возможностей доступен по ссылке: [EMQ X Release Notes](https://hub.fastgit.org/emqx/emqx/releases).
|
|||
|
- Более подробная информация доступна на нашем сайте: [EMQ X homepage](https://www.emqx.io).
|
|||
|
|
|||
|
## Установка
|
|||
|
|
|||
|
Брокер *EMQ X* кросплатформенный, и поддерживает Linux, Unix, macOS и Windows. Он может работать на серверах с архитектурой x86_64 и устройствах на архитектуре ARM, таких как Raspberry Pi.
|
|||
|
|
|||
|
Более подробная информация о запуске на Windows по ссылке: [Windows.md](./Windows.md)
|
|||
|
|
|||
|
#### Установка EMQ X с помощью Docker-образа
|
|||
|
|
|||
|
```
|
|||
|
docker run -d --name emqx -p 1883:1883 -p 8081:8081 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx
|
|||
|
```
|
|||
|
|
|||
|
#### Установка бинарного пакета
|
|||
|
|
|||
|
Сборки для различных операционных систем: [Загрузить EMQ X](https://www.emqx.io/downloads).
|
|||
|
|
|||
|
- [Установка на одном сервере](https://docs.emqx.io/en/broker/latest/getting-started/install.html)
|
|||
|
- [Установка на кластере](https://docs.emqx.io/en/broker/latest/advanced/cluster.html)
|
|||
|
|
|||
|
|
|||
|
## Сборка из исходного кода
|
|||
|
|
|||
|
Начиная с релиза 3.0, для сборки требуется Erlang/OTP R21 или выше.
|
|||
|
|
|||
|
Инструкция для сборки версии 4.3 и выше:
|
|||
|
|
|||
|
```bash
|
|||
|
git clone https://hub.fastgit.org/emqx/emqx.git
|
|||
|
cd emqx
|
|||
|
make
|
|||
|
_build/emqx/rel/emqx/bin console
|
|||
|
```
|
|||
|
|
|||
|
Более ранние релизы могут быть собраны с помощью другого репозитория:
|
|||
|
|
|||
|
```bash
|
|||
|
git clone https://hub.fastgit.org/emqx/emqx-rel.git
|
|||
|
cd emqx-rel
|
|||
|
make
|
|||
|
_build/emqx/rel/emqx/bin/emqx console
|
|||
|
```
|
|||
|
|
|||
|
## Первый запуск
|
|||
|
|
|||
|
Если emqx был собран из исходников: `cd _build/emqx/rel/emqx`.
|
|||
|
Или перейдите в директорию, куда emqx был установлен из бинарного пакета.
|
|||
|
|
|||
|
```bash
|
|||
|
# Запуск:
|
|||
|
./bin/emqx start
|
|||
|
|
|||
|
# Проверка статуса:
|
|||
|
./bin/emqx_ctl status
|
|||
|
|
|||
|
# Остановка:
|
|||
|
./bin/emqx stop
|
|||
|
```
|
|||
|
|
|||
|
Веб-интерфейс брокера будет доступен по ссылке: http://localhost:18083
|
|||
|
|
|||
|
## Тесты
|
|||
|
|
|||
|
### Полное тестирование
|
|||
|
|
|||
|
```
|
|||
|
make eunit ct
|
|||
|
```
|
|||
|
|
|||
|
### Запуск части тестов
|
|||
|
|
|||
|
Пример:
|
|||
|
|
|||
|
```bash
|
|||
|
make apps/emqx_bridge_mqtt-ct
|
|||
|
```
|
|||
|
|
|||
|
### Dialyzer
|
|||
|
##### Статический анализ всех приложений
|
|||
|
```
|
|||
|
make dialyzer
|
|||
|
```
|
|||
|
|
|||
|
##### Статический анализ части приложений (список через запятую)
|
|||
|
```
|
|||
|
DIALYZER_ANALYSE_APP=emqx_lwm2m,emqx_auth_jwt,emqx_auth_ldap make dialyzer
|
|||
|
```
|
|||
|
|
|||
|
## Сообщество
|
|||
|
|
|||
|
### FAQ
|
|||
|
|
|||
|
Наиболее частые проблемы разобраны в [EMQ X FAQ](https://docs.emqx.io/en/broker/latest/faq/faq.html).
|
|||
|
|
|||
|
|
|||
|
### Вопросы
|
|||
|
|
|||
|
Задать вопрос или поделиться идеей можно в [GitHub Discussions](https://hub.fastgit.org/emqx/emqx/discussions).
|
|||
|
|
|||
|
### Предложения
|
|||
|
|
|||
|
Более масштабные предложения можно присылать в виде pull request в репозиторий [EIP](https://hub.fastgit.org/emqx/eip).
|
|||
|
|
|||
|
### Разработка плагинов
|
|||
|
|
|||
|
Инструкция по разработке собственных плагинов доступна по ссылке: [lib-extra/README.md](./lib-extra/README.md)
|
|||
|
|
|||
|
|
|||
|
## Спецификации стандарта MQTT
|
|||
|
|
|||
|
Следующие ссылки содержат спецификации стандартов:
|
|||
|
|
|||
|
[MQTT Version 3.1.1](https://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html)
|
|||
|
|
|||
|
[MQTT Version 5.0](https://docs.oasis-open.org/mqtt/mqtt/v5.0/cs02/mqtt-v5.0-cs02.html)
|
|||
|
|
|||
|
[MQTT SN](http://mqtt.org/new/wp-content/uploads/2009/06/MQTT-SN_spec_v1.2.pdf)
|
|||
|
|
|||
|
## Лицензия
|
|||
|
|
|||
|
Apache License 2.0, см. [LICENSE](./LICENSE).
|