Skip to content

Architecture

TQE testcontainers

TQE testcontainers architecture:

TQE ClusterGrpc PublishersGrpc SubscribersTarantool Clusterpublisher-1publisher-Nconsumer-1consumer-Njava
TQE ClusterGrpc PublishersGrpc SubscribersTarantool Clusterpublisher-1publisher-Nconsumer-1consumer-Njava

TQE testcontainers are represented by the following interfaces:

GrpcContainer

GrpcContainer - all implementations of the interface represent containers that are grpc nodes. Each node can have one or two roles as subscriber(consumer)/publisher(publisher).

GrpcContainerImpl

GrpcContainerImpl - the basic implementation of GrpcContainer that accepts a path to a configuration file for grpc nodes. The path must be a regular file and correspond to the rules for setting up a grpc node. The start and stop methods are idempotent. The object does not store state.

TQECluster

TQECluster - an interface allowing to manage a TQE cluster. The interface allows to start and stop the cluster (it is impossible to restart the cluster with the current instance after stopping), and restart (preserving data in the TQE cluster).

TQEClusterImpl

TQEClusterImpl - the basic implementation of the TQECluster interface, which is configured using one of the TQEConfigurator instances.

TQEConfigurator

TQEConfigurator - an interface that allows to configure TQE cluster nodes (grpc nodes, Tarantool cluster).

FileTQEConfigurator

FileTQEConfigurator - the basic implementation of TQEConfigurator that allows to configure TQE cluster nodes using configuration files. The configuration files must be regular files and comply with the rules for setting up grpc nodes and Tarantool nodes for TQE