Рефакторинг приложения (код на scala + spark)

Цена договорная
16 июля 2020, 11:32 • 4 отклика • 25 просмотров
Здравствуйте!
Я представляю оператора фискальных данных "Первый ОФД". Сейчас мы ищем возможности для аутстаффинга и/или аутсорсинга задач по разработке, рефакторингу и обслуживанию нескольких наших приложений и сервисов.

Приоритетная задача следующая:

Необходимо произвести рефакторинг приложения bazaarsender.

Приложение читает все приходящие сообщения из очереди kafka и принимает решение о посылке тому или другому клиенту на основании настроек, обычно при совпадении РНМ (регистрационный номер кассы) или ИНН/КПП владельца кассы. Эту логику мы сохраняем. Так же для каждого клиента мы отрезаем часть полей и переименовываем некотые другие поля. Для посылки используетс клиент HTTP и JSON для сериализации. Код написан на scala + spark.

Перенести код сериализации в JSON с Scala Spray на Java JOLT.
Разделить очереди в кафке. Т.е BazaarSender будет заниматься не фактической отправкой чеков в эндпоинт, а раскладывать по маленьким очередям в кафке для клиентов. Потом стартует несколько приложений и каждое читает свою очередь и отправляет в свой эндпоинт.

Написать приложение обработки очередей для посылки сообщений и сохранения ответов.

Часть других подобных приложений уже переписана в нужный нам вид и нам необходимо сохранить общий стиль и способ развертывания и мониторинга. Код с примерами будет доступен в рамках того-же проекта.

Приемка будет вестись на основании код ревью, при наличии достаточного количества тестов, частично тесты тоже нужно будет перенести, недостающие добавить.