Service architecture#
Component interaction diagram#
LUNA POINT has a microservice architecture, where each component (component or system) provides access to an independent group of Service functions.
Component interaction diagram is shown below (Figure 1).
Service components, as well as a description of their purpose and interaction with VisionLabs products, are presented in Table 1. The source of events in the context of component interaction can be a stream from an IP camera or a video file.
Table 1. Service components and VisionLabs products
|
Name of the component/system |
Interaction description |
|---|---|
|
FaceStream |
|
|
FaceStream |
FaceStream is required to work with event sources and has multiple functions:
|
|
Stream service |
Stream service is required to work with sources. Stream service has multiple functions:
Parameters are set by sending requests with a body in JSON format to the Stream service service. FaceStream takes settings from Stream service for further processing. |
|
LUNA PLATFORM 5 |
|
|
LUNA API |
Provides a RESTful interface for interacting with other LUNA PLATFORM 5 components. Receives requests, distributes tasks among other LUNA PLATFORM 5 components. |
|
LUNA License service |
License service contains information about available licensed features and their limitations, provides information about license conditions to LUNA PLATFORM 5 components:
License service is required for the operation of the Service components and their interaction with the LUNA PLATFORM 5 components. |
|
Video Manager |
Stores information about available analytics and passes it to agents. |
|
Agent |
Processes video analytics. An agent accepts streams, executes the specified analytics, and sends the results via the Callback mechanism as well as web sockets and the Sender service. Each agent can support the execution of one or more analytics, depending on its configuration and capabilities. |
|
Sender |
The service, that the agent uses to send processing results in accordance with the selected Callback type, for example:
|
|
LUNA POINT |
|
|
POINT API |
The component provides an interface for the interaction of LUNA POINT with all components shown in the component interaction diagram. Nginx server is required to route requests. |
|
POINT UI |
The graphical interface that provides information transfer between the user and LUNA POINT hardware and software components. |
|
CLEMENTINE AUTH |
Provides user account management. The CLEMENTINE AUTH component's database is designed to:
|
|
VL NOTIFIER |
The component provides notifications management:
|
For more information about the LUNA PLATFORM 5 components, see “LUNA PLATFORM 5. Administrator Manual".