Dragão Azul?

Esta semana andou rolando, na lista CF-Talk, uma boa discussão sobre o “irmão gêmeo” do ColdFusion Server: o BlueDragon Server. Como assim “irmão gêmeo”??! 🙂

Sim… para aqueles que não conhecem o BlueDragon: ele é um servidor de aplicações web que interpreta código CFML tal como o bom e velho ColdFusion Server. O produto já existe há algum tempo, porém nunca vi ninguém falar sobre ele aqui no Brasil. Este produto foi inclusive citado num excelente artigo da WebMonkey, como uma alternativa viável ao produto da Macromedia. Justamente por se falar pouco, vou fazer algumas breves observações.

A denominação de “irmão gêmeo” é inevitável. Na verdade, o BlueDragon é literalmente um interpretador CFML que roda sob um servidor J2EE (que pode vir com ele próprio, tal como no CFMX Professional e Enterprise). Você deve estar perguntando: “Ué? mas não é justamente isso que o CFMX é?”. Exatamente isso. O que faz do BlueDragon um produto bem semelhante ao CFMX. :o)

Pelo que pude perceber, o BlueDragon “stand-alone” (que não roda sob um servidor J2EE completo – mais ou menos como acontece com o CFMX, que roda sob um JRun “lite”) saiu-se muito bem no quesito performance. Fiz uma comparação (no “olhômetro”, sem testá-lo sob stress ou outros métodos mais “científicos” de benchmarking) com o CFMX Professional (“stand alone” também) e a diferença em performance é algo para se notar. O tempo para a operação: “ler o cfml -> converter para java bytecode -> interpretar no jvm -> retornar resultado” é idêntico ao das versões pré-cfmx que era interpretadoras e não “compiladoras”. O uso de CPU não chega nem nos 15-20% e a coisa toda acontece num estalo de dedos. Em operações de desenvolvimento de aplicações, o “salvar -> ver resultado -> mudar -> salvar -> ver resultado” quase não produz delay. No CFMX sofro com o tempo que o JIT leva para fazer esta operação toda…

É um belo produto, sem dúvida. Uma grande vantagem sobre o seu irmão CFMX, da Macromedia, é que com ele podemos “transportar” uma aplicação inteira feita em CFML para um servidor J2EE sem a necessidade de ter outro produto instalado. Isso é impossível no CFMX, pois temos que, de qualquer maneira, tê-lo instalado no servidor. Isso significa que podemos desenvolver uma aplicação CFML – o BlueDragon oferece uma “developer edition” gratuíta, totalmente funcional, limitada a 1 número IP (tal como o CFMX) – e transportá-la completamente (incluindo informações sobre datasources, etc) para um servidor J2EE existente, por meio de um arquivo .WAR. Só isso já faz do BlueDragon um sério concorrente ao “CFMX for J2EE”, que, como já foi dito, precisa da licença e do produto instalado.

Atualmente o BlueDragon é quase 100% compatível com a “especificação” CFML 5 (usada pelo ColdFusion Server 5) e oferece alguns recursos e tags extras. Existe um guia de compatibilidade bem completo no site do produtor (veja link abaixo). Trocando em miúdos: é possível rodar a sua aplicação feita para o Macromedia ColdFusion Server com pouquíssimas modificações. A empresa que faz o produto promete a compatibilidade com a “especificação” CFML 6 (usada pelo CFMX) em breve. Vamos ver (e torcer também).

O BlueDragon custa U$249,00 na versão “stand alone” (sem suporte à JSP) – esta seria a versão “Professional” e U$549,00, também na versão “stand alone” (com suporte à JSP) – esta seria a versão “Enterprise”… Existe ainda, obviamente, o “BlueDragon for J2EE Servers” que tem o seu preço variando de acordo com o número de processadores (começando com 1 processador, por U$2.499,00). Bem menos “salgado” que o ColdFusion da Macromedia não? :o)

Conheça mais sobre o “irmão gêmeo” do ColdFusion Server aqui.