Лидеры года — новая категория на Workspace Digital Awards! Номинируйте вашу команду, продукты и проекты.
Opulence
Работа над бэкендом сайта LabQuest
Opulence
#Поддержка и развитие сайта#Программирование сайта

Работа над бэкендом сайта LabQuest

25 
Opulence Россия, Москва
Поделиться: 0 0 0
Работа над бэкендом сайта LabQuest
Сфера

Медицина и ветеринария

Сдано

Апрель 2026

Задача

ЛабКвест делает лабораторные исследования: анализы крови, мочи, инфекции. Через личный кабинет пациент записывается на услуги и получает результаты.

За этим кабинетом стояла одна база данных. В ней лежало всё сразу: учётные записи, записи на приём, результаты исследований, служебные данные. В единственном экземпляре, без копии.

Такая схема работает ровно до первой аварии. Дальше у неё два больных места.

Первое: восстановление. Копии нет, значит восстанавливать нечего. Для лаборатории это не абстрактный риск: результаты анализов относятся к медицинским данным пациента.

Второе: нагрузка. Разные типы данных живут по-разному. Записи на приём читают и меняют постоянно, результаты исследований пишут однажды и потом только читают, учётные записи трогают редко. В общей базе они конкурируют за один ресурс, и тяжёлый запрос к одному типу тормозит остальные.

Решение

Разделили хранение по типам данных

Первым делом разобрали, что и как используется, и развели данные по нескольким базам по типу.

Разделение даёт три вещи сразу. Нагрузка перестаёт складываться в одну точку: тяжёлая выборка результатов больше не мешает записи на приём. Настройки перестают быть компромиссом: каждую базу настраивают под её характер работы. Граница доступа проходит по типу данных, а раньше она пролегала внутри одной общей базы.

Копия в облаке

Параллельно завели копирование в облако. Теперь у данных есть второй экземпляр вне основного контура.

Это закрывает главный риск исходной схемы. Отказ носителя, ошибка при обновлении, повреждение данных. Любой из этих сценариев раньше означал потерю без вариантов.

Кабинет переписали на основе старого

Личный кабинет и запись на услуги переписали заново, взяв за основу старую систему.

Выбор здесь неочевиден и стоит объяснения. Переписать с нуля соблазнительно: свободные руки, чистая архитектура. Но кабинет работающей лаборатории нельзя выключить на время переезда, а привычки пациентов и логика записи копились годами и учитывают то, чего нет ни в одном техническом задании.

Поэтому старую систему разобрали и перенесли её логику на новую основу. Пациент не заметил переезда, а под ним поменялось хранение.

Результат

ЛабКвест получил бэкенд личного кабинета с разделённым хранением и копией данных в облаке. Запись на услуги и кабинет работают на прежней логике, поэтому пациентам не пришлось переучиваться.

https://www.labquest.ru/

Стек технологий

  • Python Python Язык программирования
  • Django Django Фреймворк/библиотека
  • PostgreSQL PostgreSQL База данных
  • Redis Redis База данных
  • Docker Docker Среда разработки
  • NGINX NGINX Веб-сервер

Оцените кейс
Спасибо за оценку
Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.
оставить заявку

Хотите заказать похожий проект?

Opulence с удовольствием обсудит вашу задачу

Оставить заявку