A Solução xPaaS
A solução xPaaS é um conjunto de features adicionais agregadas ao OpenShift que permite utilizar em suas aplicações conceitos já utilizados atualmente dentro da nuvem. Tais conceitos, como BPM e EAI, rodam como aplicações dentro do OpenShift permitindo assim integrar os sistemas através de padrões de arquitetura EAI, orquestração de serviços utilizandos processos e regras e fazer deploy em ambientes híbridos.O OpenShift xPaaS possui até o momento os serviços iPaaS, BPMaaS e mPaaS. O que eles são e para que serve? Tentarei explicar nas próximas seções.
O serviço base ou o serviço de container de aplicações
Desde o início, o OpenShift oferece Servidores de Aplicações Java (como JBoss, Tomcat e outros) para desenvolvimento de aplicações. Sem dúvida, esses servidores são essenciais já que hospedam suas aplicações. A partir daí, o desenvolvimento cria as aplicações corporativas utilizando a especificação Java EE onde define as APIs necessárias tais como persistência, transação e outros.
Aplicação Kitchensink rodando no cartridge JBoss EAP |
iPaaS: Integração como um Serviço
Geralmente, em uma empresa, há diversas aplicações para agilizar o fluxo de trabalho de departamentos internos da empresa porém é necessário que essas aplicações interajam entre si afim de melhorar a eficiência deles sem reinventar a roda. Para isso, os padrões EAI facilitam a integração entre sistemas utilizando princípios arquiteturais.Fuse no OpenShift |
Além de integração, há também uma necessidade de se integrar diversas fontes de dados para o ecossistemas de aplicações de uma empresa. Uma vez que há diversas formas de se armazenar dados, sempre há um problema para juntar informações que vêm de várias fontes e com isso criou-se o conceito de Data Virtualization. Esse conceito trata de juntar todas as fontes de dados em uma base de dados virtual, criando-se um único ponto de acesso para as informações vindas de diversas fontes de dados.
O OpenShift oferece um cartucho chamado Data Virtualization que consiste em criar uma instância de Teiid (mais informações sobre o projeto Teiid em http://teiid.jboss.org/) e assim poder criar um ponto único de acesso a diversas fontes. A integração pode ser feita via IDE Eclipse utilizando os plugins do JBoss Tools ou utilizando o JBoss Developer Studio.
Eclipse executando uma instância de Teiid rodando no OpenShift |
Você pode encontrar mais informações sobre o Fuse em https://www.openshift.com/developers/jboss-fuse/getting-started e sobre o Teiid/Data Virtualization Platform em https://www.openshift.com/developers/jboss-data-virtualization/getting-started
BPMaaS: Processos de negócio como um Serviço
Apesar de o desenvolvimento de código para criar aplicações é a forma mais clássica da computação de se facilitar processos das áreas da empresa. No entanto, certas áreas possuem regras de negócio mutáveis que inviabiliza o desenvolvimento de código dado o esforço de se alterar as regras a qualquer momento. Para isso, existe o conceito de Business Rules Management (Gerenciamento de Regras de Negócio) que permite que o analista de neǵocios possa criar e alterar as regras de negócio de forma mais prática e rápida através de uma linguagem simples e sem necessitar de alterações no código da aplicação.O projeto Drools (http://drools.jboss.org/) permite esse tipo de lógica e vai além: é possível também criar fluxos de negócio para serem integrados a aplicações e com isso criar um ambiente de BRM para regras de negócios mutáveis.
Criando um Fluxo de Negócio com o Cartucho BPMS |
O OpenShift utiliza o Drools através do cartucho JBoss BPM Suite, que também adiciona BAMs (Business Activity Monitoring ou Monitoramento de Atividade de Negócios) para que sejam gerados dashboards que monitora como estão os dados gerenciais que permite tomar decisões mais certeiras a respeito do negócio.
Tela de BAM do JBoss BPMS no OpenShift |
Mais informações sobre o JBoss BPM Suite pode ser encontrada em https://www.openshift.com/developers/jboss-bpms/getting-started
mPaaS: Plataforma de Mobilidade como um Serviço
Uma das tecnologias que têm sido cada vez mais adotada é a Mobilidade, ou seja, aplicações corporativas criadas para Smartphones e/ou Tablets. Um dos desafios dessa tecnologia é criar aplicações que rodam sem dificuldade em diversas plataformas Mobile, o que dificulta o desenvolvimento. Para isso, há um conceito chamado de Mobile Web onde é possível criar aplicações que podem rodar em qualquer plataforma, uma vez que a aplicação é desenvolvida utilizando as tecnologias W3C (HTML, CSS e Javascript). Mas e quando é necessário utilizar conceitos nativos do SO Mobile? Aí é necessário desenvolver a aplicação sob o conceito de aplicações Híbridas em que a partir do código cria um pacote nativo para determinada plataforma Mobile.Ok, mas e se eu precisar fazer algum tipo de comunicação Push nas minhas aplicações Mobile? O OpenShift possui o cartucho Aerogear Push Server que gerencia todos os provedores de Push para assim criar um ponto único de comunicação entre as diversas implementações de Push como o Google Cloud Messaging, Apple Push Network, etc.
Aerogear Push Server no Openshift |
Para maiores informações sobre o Aerogear, veja em https://www.openshift.com/quickstarts/aerogear-push-0x. O Aerogear Push Server é parte do projeto Aerogear, que pode ser encontrado em http://aerogear.org/.
Nenhum comentário:
Postar um comentário