%% OpenVox Agent Flow to Compiler Pool, DB Pool, and Patroni
graph LR
%% Agents
OVAgent[OpenVox-Agent]
%% Load Balancer in front of Compiler Pool
LB1[Compiler Load Balancer]
Foreman[_optional:_ Foreman] <--> Compiler1
subgraph CompilerPool[Compiler Pool]
Compiler1[Compiler 1]
Compiler2[Compiler 2]
Compiler3[Compiler n]
end
%% Load Balancer in front of DB Pool
OpenvoxView --> OpenVoxDB
subgraph Postgres[Patroni PostgreSQL Cluster]
PGLeader[Postgres Leader]
PGReplica1[Postgres Replica 1]
PGReplica2[Postgres Replica n]
end
%% Connections
OVAgent --> LB1
LB1 --> Compiler1
LB1 --> Compiler2
LB1 -.-> Compiler3
Compiler1 --> OpenVoxDB
Compiler2 --> OpenVoxDB
Compiler3 -.-> OpenVoxDB
OpenVoxDB -. optional .-> Postgres
PGLeader --> PGReplica1
PGLeader --> PGReplica2