Архитектура и технологии

Упрощённая схема архитектуры CPS Platform:

_images/arc.png

Поступающие HTTP-запросы от клиента (из личного кабинета, мобильного приложения и т.п.) обрабатываются на бэкэнде CPS Platform, после этого происходит изменение соответствующих данных на NoSQL СУБД Apache Cassandra, где хранятся последовательности данных и очереди команд, а так же Key-Value Storage. После этого, посылается событие об изменении состояния данных в Apache Kafka. Kafka представляет из себя распределённый брокер сообщений, который управляет порядком вызова триггеров на нашей платформе. Trigger Worker собственной разработки вызывает нужный триггер и передаёт на исполнение облачному рантайму Acapella, который, в свою очередь, может запрашивать у бэкэнда данные для работы триггеров. Такая система позволяет упорядочить хаос в сообщениях и является важной частью распределённой системы.