Servidores de Aplicação ainda são necessários?

A resposta certa é cada caso é um caso mas, a edição atual do "Technology Radar" (by ThoughWorks.com) traz uma recomendação de "Hold", ou seja, "espere um pouco" e pense antes de tomar uma decisão sobre Application Servers no seu projeto.

Reproduzo o conteúdo original que você pode encontrar em https://www.thoughtworks.com/radar/platforms/application-servers. Eu destaquei algumas frases ("negrito").

Application Servers

HOLD?

The rise of containers, phoenix servers and continuous delivery has seen a move away from the usual approach to deploying web applications. Traditionally we have built an artifact and then installed that artifact into an application server. The result was long feedback loops for changes, increased build times and the not insignificant overhead of managing these application servers in production. Many of them are a pain to automate too. Most teams we work with favor bundling an embedded http server within your web application. There are plenty of options available: Jetty, SimpleWeb, Webbit and Owin Self-Host amongst others. Easier automation, easier deployment and a reduction in the amount of infrastructure you have to manage lead us to recommend embedded servers over application servers for future projects.

Exibições: 568

Comentar

Você precisa ser um membro de PanGea para adicionar comentários!

Entrar em PanGea

Comentário de marcelo daniel silva sales em 12 abril 2016 às 11:04

Bem falado Lobo. Vou relatar aqui uma experiência que tive com a ThoughtWorks no que diz respeito a servidores de aplicação. Trabalhava em uma empresa onde as apps eram desenvolvidas em Java e baseadas no Spring. Tradicionalmente estas aplicações eram implantadas num tomcat. Ocorre que o sistema cresceu e os clientes também. Por razões estruturais das apps tinhamos um número máximo de usuários atendidos por cada tomcat de aproximadamente 100 (simultâneos). Isso não parecia uma problema enquanto tinhamos clientes com 100, 200 ou 500 usuários no máximo. A partir do momento em que começamos a distribuir a app para um uso de aproximadamente 8 ou 12 mil usuários a coisa mudou. Lembro que na época buscamos um estudo de servidores de aplicação e analisamos soluções como IBM, Oracle e JBoss. Acreditem, por questões de carga e redundância chegamos a ter um total de 172 tomcats num cliente (Não perguntem... :-( ). Apresentamos um estudo de clusterização com servidores de app que criam virtual servers e apresentaram poder de tolerância maior que o servlet container tomcat. Contratamos a consultoria da ThoughtWorks e apresentamos tudo isso. O parecer deles foi de que era mais viável permanecer com servlet container que adotar servidores de aplicação. Perplexo eu questionei inúmeras vezes a razão de não adotar um servidor de aplicação e após várias esquivas da resposta eles acabaram respondendo com um: "Servidor de aplicação é muito complicado de mexer". Depois desta, passei a ter muita, muita, muita ressalva com tudo que vem da ThoughtWorks. O Lobo "cantou bem a pedra", eles são vendedores, especialistas em vender. E digo mais, a ThoughtWorks é bem experiente em desenvolver e entregar produtos mas sua experiência em manter não está a altura de sua capacidade de treinamento e desenvolvimento. Quem fica com a bomba na mão é a equipe que vai manter o produto em produção, reiniciar servidores, monitorar e tudo o mais.

Grandes empresas do ramo de middleware já embarcaram no mundo microservices e não vejo onde esta complexidade mencionada por eles pode existir com servidores de app já configurados e com recursos disponíveis de forma gerenciada.

Enfim, não esqueçamos que no mundo da negociação, quem desdenha quer comprar.

Comentário de Leonardo Santos em 12 abril 2016 às 10:14

Como minha experiencia é com arquitetura de ambiente Java. Lembro que profissionais de desenvolvimento quando trazem para si responsabilidades que eram executadas por outros profissionais terão que abrir suas respectivas para outras necessidades. Não estou recomendando a manutenção do velho modelo. Só mais atenção.

Resalto dois pontos:

Crie um padrão de versão para todos os desenvolvimentos.

E atenção com quesitos como governança e segurança. http://www.securityweek.com/critical-vulnerability-found-jetty-web-...

Comentário de Adriano Tavares em 11 abril 2016 às 13:11

No contexto de um estilo arquitetural Microservices, os servidores de aplicação "peso-pesado" perdem força e os conteiners web mais leves ganham força. Nesse sentido eu concordo com esse hold da TW. Mas o Kiko colocou muito bem: o radar carrega um pouco no "sal". :)

Comentário de Henrique Lobo Weissmann em 7 abril 2016 às 14:57

Levando em consideração que é uma empresa que tem vendido a ideia de microserviços de forma bem massiva, nada mais natural que tentar colocar este tipo de coisa em seu "radar".

Aliás, este radar sempre tem de ser visto com uma forte pitada de sal: ele diz respeito à experiência da ThoughtWorks com seus clientes, e não a realidade do mercado em si.

Badge

Carregando...

© 2017   Criado por Adriano Tavares.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço