...
- SS registration with polyglot.
- Add 1 exchange/queue for SS registration with polyglot.
Set its TTL to say 5 secs, so msgs are discarded in such time. - SS publishes msgs to this queue, regarding aliveness, and conversion capabilities.
- Add 1 exchange/queue for SS registration with polyglot.
In "checkin", SS posts uploads the content of a converted file – instead of sending only the URL – and Polyglot saves it, instead of creating a "<file>.url" file.
...
- POL now adds SSes in discoveryAMQ(), removes (non-responsive) SSes in heartbeat(). Change to: POL listens to a new queue, adds SSes and updates timestamps in discovery thread, and removes SSes with expired timestamps in heartbeat thread – with NO querying of SSes.
- SS adds new implementation In SS: add code to publish conversion capability msgs in a new queue in RabbitMQ for POLs to listen to for SS registration and heartbeat.
- In SS: add code to upload converted files, in polyglot: add code to save them;
- In PolyglotStewardAMQ: change the code that creates "<file1.url>".
With this design, a SS can keep its REST endpoints, but POL does not query them. So it does not matter whether multiple SS containers run on the same VM or different VMs.
...