Описание проекта
Компания имеет сложную инфраструктуру, включающую сайт, мобильное приложение, личный кабинет жителей и систему БИТ.ФИНАНС, что требует высокой степени интеграции и синхронизации данных.
Компания столкнулась с рядом проблем, связанных с управлением данными и интеграцией информационных систем:
- Разрозненность данных: Данные хранились в различных системах, что приводило к сложностям в синхронизации и управлении информацией.
- Неэффективная шина данных: Существующая шина данных на базе RabbitMQ не обеспечивала требуемую производительность и надежность.
- Затраты времени на рутинные операции: Рутинные операции по синхронизации данных между системами занимали значительное количество времени и ресурсов.
Для решения этих проблем был разработан комплексный проект по созданию новой шины данных на базе NATS Streaming. Проект включал в себя следующие ключевые этапы:
1. Разработка шины данных на базе NATS Streaming
Разработана новая шина данных на базе NATS Streaming, которая обеспечила:
- Высокая производительность и надежность: NATS Streaming обеспечивает высокую пропускную способность и надежность передачи данных.
- Шифрование данных: Все потоки данных в системе зашифрованы с использованием протокола protobuf.
- Язык разработки Golang: Разработка велась на языке Golang, что обеспечило высокую производительность и масштабируемость системы.
2. Интеграция с существующими системами
Новая шина данных была интегрирована со следующими системами:
- Сайт: Обеспечена синхронизация данных между сайтом и другими системами.
- Мобильное приложение: Обеспечена синхронизация данных между мобильным приложением и другими системами.
- Личный кабинет жителей: Обеспечена синхронизация данных между личным кабинетом жителей и другими системами.
- 1С БИТ.ФИНАНС: Обеспечена синхронизация данных между системой 1С БИТ.ФИНАНС и другими системами.
3. Миграция с RabbitMQ
Новая шина данных была интегрирована с существующей шиной данных на базе RabbitMQ, что обеспечило:
- Бесшовную миграцию: Данные были успешно перенесены с RabbitMQ на NATS Streaming без потери информации.
- Постепенное переключение: Система была переключена на новую шину данных постепенно, что минимизировало риски и обеспечило бесперебойную работу.