Servidores de Aplicação: por que ainda precisamos deles?

Post on 24-May-2015

269 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Servidores de Aplicação Java EE

Transcript

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Application Servers, Por Que Ainda Precisamos Deles?

Bruno Borges Principal Product Manager Oracle Latin America Agosto, 2014

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

• Bruno Borges

– Principal Product Manager, Java Evangelist – Oracle Latin America

– @brunoborges – bruno.borges@oracle.com

Speaker

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

• Aplicações em multicamadas

• Clients

– Browsers, Mobile Apps, REST clients, Web Services, Remote EJB Clients (RMI-IIOP)

• Web Tier

– JSP/Servlet, JSF, REST services, Web Services, WebSockets

• Business Tier – EJBs, JMS, JPA, JCA

Arquitetura Java EE Comum – Monolítica

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

”If you can't build a Monolith, what makes you think Microservices are the answer? ”

– Simon Brown, Coding the Architecture

bit.ly/ballofmud

µServices

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Java Server-side Containers

ndertow

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Frameworks e Plataformas

Dropwizard

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Management, Monitoring, Config, Container Tools

Shipyard

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Microservices

• Sem dúvida um modelo de arquitetura interessante, “moderno”

• Mas não é novo (SOA)

• Requer alto nível de expertise

– DevOps, Infraestrutura, Deployment, ALM, etc

• Requer integrar diferentes tecnologias e produtos

– Administração e Monitoramento

– Configurações

– Diagnóstico

• Lidar com múltiplos fabricantes

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Source: bit.ly/archcodestyle

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 15

Java Enterprise Edition Platform

Java EE 7

DEVELOPER PRODUCTIVITY

Java EE 7

– Batch

– Concurrency

– Simplified JMS

– More annotated POJOs

– Less boilerplate code

– Cohesive integrated platform – WebSockets

– JSON

– Servlet 3.1 NIO

– REST

MEETING ENTERPRISE DEMANDS

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Application Servers

• Open Source

– GlassFish

– WildFly

– Apache TomEE

• Comerciais

– Oracle WebLogic Server

– IBM WebSphere Application Server

– JBoss

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Application Servers com Dynamic Clustering

Oracle Confidential – Internal/Restricted/Highly Restricted 17

• Aplicações distribuídas escaláveis

• Processamento distribuído JMS

• Administração Centralizada

Configuração Simplificada de Clusters Dynamic Clusters

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Whole Server Migration

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

JMS Replicated Store em Memória

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

JDBC Statement Cache Adapting on Memory Pressure

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Data Source Connection Shrinking on Memory Pressure

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Do que os App Servers já são capazes?

• Monitoramento de N apps

• Gerenciamento e Coordenação de Recursos

– DB Connections, JMS, Security Providers, Connectors com Legados, Transaction Management (XA)

• ClassLoader Isolation não é mais um problema em app servers

• Clustering, Load Balancing, Fail-over

• Features de Segurança

• Disaster Recovery

• Online Upgrade/Patching

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Arquitetura Java EE Distribuida

• Diversas aplicações

• Modelo SOA

– Serviços REST

– Serviços SOAP

• EJBs remotos distribuidos

• Camada Web desacoplada – Talvez até em outra linguagem

App1

App3

App2

Front-end Web

Serviços REST WebServices SOAP

Back-end

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

O que falta para os app servers?

• Gerenciar recursos de SO para completo isolamento das aplicações

App Server

Memória CPU Network IO

App1 App2 App3

Virtualization

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

“If you watch the software industry backwards, it starts with kids flailing; ends with old guys solving impossible problems by thinking hard.”

– Gary Bernhardt twitter.com/garybernhardt/status/152455259543961600

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

top related