Этот раздел описывает базовую архитектуру промышленной среды Webitel, рассчитанную на ~400 тыс. звонков и ~100 тыс. чатов в день.
1. Общая схема архитектуры
2. Требования к среде развертывания
Архитектура Webitel рассчитана на работу в средах с изолированными и гарантированными ресурсами. Использование бюджетных VPS/VDS (Virtual Private/Dedicated Server) с разделённым процессорным временем (Shared CPU) не рекомендуется из-за рисков появления “шумных соседей” (noisy neighbors) и высоких сетевых задержек, что критично для качества работы VoIP-компонентов (FreeSWITCH, RTP, OpenSIPS).
Поддерживаемые платформы:
-
On-Premise (локальные серверы):
-
Физические серверы (Bare Metal);
-
Корпоративные гипервизоры (VMware, KVM, Xen, Proxmox VE).
-
-
Облачные провайдеры (Cloud Providers):
-
AWS (Amazon EC2);
-
Google Cloud (Compute Engine);
-
Microsoft Azure (Virtual Machines);
-
DigitalOcean (Droplets);
-
Hetzner (Cloud / Dedicated).
-
ВАЖНО! При выборе тарифных планов у облачных провайдеров (особенно DigitalOcean и Hetzner) настоятельно рекомендуется выбирать виртуальные машины категории:
-
Dedicated vCPU, или
-
Compute-Optimized,
для компонентов, отвечающих за обработку медиа и голоса.
3. Описание общей инфраструктуры
Для промышленной среды со средней нагрузкой ~400 тыс. звонков в день (250–350 одновременных с записью) и ~100 тыс. чатов в день необходимо подготовить 3 виртуальных машины (пункты 1–3 в таблице ниже).
Требования к развертыванию:
-
Установить только операционную систему и оставить доступ в Интернет для загрузки и установки дополнительного ПО.
-
После завершения установки доступ в Интернет может быть отключён.
-
Доступ разработчикам предоставляется по SSH с правами root на время, необходимое для установки и тестирования приложений.
-
Виртуальные машины 1–3 должны работать в едином VLAN, без фильтрации трафика по портам (разрешить всё).
-
Резервирование должно происходить средствами виртуальных машин.
4. Спецификация серверов
|
Object |
Software |
Resources (min) |
Connectivity |
Description |
|---|---|---|---|---|
|
Debian 12 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: OpenSIPS 3.4; rtpengine; nginx; SSL; |
|
in-out: 80/tcp, 443/tcp, 5060/tcp, 5060/udp in-out: 10000-50000/udp |
Сервер телефонии. Обязательно наличие SSL сертификатов с доверенным CA для обеспечения защищенного подключения по HTTPS протоколу и работы телефонии в браузере.
|
|
Debian 12 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: Linux; PostgreSQL 15; Grafana; Consul; RabbitMQ; |
|
|
Рекомендуем продублировать сервер, для настройки Streaming Replica |
|
Debian 12 Linux 64bit - базовая серверная установка с SSH подключением; Установим самостоятельно: FreeSWITCH 10; Webitel FlowManager; Webitel App; Webitel API GW; Storage; CallCenter; Engine; Messages |
|
|
|
|
|
|
|
Взаимодействие с внешними системами происходит по средствам HTTP REST. |
|
Microsoft Windows 11 / Linux 64bit Google Chrome / Microsoft Edge (последняя либо предпоследняя версии) |
|
Подключение к ИС не менее 2 Мб/c на пользователя, с задержками не более 15-20 мс. |
Рабочее место сотрудников |
|
|
|
Подключение к ИС не менее 5 Мб/c на аппарат, с задержками не более 15-20 мс. in-out: 5060/udp, 10000-20000/udp |
Аппаратный телефон с поддержкой протокола SIP 2.0 |
|
|
|
|
Телефонная сеть общего пользования (Public Switched Telephone Network) — всеобщая абонентская сеть связи, для доступа к которой используются телефонные аппараты, АТС и оборудование передачи данных. |
5. Требования к сетевым параметрам
|
|
Скорость подключения |
Задержка (Ping) |
Джитер (Jitter) |
Потери пакетов |
|---|---|---|---|---|
|
WebRTC |
|
|
|
|