Change language

Arquitetura do sistema

A Converged é uma camada operacional modular para empresas de manufatura. Suas interfaces de usuário, serviços de domínio, mecanismo de fluxos de trabalho, armazenamento, gateway de mídia e processadores industriais formam um único sistema sem se tornarem uma única aplicação.

A arquitetura separa três tipos de trabalho:

  • módulos de domínio são proprietários dos dados de negócio e dos recursos voltados ao usuário;
  • serviços nativos de runtime transportam mensagens, executam fluxos de trabalho, armazenam dados e lidam com mídia em tempo real;
  • o plano de controle decide quais partes são executadas para cada plataforma e locatário.

Um barramento de mensagens

Os componentes de runtime se comunicam por meio do Fujin. Cada processo abre uma conexão, registra um destino e envia mensagens para destinos lógicos. O remetente não precisa conhecer o endereço ou o local de implantação do receptor.

clientes de navegador e dispositivos móveis | v barramento de mensagens Fujin / | | \ ui ms Centimanus Resonus \ | / \ Behemoth /

Isso remove o grafo de chamadas HTTP e a malha de serviços da camada de aplicação. Roteamento, correlação de solicitações e contexto confiável do locatário viajam no envelope de mensagens comum. Um processo receptor então seleciona o serviço ou manipulador solicitado dentro de seu próprio limite.

Runtime principal

ComponenteResponsabilidade
FujinConecta pares de runtime e roteia mensagens para o proprietário ativo de um destino.
BehemothFornece armazenamento isolado SQL, chave-valor, colunar, vetorial, de grafos e de arquivos.
CentimanusExecuta fluxos de trabalho empresariais de várias etapas como grafos reproduzíveis.
ResonusLida com mídia em tempo real, chamadas, transcrição e sessões de IA.
PtahReconcilia a plataforma, as soluções e os locatários desejados em recursos do Kubernetes.

Os componentes são deliberadamente restritos. O Fujin não entende serviços de negócio. O Behemoth não orquestra operações de negócio. O Centimanus não é proprietário dos dados de domínio. O Resonus não decide a identidade do locatário. O Ptah cria e configura cargas de trabalho, mas não participa das mensagens de runtime.

Módulos e soluções

Os recursos de negócio são entregues como microsserviços, superfícies e fluxos de trabalho. Uma solução é uma seleção declarativa desses módulos para um cenário operacional específico, como processamento de pedidos, planejamento da produção ou monitoramento de equipamentos.

Os microsserviços são proprietários de seus dados e expõem contratos tipados. Eles não chamam uns aos outros para coordenar um processo. Sequências entre domínios pertencem aos fluxos de trabalho, que o Centimanus executa uma etapa durável por vez. Isso mantém os módulos de domínio pequenos e permite que uma solução os combine sem criar acoplamento oculto.

Isolamento de dados

Cada microsserviço possui sua própria raiz física de armazenamento. O Behemoth pode atender muitas raízes a partir de um processo, mas preserva seus limites de propriedade e se recusa a criar dados fora das montagens configuradas.

O mesmo modelo se adapta a diferentes perfis de implantação:

  • uma instalação de borda pode executar uma instância do Behemoth para a plataforma;
  • uma instalação maior pode dividir os escopos entre fragmentos de armazenamento;
  • uma instalação na nuvem pode executar uma instância de armazenamento isolada por locatário.

Alterar a topologia não altera o código da aplicação, pois os pares continuam endereçando destinos lógicos e limites de armazenamento.

Plano de controle

O Ptah é o plano de controle e não está conectado ao Fujin. Ele observa os recursos declarados de Platform, Solution e Tenant, calcula as cargas de trabalho desejadas e as reconcilia com o Kubernetes.

Platform + Solutions + Tenants | v Ptah | v Implantações, serviços, volumes, configuração e rotas

Essa separação permite que o runtime permaneça concentrado no tráfego de negócio, enquanto o modelo de implantação lida com posicionamento, topologia de armazenamento, rotas de locatários e ciclo de vida. As mesmas imagens de aplicação podem, portanto, ser executadas em um cluster compacto de borda ou em um ambiente de nuvem multi-tenant.

Contexto confiável

O escopo do locatário é estabelecido na borda da plataforma e transportado no envelope de mensagens. Os serviços de runtime consomem esse contexto confiável em vez de derivar um locatário dos payloads da aplicação. O posicionamento do armazenamento, as chamadas de serviço e as sessões de mídia preservam o mesmo limite de escopo.

Juntos, as mensagens lógicas, o armazenamento isolado, os fluxos de trabalho reproduzíveis e um plano de controle separado permitem que a Converged permaneça modular sem transferir a complexidade de sistemas distribuídos para cada módulo de negócio.