Alternativa JBoss sobre soluções proprietárias de Middleware

Buscando soluções corporativas em Middleware, para Servidores de Aplicações, Arquiteturas de Serviços - SOA , já pensou em economizar drasticamente seu projeto? Com certeza JBoss pode ser sua alternativa.

Subscrição X Licenças + Suporte

Em um bom tempo deste blog no ar, e a um bom tempo na Red Hat, eu nunca havia escrito nada a respeito deste assunto, mas considero o momento propício, visto que vejo que a demanda e interesse por soluções JBoss vêm crescendo bastante, principalmente com a tal falada “crise”.

Vamos definir de uma forma simplificada, o que seria subscrição: Subscrição é a tradução ao pédaletra de “Subscription“, que no caso de projetos JBoss, a Red Hat comercializa a “assinatura” de suporte com SLA, garantia de atualizações, patches corretivos, atendimento 24X7, chamados ilimitados de suporte, além de todo o amparo legal de relacionamento de empresa com empresas. Isto permite com que empresas de todos os portes, possam ver qualidade nas soluções opensource.

O trabalho que a Red Hat tem consiste em algumas atividades, como por exemplo, empregar Committers e mantenedores dos projetos em questão, como Application Server e seus inúmeros submódulos, a exemplo destes desenvoldedores, temos 2 no Brasil: Flavia Rainone e Stephan Guillen, que trabalham no JBoss AOP e JBoss Security respectivamente, fora as contribuições de outros funcionários da companhia, mesmo sem possuirem a incubência formal de Core-Developers. Isto, permite com que o Brasil, exporte tecnologia, e não só utilize tecnologias de fora, além de transmitir para nossos clientes a segurança de até personalizar o produto mediante alguma necessidade em especial.

Mas e o custo da Subscrição?

Vamos usar uma analogia que ouvi de um grande amigo meu na Red Hat, o Solution Architect para RHEL Cleber Rosa: “Água é de graça certo? Você tem inúmeros acessos para consegui-la, desde a torneira da sua casa, uma garrafa de uma marca XPTO ou mesmo tirar um copo do Rio Tietê em São Paulo, certo? Pergunta: Qual destas opções lhe dá maior confiabilidade e certeza que você não terá algum dano a sua saúde? E mesmo assim se tiver, quais meios você pode buscar para reclamar?

Opensource é similar, pois você pode ir simplesmente em qualquer lugar e buscar um software aberto, mas nem sempre as garantias vão estar disponíveis, ou pior, imagine que você vai executar um software da sua empresa de missão crítica, e toda sua base para suporte está centralizada em forums abertos, sem nenhuma garantia de tempo de resposta, ou qualquer coisa do tipo? Esta é uma era em opensource que chamamos de “Opensource Romantico” ou “Opensource Artesanal”.

Mas não basta fazer como algumas empresas, que pegam “a água do Tietê e colocam numa garrafa de água mineral da Nestlé”, ou seja, aquelas empresas que pegam os projetos opensource, puxam o ar, inflam o pulmão e apenas assopram a poeira para ele ter uma cara de “Comercializável”, isto é no mínimo porco, amador, oportunista e ludibriador! E existem um monte de emrpresas com estas características. Uma empresa digna no mínimo investe nos projetos que ela vende suporte;  como? Contribuindo efetivamente dentro do roadmap, das evoluções, antevendo surpresas para seus clientes.

Entretanto, existem várias empresas que sim, contribuem efetivamente com a evolução dos projetos opensource, e a estas de fato, temos que tirar o chapéu, conheço algumas, mas vou preferir não informá-las aqui, já que eu não quero proteger nenhuma ou esquecer outra, neste caso, eu sei que a Red Hat, o que ela comercializa, ela investe, e não é pouco, pois manter o time de desenvolvimento só de JBoss, é de fato um investimento nada modesto para qualquer coporação no mundo.

Bom, se empresas como Red Hat investem, elas tem que desenhar um modelo de negócio que alimente tais iniciativas, portanto, para que haja uma relação formal, com amparo legal, fornecimento de suporte e tudo mais que foi explicado, isto significa um custo/investimento dos clientes destes produtos alternativos, muito embora, este investimento é irrisório comparado a aquisição de licenças+suporte anual, e estarei explicando isto agora…

O que é comprar Licenças + Suporte

