У меня есть конечная точка http, где клиент делает запрос со своими данными, на которые возвращается вычисленный ответ. Вычисление состоит из нескольких этапов - data lookup
, calculations
и несколько transformations
. Окончательный результат записывается как ответ на запрос.
Могу ли я написать задание Hazelcast Jet, которое принимает данные, полученные в http, все ли вычисления, определенные выше, и отвечают ли результатом на запрос?
Я не вижу прямого пути к этому, однако я вижу один подход: иметь реактивный http-сервер, читать запрос реактивным способом, записывать запрос в Ringbuffer
или IQueue
и ждать результата (с помощью обратного вызова) в прочее Ringbuffer
.
Задание Hazelcast может читать из источника Ringbuffer
, вычислять и преобразовывать, наконец, записывая результат в другой Ringbuffer
(приемник).
Hazelcast Jet использовала такой способ? Ваши мысли могут помочь лучше понять Джета.