Светостример
Разработчик(и) | Световой поток (ранее Весвит) |
---|---|
Первоначальный выпуск | 2000 |
Стабильная версия | 7.4.4
/ 9 июля 2024 г. [ 1 ] |
Написано в | Ява |
Операционная система | Кросс-платформенный |
Тип | Асинхронный обмен сообщениями |
Лицензия | Собственный |
Веб-сайт | световой поток |
Lightstreamer — это веб- проект асинхронного обмена сообщениями , реализующий протокол WebSocket , модель Comet , парадигму технологии push и веб-практики реального времени .
Источник
[ редактировать ]Первая версия Lightstreamer была создана в конце 2000 года как одна из первых попыток реализовать отправку данных в реальном времени на HTML -страницы без использования Java-апплетов . Областью применения, вызывавшей в то время наибольший интерес к технологии push-уведомлений, было распространение рыночных данных для индустрии финансовых услуг . [ 2 ] В последующие годы Lightstreamer использовался и в других областях применения, включая аэрокосмическую телеметрию, где НАСА выбрало Lightstreamer для передачи данных телеметрии в реальном времени для Международной космической станции. [ 3 ]
Архитектура
[ редактировать ]Сервер Lightstreamer — это высокопроизводительный механизм, который управляет всеми соединениями с клиентами через Интернет. Он интегрируется с серверными системами через специальные адаптеры. Адаптер данных получает поток данных в реальном времени из канала данных и вводит его на сервер Lightstreamer. Адаптер метаданных контролирует аутентификацию, авторизацию и качество обслуживания.
Сервер Lightstreamer состоит из трех логических уровней: [ 4 ]
- Веб-транспорт . Lightstreamer реализует двунаправленную транспортировку на основе стандартных веб-протоколов. Это означает, что он использует несколько базовых методов ( WebSocket , Comet , потоковая передача HTTP и т. д.), чтобы предоставить верхним уровням канал, по которому данные могут обмениваться в режиме реального времени с любым клиентом, подключенным через Интернет, даже если он защищен межсетевыми экранами и прокси.
- Обмен сообщениями . Lightstreamer реализует шаблон публикации-подписки , подходящий как для сценариев разветвления «один ко многим», так и для потребностей обмена сообщениями «один к одному». Он заботится о маршрутизации каждого сообщения нужным получателям, мультиплексируя поток событий на вершине каждого соединения с клиентами.
- Семантика+QoS+Безопасность . Он реализует семантику данных (таблицы, схему, метаданные, объединение и т. д.), оптимизацию сети (динамическое регулирование, контроль пропускной способности, повторную выборку, пакетную обработку и т. д.) и полное управление сеансами (аутентификация, детальная авторизация и т. д.) на вверху публикации-подписки.
Серверные API
[ редактировать ]- API внутрипроцессного адаптера Java
- API удаленного адаптера Java
- API стандартного адаптера .NET
- API адаптера Node.js
- API адаптера Python
- Общий API адаптера (на основе TCP-сокетов)
- API управления JMX
Клиентские API
[ редактировать ]- API веб-клиента
- Клиентский API Node.js
- Клиентский API Android
- Клиентский API Java SE
- Стандартный клиентский API .NET
- API клиента Swift
- Клиентский API iOS
- Клиентский API macOS
- Клиентский API tvOS
- Клиентский API watchOS
- Клиентский API VisionOS
- Клиентский API Python
- Клиентский API Flutter
- API Flash-клиента
- Flex и клиентский API AIR
- Клиентский API Silverlight
- API-интерфейс клиента BlackBerry
- Клиентский API Java ME
- Общий клиентский API (через документированный протокол)