jar, умеет делать тяжелую работу и возвращать тяжелый JSON результат (под 40 МБ)
И есть у меня разные клиенты, которые хотят дергать условный сервис враппер над этим жарником. Но так как работа тяжелая (до 40 минут на одну работу), они ждать не хотят, а хотят просто тригернуть его и отключиться. После завершения работы сервис должен сделать условный callback (webhook) и вернуть клиентам json результат.
Как мне это лучше спроектировать этот сервис? Как монолитный REST сервис? Но тогда встает вопрос многопоточности. Для каждого клиента нужно поднимать свой контейнер с жарником? Звучит как оркестратор, но выглядит как дикий оверинжиниринг.
Каким максимально простым способом я могу это решить, если это обычный опенсорс и нет под рукой девопсера?
Были мысли про OpenFaas но, я обычный джавист, а тут миллион способов обосраться с безопасностью и кривыми конфигами.
Два типа тредов: первый принимает запрос на обработку, складывает в какую-нть очередь ID запроса и по ID отдаёт ответ. Второй тащит из очереди айдишники, обрабатывает и складывает результаты куда-то, откуда их отдаёт первый типа тредов.
Обсуждают сегодня