Авторизация
Забыли пароль?
Сброс пароля
Вернуться к авторизации

Разработка комплексного решения на микросервисной архитектуре для ГК «Эксперт»

11 марта ‘26

Заказчик: SimbirSoft
Страница кейса/результат: https://www.simbirsoft.com/portfolio/razrabotka-kompleksnogo-resheniya-na-mikroservisnoy-arkhitekture-dlya-gk-ekspert/

Разработали микросервис для подписания договоров и ДС встроили в ИТ-ландшафт компании (сайт, личный кабинет). Благодаря чему появилась возможность генерации документов на основе данных МИС (1С) и личный кабинет через API.

Агентство-исполнитель кейса

SimbirSoft

С 2001 года создаем серверные и кроссплатформенные решения для медицинских, финансовых, логистических компаний. В частности, в Backend-направлении 350+ разработчиков на проекты под ключ или усиление вашей команды. Сэкономьте до 40% на найме и содержании штатных специалистов с SimbirSoft!

1. Вводная задача от заказчика, проблематика, цели

В компанию SimbirSoft обратился клиент — ГК «Эксперт».

ГК «Эксперт»—федеральная сеть медицинских центров, одна из крупнейших в России частных медицинских компаний, специализирующаяся на диагностике (МРТ/КТ) и лечении, работающая с 2007 года. Включает более 40 диагностических центров, в которых работают тысячи сотрудников.

Задачи

Разработка комплексного решения на микросервисной архитектуре.

Система позволяет удаленно оформлять юридически значимые договоры с применением простой электронной подписи (ПЭП) на проведение МРТ-исследований.

Проект позволил компании уйти от бумажного документооборота, ускорил процессы и повысил удобство для пациентов.

В проект включились специалисты DevOps (автоматизация технологических процессов сборки, настройки и развертывания ПО) и бэкенд-разработки.

Реализованы услуги:

  • разработка и внедрение сервиса электронного документооборота (ЭДО) с ПЭП;
  • проектирование и развертывание отказоустойчивой инфраструктуры на базе Kubernetes (DEV, STAGE, PROD);
  • настройку комплексного мониторинга и логирования работы системы;
  • интеграцию нового сервиса с личным кабинетом пациента и медицинской информационной системой (МИС) клиента.
  • аналитика
  • архитектурная концепция
  • сервис API для обработки запросов от других систем и веб-приложений, сервис API для обработки запросов от административной панели управления, сервис API Gateway, сервис для обработки высоконагруженных задач и очередей.

2. Описание реализации кейса и творческого пути по поиску оптимального решения

Бизнес-задачи проекта

Внедрить систему электронного подписания договоров для достижения четырех ключевых целей:

  • полный отказ от бумажных носителей и снижение связанных с ними затрат;
  • сокращение времени оформления документов (с нескольких дней до нескольких минут);
  • устранение необходимости личного присутствия пациента для подписания договора;
  • гарантированное соответствие требованиям 63-ФЗ «Об электронной подписи».

Задачи в контексте всей разработки создать безопасный, масштабируемый и отказоустойчивый сервис, который в автоматическом режиме:

  • получает данные пациента и услуги из ЛК и медицинской информационной системы (МИС) по REST API;
  • формирует индивидуальный договор на основе актуального шаблона;
  • подписывает документ ПЭП и обеспечивает его долгосрочное хранение;
  • предоставляет пациентам и сотрудникам клиники возможность просмотра и скачивания подписанных документов через UI (пользовательский интерфейс) и API.
  • обеспечить бесперебойную работу сервиса для критичных операций компании;
  • гарантировать безопасность и целостность юридически значимых документов на всех этапах;
  • создать изолированные, но идентичные среды (DEV/STAGE/PROD) для предсказуемого тестирования и развертывания;
  • автоматизировать рутину (развертывание, мониторинг, откат), минимизировав человеческий фактор в рабочей среде.
  • спроектировать отказоустойчивую архитектуру с нуля;
  • реализовать полный цикл подписания документов (простая и усиленная подпись);
  • разработать механизм точного позиционирования штампа на PDF-документах с анализом координат текста;
  • реализовать склейку HTML-шаблонов и наложение штампов на итоговые PDF-файлы;
  • настроить долговременное хранение с автоматической архивацией.