Quando você compra uma licença de um produto X, você adquire o direito de uso daquele software X na versão 6.5 por exemplo, sim eu falei direito de uso, ou seja, você pode usar para o número de servidores ou CPUS ou cores que você contratou, entretanto, se você não sabe usar o produto, ou se é uma tecnologia nova para sua empresa, o problema é exclusivamente seu! O Eduardo pode comprar um livro em Mandarim, “mesmo que ele ainda esteja nas aulinhas de Inglês”, ou seja, o valor de ter adquirido o software é ZERO.

Então você terá mais um custo em treinar sua equipe, e ai, como você adquiriu uma solução proprietária, com certeza o número de opções de treinamentos será escassa, pois os profissionais treinados nestas tecnologias, estão em outras empresas, e ai você pode até tentar trazê-los pra sua, proporcinando uma geração de gastos, dando um super banho de desanimo moral no seu time atual, ou ainda pior, ter que trocar pessoas de sua confiança por novas pessoas, é isso que você chama de gestão do futuro? É isso que você espera de uma solução SOA, este caos instalado?

Além disto, você deverá pagar um suporte em média de 16% a 22% do custo de aquisição da licença, ou seja, se você já gastou para não resolver nada, você ainda será obrigado a pagar este valor anual para poder ter algum suporte, mesmo que ele seja enviado via India ou Paquistão, e que você tenha que escalar seu tickets por 492 camadas de atendimento, até que alguém entenda que seu Bean é um simples Bean e não um “bin” de executable binary!

E ai meu amigo, não só adquirindo todo este problema, você ainda acarreta a culpa de saber que 4 meses depois a versão 7.0 do seu produto X 6.5 foi lançada! E ai, você quer ela? Então pague! Pague um upgrade que poderá ser mais ou menos 40 a 80% do que você pagou de licença! A única percepção que eu posso ter é que alguns players proprietários, pensam que são os “Mickeys”, já nós, nos resta ser os “patetas”.

Subscrições como Alternativa! Sim há esperanças !

Recentemente, criamos um novo TCO-Calculator para plataforma SOA,  para mostrar para alguns clientes, como eles podem investir melhor seus budgets em tempos de crise, eis então que pegamos  valores todos em dólares e  de um player especialmente, definitivamente, ordinariamente proprietário… Para comparar com os valores de subscrição de um player opensource, no caso: Red Hat com JBoss. Nós pegamos o JBoss SOA Platform e a solução proprietária, e veja a o resultado(*):

Comparação entre Licenças X Subscrição e Suporte X Subscrição

Comparação entre Licenças X Subscrição e Suporte X Subscrição

(*) - Valores públicos consultados, eles podem ter variações sem nenhuma garantia de atualização neste blog, recomendo que consulte Red Hat para informações de valores em reais, que possuem oscilações cambiais de acordo com o dólar e impostos nacionais.

Capturamos então os custos para 4 CPUs, veja que no gráfica à sua esquerda, temos a diferença de aquisição de licenças X o Valor da Subscrição, no caso, de licença este fornecedor cobra algo em torno de US$520.000, enquanto o custo de subscrição JBoss para SOA Platform fica em torno de US$ 28.000(*). Com a subscrição, durante todo o período de vigência, você tem acesso a todas as novas versões do SOA Platform, patches corretivos, inovações, chamados ilimitados etc.

Quando pegamos o gráfico da direita, podemos ver os 22% de US$520k, que é o suporte, temos um valor que é também infinitamente maior que a subscrição, que traz no pacote todos os benefícios que já falamos acima. A diferença do suporte Red Hat é que o nível de camadas para você falar com os Engenheiros dos Produtos, Core-Developers, é muito menor que qualquer outro player, além do fato, da Red Hat disponibilizar um 0800 para todo o Brasil, para que o atendimento seja em português, fazendo com que os clientes tenham acesso ao time de suporte JBoss, fazendo com que os problemas sejam resolvidos de acordo com o SLA estabelecidos.

O que eu faço com a Economia de Custos no meu Budget?

Invista em serviços profissionais, educação, cultura, uma área de jogos com playstation, wii, alugue uma quadra pro futebol, compre frutas para servir no final da tarde, faça um convênio com uma academia, o que seja, mas traga algo que agregue valor para sua empresa, faça seus colabores mais felizes, mais produtivos, e faça sua empresa olhar TI como um departamento estratégico, e não como um fardo pesado ou mal necessário que toda a empresa deve possuir.

Wii in Action

Wii in Action

