Componentes

Para a concretização da plataforma Switch2Steel, propõe-se uma plataforma integrada e assente em diversas tecnologias, conforme ilustrado na imagem seguinte. Discutem-se de seguida os principais aspetos da solução proposta.
Como se pode ver no diagrama, a plataforma é composta por diversos componentes, todos eles desenhados e desenvolvidos com possibilidade para escalabilidade horizontal individual de cada componente (clusters). Este princípio permite reforçar de forma dinâmica, em função das necessidades, o número de instâncias de cada componente, garantindo um elevado nível de performance da plataforma.
Aplicações (iOS, Android, Windows, macOS)

As aplicações irão permitir ao utilizador realizar todas as ações de interação com a plataforma, que foram já descritas anteriormente.

Cluster web

Além de poderem utilizar a plataforma nas principais plataformas (mobile e fixo), os utilizadores terão acesso às mesmas funcionalidades através do website do Switch2Steel.

APIs

As APIs REST fazem a ligação entre os pedidos e respostas das Aplicações com os Serviços da plataforma.

eMQTT

O eMQTT é um Message Broker que permitirá a troca de mensagens entre a plataforma e as Aplicações, como por exemplo, para notificação de cálculo e otimização terminadas.

Cluster de serviços

A plataforma será composta por um módulo de gestão, Serviço, que controla a interação de todos os componentes da plataforma e contém a lógica do processo, dando resposta às aplicações, gerindo os dados armazenados e desencadeando os algoritmos de otimização.

Cluster de dados

Para o armazenamento dos dados, serão utilizadas duas tecnologias diferentes de base de dados (ambas com suporte de configuração cluster), uma relacional - MariaDB8 – para o armazenamento permanente de todos os dados da plataforma, e uma não relacional – Redis9 – para armazenamento temporário e mecanismos de caching que aumentam o tempo de resposta da plataforma.

Cluster de processamento

Devido ao nível de processamento necessário para alguns dos cálculos de otimização, os algoritmos podem ser executados num cluster próprio com dimensionamento variável especializado em elevado processamento matemático.

APIs de ligação

Por forma a permitir a integração da plataforma Switch2Steel por e com outros sistemas, a arquitetura inclui um componente HTTP/REST que irá disponibilizar os métodos necessários para poder ser integrado por outros sistemas, e incluirá interfaces de ligação às aplicações externas necessárias (bem como um mecanismo modular de extensão para suporte novas aplicações no futuro).

Backend Gestão

Toda a gestão da plataforma poderá ser feita através de uma interface web privado, de modo a que quem tiver permissões de acesso possa efetuar a gestão, manutenção e evolução da plataforma, incluindo funções como, a gestão de utilizadores e perfis, gestão das normas e legislação base por país, gestão dos algoritmos disponíveis e métricas.

Estatísticas

Diversas estatísticas da plataforma serão recolhidas e disponibilizadas aos gestores da plataforma, com indicadores relevantes para a manutenção da plataforma e para a análise do negócio, como por exemplo número de acessos, números de otimizações avançadas, tempo médio de processamento, entre outras.

Monitorização

Os diversos componentes da plataforma, bem como os clusters e servidores de suporte serão alvo de monitorização ativa, o que permite detetar rapidamente situações de falha, bem como realizar ações de escalonamento em função dos recursos usados vs. disponíveis.

Consórcio