Olá pessoal, tudo certo?
A partir dos últimos emails, tive uma grande discussão com o amigo Rogério Cordeiro (aqui do MSDN) sobre o uso de WCF, WF e outros frameworks na evolução de arquiteturas WinDNA usadas em algumas aplicações típicas. Cenários como Internet Banking, Interfaces de Corretoras, Acompanhamento de Pedidos ou Portais de Comércio Eletrônico são bons exemplos. Ao final da discussão, começamos a traçar um mapa sobre alternativas de arquiteturas e tecnologias para a evolução desse tipo de plataforma.
Se relembrarmos os tempos de Windows DNA - Windows Distributed interNet Applications Architecture (anunciado em setembro de 1999, você se lembra?), a camada de apresentação era implementada em páginas ASP/HTML, enquanto a lógica de negócio era implementada através de componentes COM+, hosteados no COM+ 1.0 do Windows NT 4.0 ou Windows 2000 Server. O controle e a coordenação de transações eram feitos através do MSDTC - Microsoft Distributed Transaction Coordinator e a camada de dados era isolada em servidores dedicados, acessados pelos componentes de negócio. E quando havia transações disparadas na plataforma alta (mainframes), o uso de COMTI e COMAREA era muito comum (saudades de uma TLB ? :)
A figura abaixo representa bem o famoso WinDNA:
Outro ponto importante nessa discussão era o modelo de threads implementado pelo Visual Basic 6.0, grande gerador de componentes COM na época. Tipicamente, VB6 gera componentes STA - Single Thread Apartment, o que provoca o enfileiramente de mensagens devido sua limitação no tratamento de múltiplas chamadas para a mesma thread. O modelo que liberava esse enfileiramento é conhecido como MTA - Multi Thread Apartment, que é obtido em componentes COM implementados em C++ ou agora em .NET.
Um bom artigo sobre o WinDNA está no link abaixo:
Windows DNA Architecture Design: A Scalable, Highly Available Business Object Architecture Ref.: http://www.microsoft.com/technet/archive/ittasks/deploy/depovg/windna.mspx?mfr=true
E sobre as questões de STA e MTA, veja ainda no artigo:
Understanding COM Apartments Ref.: http://www.codeguru.com/cpp/com-tech/activex/apts/article.php/c5529
De fato, muitas empresas implementaram os cenários acima em WinDNA e atualmente questionam quais são as alternativas rumo aos novos frameworks da Microsoft.
Mas sobre quais frameworks e tecnologias estamos falando? Vejamos nossas opções:
E ainda outras tecnologias como (misturei assuntos de propósito):
Assim, nossa discussão sobre evolução de uma arquitetura WinDNA típica torna-se um grande desafio. Nossas opções de tecnologias tornaram-se mais complexas e diversas nesses útimos 10 anos.
Mas para atacar esse desafio, vamos propor 2 etapas muito básicas. Como primeiro passo, precisamos de algumas questões para um processo de preparação e entendimento de nosso cenário atual. Vejamos:
De fato, as questões acima irão nos ajudar para um maior entendimento sobre a arquitetura atual. Com certeza você irá adicionar novas questões, específicas para sua empresa.
O passo seguinte será mapear os recursos e benefícios de cada um dos novos frameworks Pós-WinDNA, afim de começar o mapeamento de tecnologias que irão oferecer a melhor solução para sua arquitetura. Um exemplo de aplicação seria esse:
Ao lado, uma aplicação Web (asp) com componentes COM+ 1.0 e acesso ao banco de dados e mainframe (usando HIS), uma foto tirada durante nossa discussão com o Rogério :-)
Como seria a evolução desse tipo de cenário?
Veremos algumas idéias em breve...
Para finalizar, não devemos esperar soluções mágicas ou soluções únicas para todos os cenários. Cada caso é um caso, sempre!
Esse texto foi só para iniciar a discussão. Vamos continuar o tema em posts futuros, por isso, comentários serão benvindos...
Por enquanto é só! Até o próximo post :)
Waldemir.
PingBack from http://microsoftnews.askpcdoc.com/?p=1688
Muito bom o artigo, só uma pequena correção.
O Windows NT 4.0 não tinha COM+ e sim MTS, que era instalado à partir do Windows NT 4.0 Option Pack, lembra? Hehehehe...
Olá Godinho, tudo certo?
Obrigado pelo comentário e pela correção!!!
Sem dúvida, era MTS no NT 4.0! Quantas vezes não instalamos Option Packs montando servidores... hah!
Correção registrada!
[]s
Olá pessoal, tudo certo? Em posts anteriores, falamos um pouco sobre a evolução da arquitetua WinDNA