An Orchestrator is a software module that distributes tasks and video streams from the VSaaS platform to the Analytics workers. The Orchestrator consists of two parts: a server and a client one.
The server part handles the following tasks:
-
Processing incoming requests with video streams from the VSaaS platform.
-
Distributing video streams to the Analytics workers.
-
Managing video streams.
-
Images vectorizing and dispatching vectors to the vectors database storage (Tarantool).
The client’s part handles the following tasks:
-
Collecting statistics on server resource usage.
-
Managing the start and stop of the Analytics workers.
Main processes
An Orchestrator handles the following main processes:
-
Processing and dispatching video streams to an Analytics worker.
-
Updating a previously launched video stream on an Analytics worker.
-
Deleting a previously launched video stream on an Analytics worker.
-
Processing and redistributing video streams if an Analytics worker is out of service.
-
Processing and redistributing video streams of an Analytics worker that are hosted on a server if the server is out of service.
-
Processing of a video stream that can’t be processed on a current Analytics worker.
-
Processing images received from the platform.
-
Processing statistics on the servers loads that is received from the Analytics workers.
-
Processing video streams that weren’t launched on Analytics workers for any reason.