README, комментарии в коде, чистка requirements.txt

This commit is contained in:
2026-07-22 10:25:43 +04:00
parent 0bf1847abb
commit 912b165fd5
4 changed files with 196 additions and 32 deletions
+51
View File
@@ -0,0 +1,51 @@
# IoT Producer — эмулятор датчиков «Умного дома»
Генерирует случайные IoT-события (температура, влажность, энергопотребление) и отправляет их в очередь RabbitMQ.
## Пайплайн
```
Producer (этот сервис) → RabbitMQ → Consumer → Redis + MongoDB → Dashboard
```
## Датчики
8 виртуальных датчиков, 3 типа:
| Тип | Датчики | Единица | Диапазон |
|---|---|---|---|
| temperature | temp_living, temp_bedroom, temp_office | °C | 1628 |
| humidity | humidity_living, humidity_bed | % | 3070 |
| power_meter | power_kitchen, power_living, power_office | kW | 0.14.0 |
## Переменные окружения
| Переменная | По умолчанию | Описание |
|---|---|---|
| `RABBIT_HOST` | `localhost` | Хост RabbitMQ |
| `RABBIT_PORT` | `5672` | Порт AMQP |
| `RABBIT_USER` | `guest` | Логин |
| `RABBIT_PASS` | `guest` | Пароль |
| `RABBIT_QUEUE` | `iot-events` | Имя очереди |
| `PRODUCE_INTERVAL` | `3` | Интервал между событиями (сек) |
| `PORT` | `3000` | Порт HTTP |
## Эндпоинты
| Путь | Ответ |
|---|---|
| `GET /` | `{"service":"iot-producer","events_sent":N,"errors":N}` |
| `GET /health` | `{"status":"ok"}` |
## Локальный запуск
```bash
npm install
RABBIT_HOST=localhost node server.js
```
## Деплой на Nubes Cloud
1. Запушьте этот репо в свой Gitea
2. В Terraform-конфиге укажите `git_path` на ваш репо и `git_revision` (коммит или `"main"`)
3. Nubes автоматически запустит `npm start`