architecture - App communicate with message queue directly vs. communicating with a proxy (front end service) -


we working new architecture our product. out product not iot - devices communicate single box @ client site , box communicates our servers.

we have 2 options:

  1. the box send message directly queue picked worker server , handled @ it's turn.
  2. the box send message front end server. server put message in queue worker handle.

there pros , cons each method. number 1 pro communicating directly queue don't need spend money on machines hold front end services.

the biggest pro using front end server acts abstraction layer against queue technology working - if change queue don't need update clients new version them keep working. advantage think allows simulate synchronios calls.

of course, there many pros , cons each. suggested way work? best practices? security?

one aspect consider scalability. need support load balancers that.

while message queue protocols can run on load balancers (see e.g. load blancing mqtt broker), advise test before making decision. if use plain rest, load balancer compatibility non-issue.

other areas check are: * firewall compatibility: "box" in different netowkr (e.g. company intranet) server? in case http/rest more safer choice.


Comments

Popular posts from this blog

javascript - Using jquery append to add option values into a select element not working -

Android soft keyboard reverts to default keyboard on orientation change -

jquery - javascript onscroll fade same class but with different div -