Beehive / Swarm
Estamos compartilhando uma visão de Sistema em três partes:
-1- uma Plataforma de alta disponibilidade e alta performance ;
-2- uma Arquitetura que se inspira nas melhores idéias de SOA ;
-3- uma Solução baseada em tecnologia livre para desenvolvimento rápido e seguro ;
Plataforma:
"O sistema caiu", é o tipo da explicação inadmissível num ambiente corporativo moderno.
Sistemas não podem "cair"... máquinas quebram e param de funcionar, sim. Mas os sistemas devem ser RESILIENTES. Uma máquina que para de funcionar DEVE ter um grau de contingência que permita continuar o funcionamento do sistema como um todo, de preferência de forma TRANSPARENTE.
Sistemas corporativos existem para viabilizar processos de negócios, e quando um processo de negócio é interrompido, prejuízos financeiros acontecem; por esta razão, o objetivo de Alta-Disponibilidade é tão bem-visto nas empresas.
Até recentemente, a única forma de se garantir a Alta-Disponibilidade era por meio de Clusters, uma plataforma de implantação e manutenção complexas, com soluções específicas para questões de load-balance/proxies/heart-beat; mas uma abstração destes problemas (o Cloud Computing) é capaz de reduzir sensivelmente a complexidade das questões de balanceamento e distribuição de processamento.
Porém, por uma questão de segurança dos dados corporativos, não se pode advogar o uso de Clouds "públicas", compartilhadas por diferentes empresas, daí uma implementação diferenciada: a "Private Enterprise Cloud".
Os benefícios de simplificação e transparência de uma Cloud, junto com a segurança de um Cluster privado.
Private Enterprise Cloud:
- os processamentos podem executar de forma distribuída, tirando proveito de processadores da Cloud que estejam desocupados;
- o espaço de memória que cada processo enxerga é igual ao total de memória disponível nas várias máquinas da Cloud ;
- o mesmo sistema de arquivos está disponível para todos os processos na Cloud (Global File System) ;
- um cache comum para toda a Cloud preserva os acessos a Bancos-de-Dados, para otimizar a performance e reduzir gargalos.
Arquitetura:
Nos últimos anos muito se falou sobre Arquiteturas-Orientadas-a-Servicos (SOA) e de seu maior benefício: a flexibilidade de se ajustar os processos de negócio através da composição de pequenas funcionalidades específicas; e também se falou das frustações (e dos imensos prejuízos) criadas quando uma implantação SOA não ocorre conforme as expectativas.
Contudo, o benefício da flexibilidade, a forma ágil como a área de tecnologia passa a atender às necessidades da área comercial, é por demais valioso para ser ignorado; portanto, se pudéssemos evitar os equívocos já bem conhecidos das implantações que falharam, estaríamos em condição de colher os frutos de uma arquitetura SOA.
O principal risco tem sido a não compreensão de que sempre existe um legado, e este legado precisa ser considerado desde o início do processo de implantação. Nenhuma solução pode existir isolada dentro de uma empresa, a implantação PRECISA ser vista como um esforço que permeará vários sistemas e áreas distintas da mesma companhia. Daí, soluções "de caixa preta" acabam por serem ou inviáveis, dada a magnitude da integração necessária (desde o início do projeto) ou ficando isoladas em "silos", passando a ser "mais um sistema" num emaranhado de outros sistemas que nunca serão capazes de COOPERAR entre si.
O segredo de uma implantação bem-sucedida é "pensar grande, mas começar pequeno", a arquitetura deve ser capaz de permitir uma implantação GRADUAL.
Nos aproveitando de uma plataforma de alta-disponibilidade como a Private Enterprise Cloud, construímos uma arquitetura distribuída de adoção incremental, como uma colméia de recursos, baseada em princípios RESTful, e que disponibiliza um Bus de Serviços para integrar-se com o legado existente.
BeeHive:
- Free Open Source Software: Baseado em padrões abertos,
- OpenAPI: Disponibilização de API de programação documentada e aberta para qualquer outro fornecedor poder desenvolver módulos ;
- RESTful: redução significativa da complexidade de SOAP/WSDL, escalável como a WEB ;
- ESB: enterprise service bus para integração com legados ;
Solução:
Tecnologia é apenas um meio, o fim são os processos de negócios.
Todas as camadas de infra-estrutura, plataforma, arquitetura, etc... não teriam valor algum, se não fosse pela capacidade de suportar processos de negócios, estes sim, responsáveis por realizar os processamentos que agregam valor aos serviços que são prestados.
SWARM é nossa solução de procesamento de alto volume para (EDI de valor agregado) todo um campo de serviços complementares ao tráfego simples de arquivos. A capacidade de aproveitar o acesso já existente aos dados transacionais dos clientes para prover serviços complexos de tradução de layouts entre parceiros, conciliação de extratos versus cobranças, geração de relatórios de BI via portais ou via arquivos específicos (CEF), bilhetagem automatizada e auditável pelo cliente.
Cada componente SWARM mapeia uma e apenas uma funcionalidade de negócio, portanto, é reaproveitável em todos os fluxos de EDI onde aquela funcionalidade for desejável; e é construído para utilizar de forma padronizada as políticas de Segurança/Auditoria e o Roteamento dos fluxos de negócio (BPM).
Outra característica que a plataforma BeeHive disponibiilza para os componentes SWARM é a capacidade de um mesmo processamento, o qual possa exigir demais de uma única máquina, seja dividido entre máquinas diferentes, permitindo o processamento COOPERATIVO.