Image
О проекте

Центр обработки регистрации диагностических карт - это сервис через который 11 закрытых кабинетов предоставляют услуги по регистрации ДК и автомобильных страховок в 40 городах России.

Система совершенствуется более пяти лет и часть кода написана еще на php 5.5 версии. На проекте работало 4 подрядчика в разное время по поддержке и развитию. Код неоднородный, местами сложно понятный по логике.

Технологии
  • PHP
  • Laravel
  • mySQL
  • Java Script
Клиент

Подрядная работа для агентства.

Ссылка
nda

Задача 

Решить задачу по ускорению работы сервиса и сделать выгрузку в pdf документов.

Реализация 

Проектировать решение по очередям и переписывать запросы на объединенные. В системе часто создаются диагностические карты после того, как пользователь отменил создание. Из-за нагрузки, сервер не успевает обработать запрос на отмену и в итоге списываются деньги за создание. Клиенты уходят и сервис теряет недополученную прибыль.

Что есть на рынке из готового?

Есть системы очередей: Apache Kafka, rabbitMQ. Предложили клиенту, на интеграцию требуется около 180 часов. Из-за чего так долго? Нельзя остановить работу, идет в нескольких часовых поясах и все 24 часа в системе происходят операции.

Тестовой среды нету. Это замедляет все процессы в разработке нового.

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

Пошли искать решение дальше. Из готовых библиотек ничего оптимально подходящего не нашлось.

Решили разработать небольшую библиотеку своими силами под конкретную задачу: очереди на отправку заявок и проверки на стороне клиентских сервисов. Бюджет и сроки при таком подходе уменьшился в двое - 90 часов.

Сложности были на этапе тестирования и дальнейшей отладки. Пуско-наладочные работы мы проводим и рекомендуем всегда тестовую среду.

В данном проекте ее не было и были ошибки при отладке пропускного канала заявок. Из-за чего по началу клиентом приходилось долго ждать создания ДК.

Итог 

На работу потребовалось две недели. Внедрили, отладили и перешли к созданию генерации документов в pdf. Генерация заняла четыре дня с тестами.