Архитектура
TQE testcontainers
Архитектура TQE Testcontainers:
TQE testcontainers представлены следующими интерфейсами:
- TarantoolContainer - используется для создания кластера Tarantool
- GrpcContainer - используется для создания узлов grpc подписчика(consumer) /издателя(publisher)
- TQECluster - используется для запуска/перезапуска и остановки кластера TQE
- TQEConfigurator - используется для настройки кластера TQE
GrpcContainer
GrpcContainer - все реализации интерфейса представляют контейнеры, являющиеся grpc-точками. Каждая
точка может иметь одну или две роли подписчик(consumer)/издатель(publisher).
GrpcContainerImpl
GrpcContainerImpl - базовая реализация GrpcContainer, которая принимает на вход
путь к файлу конфигурации grpc-точек. Путь должен быть регулярным файлом и
соответствовать правилам
настройки grpc-точки. Методы запуска и остановки идемпотентны. Объект не хранит состояние.
TQECluster
TQECluster - интерфейс позволяющий управлять TQE кластером. Интерфейс позволяет запускать и
останавливать кластер (после остановки заново запустить кластер с помощью текущего экземпляра
невозможно), перезапускать (с сохранением данных в кластере TQE).
TQEClusterImpl
TQEClusterImpl - базовая реализация интерфейса TQECluster, которая настраивается с
помощью одного из экземпляров TQEConfigurator.
TQEConfigurator
TQEConfigurator - интерфейс, позволяющий настраивать узлы TQE
кластер (grpc-точки, Tarantool кластер).
FileTQEConfigurator
FileTQEConfigurator - базовая реализация TQEConfigurator, которая позволяет
настроить узлы кластера TQE с помощью конфигурационных файлов. Файлы конфигурации должны быть
регулярными файлами и соответствовать правилам настройки
grpc-точек и узлов Tarantool для TQE