O mundo inteiro esta passando por mudanças, novas economias surgindo, o mundo convergindo em “Novos Ideais”, empresas que já foram as do sonho, hoje passam por apuros financeiros, e grande parte, devido a decisões retrogradas, erradas ou mesmo sem a coragem necessária combinada ao arrojo para fazer de uma forma inovadora transformar a proposta de ontem no sucesso de hoje.

Finalmente, eu espero que este texto possa fazer você refletir, e como uma empresa opensource, a Red Hat e seu grupo de parceiros certificados, estão prontos para lhe ajudar a alcançar o sucesso esperado com uma solução que agregue valor, e não meramente um monte de licenças que são menos úteis do que a cadeira e mesa que você está sentando agora.

Pense nisso…

Contato Red Hat no Brasil para soluções, treinamentos e serviços: http://www.br.redhat.com/contact/

Um forte abraço

Edgar A Silva
Middleware Technology Lead, Brazil

Saudações ao JBoss ESB 4.5

Hoje veio o anúncio do novo release do JBoss ESB 4.5! Entre várias melhorias, correções, contribuições, um novo console, que cada vez mais posiciona o JBoss ESB como um grande player no mercado acirrado dos ESBs.

JBoss ESB 4.5 - Novo Console

JBoss ESB 4.5 - Novo Console

Um ESB com modelo “poliglota” para Orquestração

Orquestração é uma palavra bonita, que pode até gerar medo, afinal de contas, tente dizê-la 8 vezes bêbado, ou com 2 bolachas cream-cracker na boca! Ela é uma palavra que no mínimo assusta, pois bem, para ajudar a vencer esse mito/trauma, decidi construir um módulo no qual, qualquer desenvolvedor de linguagens dinâmicas como JavaScript, Groovy, Perl, Python ou a tão falada Ruby, possam adicionar novos “ouvintes” e “despacho” para os serviços.

Neste caso, busquei a fundamentação no padrão de integração: Message Bridge, que basicamente fala na propagação de uma mensagem, no caso, um evento num protocolo, para outros meios de processamento via uma camada de canais (gateways).

EIP - Message Bridge

EIP - Message Bridge

Desta forma, implementei um Listener baseado em Groovy, adicionando ao JBoss ESB, todas as capacidades do Apache Camel, que é um super projeto em termos de implementação dos Enterprise Integration Patterns, em resumo, ele traz a implementação de inúmeros protocolos de evento, como: UDP, TCP, SQL/DataSet, Hibernate, IRC, XMPP, HL7, FTP, POP, SMTP etc.

Então, baseado no listener Groovy que injeta o ApacheCamel dentro do JBoss ESB, criamos duas propriedades: scripts-folder e script-language, onde basicamente, a primeira serve para que qualquer desenvolvedor com acesso a ela, possa adicionar um script novo, e para facilitar questões de performance no uso do BSF(Bean Scripting Framework), solicitamos a linguagem de script de preferência.

 

Assim, como temos ações do JBoss ESB dentro do JBoss jBPM, estes scripts vão escutar ações nos protocolos do Apache Camel, e envia-las via ServiceInvoker para dentro do container ESB. Desta forma, imagine que um serviço originalmente chamado: TransformaChamadaXMLparaISO da categoria Transformadores, originalmente desenhado para responder a JMS e FileSystem, agora você quer que uma mensagem de IRC chegue até esse serviço, nesse caso, a única coisa que você terá que fazer é criar o seguinte script por exemplo em Ruby:

 


require 'java'
include_class 'org.jboss.soa.esb.integration.apache.camel.JBossEsbRoute'
route = JBossEsbRoute.new
route.from = 'irc://frenode.com#rommtest'
route.to = 'irc://freenode.com#anotherroom'
route.serviceCategory= 'Transformadores'
route.serviceName = 'TransformaChamadaXMLparaISO'
return route

 

A mesma coisa será possível de ser feita usado: JavaScript, Python, Java, Perl etc.

Aguardem próximos posts, eventos, demontrações desta funcionalidade, e apreciem o novo JBoss ESB 4.5

Preguiça com XSD2Java: JAXBWorkshop

Pode parecer preguiça, eu considero “falta de tempo” para ir criar scripts ant ou maven, ou o que seja, então preferi usar o JAXBWorkshop(https://jaxb-workshop.dev.java.net/), que com base num XSD(Schema), gera todas as classes para operar databinding usando Jaxb. Fica a dica aqui pra mim e pra você se um dia precisar disto também. Esta é uma aplicação JavaWebStart, sendo assim, super simples de utilizar, “a la bill tools”:

JAXBWorkshop - JavaWebStart

JAXBWorkshop - JavaWebStart