Решение

Одним из значимых факторов успеха в таких проектах становится не столько код, сколько надежность, воспроизводимость и контролируемость платформы, на которой он работает. Наш DevOps-инженер выступил на проекте архитектором этой платформы.

Выбрали программное обеспечение Kubernetes (обусловлено необходимостью декларативного управления инфраструктурой).

Это позволит:

  • версионировать и контролировать состояние всей среды как код;
  • обеспечивать мгновенную воспроизводимость сред для аварийного восстановления;
  • внедрить автоматические проверки безопасности и соответствия законодательным требованиям на этапе CI/CD.

Выбранная архитектура сервиса обеспечит высокую гибкость и отказоустойчивость:

  • микросервисы выбраны для независимого масштабирования компонентов и разделяемого управления нагрузкой;
  • планировщик задач Hangfire (с Redis в качестве инструмента хранения) обеспечил надежную обработку фоновых процессов и очередей;
  • двухуровневое хранение данных (горячий и холодный уровень) снизит затраты на облачное хранилище и повысит безопасность данных;
  • Gotenberg (высокопроизводительный легковесный API сервис) выбран за стабильную и производительную конвертацию HTML в PDF с сохранением структуры и визуального представления документа;
  • Библиотеки с открытым исходным кодом для работы с PDF-файлами PdfPig и PdfSharpCore использованы для дополнительных манипуляций с PDF, в частности, точного позиционирования штампа цифровой подписи (путем определения координат последнего символа и отступов в документе).

3. Результаты сотрудничества

Технологическая отказоустойчивость

Кластер PROD-среды обработал несколько отказов сервером без простоя сервиса (нулевой период недоступности для пациентов).

Скорость и безопасность изменений

Благодаря автоматизации, выполнили более 70 безопасных развертываний за время проекта. Количество инцидентов из-за «разрыва сред» сведено к нулю.

Контроль и наблюдаемость

Реализован единый «пульт управления» (Grafana dashboards) для инфраструктуры и приложений, что позволило команде оперативно выявлять и устранять узкие места в производительности.

4. Заключение

Бизнес-эффект

Снижение операционных рисков

  • автоматизация аварийного восстановления и внедрения продвинутого мониторинга;
  • минимизация финансовых и репутационных рисков при сбоях критического сервиса.

Экономия на масштабировании

  • Инфраструктура, описанная кодом, позволяет масштабировать сервис в новые регионы не за месяцы, а за дни, что снижает стоимость будущего роста.

Фундамент для инноваций

  • Стабильная и предсказуемая платформа позволит бизнесу и разработке фокусироваться на улучшении продукта для пациентов, а не на «тушении пожаров» в инфраструктуре.

Трудности

Трудности, для которых бэкенд-команда нашла оптимальные решения, связаны с точным позиционированием штампа на PDF. Обычно это самая нетривиальная задача.

PDF не хранит информацию о логической структуре текста — только координаты каждого символа. Нужно было разработать алгоритм, который находит последний символ в документе и гарантированно размещает штамп после него.

При этом необходимо учитывать разные шрифты, кодировки и возможность переноса на новую страницу. Малейшая ошибка в координатах — и штамп мог наехать на текст или выйти за пределы страницы. Благодаря команде задача была решена.

Агентство-исполнитель кейса

SimbirSoft

С 2001 года создаем серверные и кроссплатформенные решения для медицинских, финансовых, логистических компаний. В частности, в Backend-направлении 350+ разработчиков на проекты под ключ или усиление вашей команды. Сэкономьте до 40% на найме и содержании штатных специалистов с SimbirSoft!