3

For instance, let us assume that I have a system whose entry point is Apache Knox that redirects requests to Apache NiFi. Let us further assume that I send messages A and B to the server and Apache Knox receives firstly message A and then message B. Is it possible that Apache Knox changes the order of the messages in such a way that Apache NiFi will receive firstly message B and then message A?

Tatarkow
  • 529
  • 4
  • 12

1 Answers1

1

No, Apache Knox will not change the message order but at the same time there is no guarantee that the messages will be delivered in a specific order. Apache Knox uses the httpClient to forward requests to the backend that is being proxied after rewriting.

Sandeep More
  • 655
  • 1
  • 6
  • 22
  • Thank you. Do I understand it correctly that Apache Knox itself guarantees the request order (if so could you please provide me some reference), however it is possible that the order will change on the way from Apache Knox to Apache NiFi (in my example)? – Tatarkow Apr 08 '20 at 10:34
  • 1
    Apache Knox does not guarantee message order there is no request queue notion in Knox. Knox delegates handling of requests to Jetty request handler which handles http requests. So if your requests are say a millisecond apart then there could be a chance that the order might change, this is because of how Jetty selector picks requests from different connections. – Sandeep More Apr 09 '20 at 13:49