N2O — высокопроизводительный и компактный full-stack релей-сервер приложений на Erlang, форкнутый от фреймворка Nitrogen и вобравший в себя когда-то лучшие его идеи. Четыре года назад N2O избавился от ненужных зависимостей и стал одновременно мощным средством для создания web-приложений. А сегодня, начиная с версии N2O 4.5, протоколы данных переведены на более высокий уровень и становятся лежащими поверх протокола MQTT 5.0, обеспечивающего доставку сообщений в ненадёжных сетях с уровнями QoS 0, 1 и 2.
До этого N2O поддерживал передачу своих данных, кодированных в BERT, XML, JSON, MessagePack и TEXT через протокол WebSocket, теперь это возможно подключением по WebSocket, MQTT, Stomp, CoAP и TCP/UDP что связано с использованием EMQ — MQTT-брокера, написанного также на Erlang.
Основные особенности N2O:
- Бинарные протоколы и обновление контента сервером без задержек через полнодуплексную связь.
- Шифрование AES CBC 128.
- Приложения SPA, и классические Dynamic Pages.
- Передача медиаданных на скорости до 200Мбит/с и возможностью паузы и докачки.
- Автоматические реконнекты
- PubSub-роутинг через mqs, Gproc, Syn.
- Возможность упаковки приложений в единый исполняемый файл для Windows, Linux и Mac через rebar-совместимую утилиту сборки mad.
- HTML5, DSL, нет зависимостей от JS-библиотек.
>>> Подробности