49
Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

O que ganhamos com Java e Cloud Computing?

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: O que ganhamos com Java e Cloud Computing?

1 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Page 2: O que ganhamos com Java e Cloud Computing?

2 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Bruno Borges

● Desenvolvedor há 12 anos

● Florianópolis, Rio de Janeiro e São Paulo

● Conferências– JavaOne, JustJava, ApacheCon, The Developers Conference,

Profissão Java

● Evangelista Java EE – Oracle do Brasil

@brunoborges

Page 3: O que ganhamos com Java e Cloud Computing?
Page 4: O que ganhamos com Java e Cloud Computing?

5 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 7Java SE 7 e Java EE 6

Page 5: O que ganhamos com Java e Cloud Computing?

6 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 7GlassFish

Page 6: O que ganhamos com Java e Cloud Computing?

7 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 7NetBeans

Page 7: O que ganhamos com Java e Cloud Computing?

8 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 7MySQL Server

Page 8: O que ganhamos com Java e Cloud Computing?

9 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 7Java Embedded

Page 9: O que ganhamos com Java e Cloud Computing?

10 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 7Open Source Java FX

Page 10: O que ganhamos com Java e Cloud Computing?

Java EE 7Oracle moved Java forward!

Page 11: O que ganhamos com Java e Cloud Computing?

Java EE 7JavaOne Brasil

Brasil

Page 12: O que ganhamos com Java e Cloud Computing?

bit.ly/JavaMagazine

Page 13: O que ganhamos com Java e Cloud Computing?

14 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

O que ganhamos com Java e Cloud Computing?

Bruno BorgesPrincipal Product Manager – Cloud Application FoundationJava EE, GlassFish, WebLogic, Coherence

Page 14: O que ganhamos com Java e Cloud Computing?

15 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE

● Plataforma aberta

● Implementações Open Source

● Dirigida pelo JCP

Page 15: O que ganhamos com Java e Cloud Computing?

16 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 6

● Maior produtividade

● Menor complexidade

Page 16: O que ganhamos com Java e Cloud Computing?

17 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Mais produtividade, menos código: Java EE 6

* Baseado em um aplicativo criado no JavaOne usando POJO / JPA / REST

• Menos XML, Menos Código• Java Server Faces 2.0• Java Servlets 3.0• Java Persistence 2.0• Enterprise Java Beans 3.1

& Interceptors 1.1

25%Menos Classes

Java*

50%Menos Linhas

de Código*

80%Menos Linhas

de XML*

• Simplificação, Produtividade• Managed Beans 1.0• Bean Validation 1.0• JAX-WS 2.2

• Modernização• Context & Dependency

Injection 1.0• Bean Validation 1.0• Java API for RESTful

Web Services

Page 17: O que ganhamos com Java e Cloud Computing?

18 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE – Plataforma ideal para Cloud

Page 18: O que ganhamos com Java e Cloud Computing?

19 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Top 10 features do Java EE 6

● EJB dentro do WAR

● Extensões p/ Servlet e CDI

● web.xml é opcional

● Dependency Injection

● Eventos no CDI

● Facelets é padrão JSF

● API do EJBContainer

● @Schedule

● EJB sem Interfaces

● Profile Web

Page 19: O que ganhamos com Java e Cloud Computing?

Java EE 7Java EE como PaaS

Page 20: O que ganhamos com Java e Cloud Computing?

21 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Ofertas de Cloud atuais

IaaS

IaaS

PaaS

PaaS

SaaSSaaS

Page 21: O que ganhamos com Java e Cloud Computing?

22 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Areas de Foco do Java EE 7 e 8

● Provisionamento

● Elasticidade

● EscalabilidadeAutônoma

● Multi-Tenancy

● Jigsaw

● Interop com OSGi

● Suportar profiles e apps modulares

● JSON

● WebSockets

● APIs

● DOM

● Offline

Page 22: O que ganhamos com Java e Cloud Computing?

23 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Serviços em um PaaS Java EE

● Aplicações na Nuvem consumem serviços

– Persistência, mensageria, email, caching...

● Metadados facilitam o consumo de serviços ao deployar na Nuvem

@DataSourceDefinition( name=“java:app/jdbc/myDB”, className=“oracle.jdbc.pool.OracleDataSource”, isolationLevel=TRANSACTION_REPEATABLE_READ, initialPoolSize=5)

Page 23: O que ganhamos com Java e Cloud Computing?

24 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Elasticidade

● Níveis de serviços

● Número mínimo e máximo de instâncias

● Futuro

– Auto-ajuste

– Capacidade sob demanda

Page 24: O que ganhamos com Java e Cloud Computing?

25 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Provisionamento

Page 25: O que ganhamos com Java e Cloud Computing?

26 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Multi-tenancy

● Suporte para instâncias separadas/isoladas da mesma aplicação, para cada tenant

– Uma instância da aplicação por tenant

– Tenants correspondem a unidades de isolamento

– Uma forma limitada de SaaS

● Mapeamento do tenant feito pelo container

● Identificador do tenant disponível para a aplicação

– Ex: java:/comp/tenantId

● Roadmap para o Java EE 8

Page 26: O que ganhamos com Java e Cloud Computing?

27 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Isto irá permitir que ...

“Uma empresa de software cria uma aplicação, instala em um provedor PaaS, e qualquer número

de tenants se registram na aplicação, fazem deploy e seus usuários acessam”

Page 27: O que ganhamos com Java e Cloud Computing?

28 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Quem oferece Java EE como PaaS?

Page 28: O que ganhamos com Java e Cloud Computing?

29 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Oracle Java Cloud Service

● Escolha #1 da Indústria

● 43% Market Share

● Suporte ao Java 7

● Java EE 6 Certified

● Suporte ao GlassFish DD

● Lightweight

Page 29: O que ganhamos com Java e Cloud Computing?

30 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Servidor de Aplicação Enterprise e Cloud ReadyImplementação de Referência do Java EE

Oracle GlassFish Server

Page 30: O que ganhamos com Java e Cloud Computing?

Java EE 7Desenvolvendo com Java EE

Page 31: O que ganhamos com Java e Cloud Computing?

33 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 7 (e 8) não é apenas sobre Cloud

● Alinhamento das especificações EJB, CDI, JSF ...– Pojo → ManagedBean → Enterprise JavaBean

– Extensão de container-managed transaction além dos EJBs

● Mais simplificação no desenvolvimento– API de Cliente JAX-RS, Bean Validation

– JMS 2.0

– Maior uso de injeção de dependência

– Maior uso de metadados para configuração e definição de serviços

● “Abandono” de funcionalidades antigas– EJB 2.x (Entity Beans BMT/CMT), JAX-RPC, API de deployment

Page 32: O que ganhamos com Java e Cloud Computing?

34 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java EE 7 – JSRs candidatas

Page 33: O que ganhamos com Java e Cloud Computing?

35 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java Persistence API 2.1

● @NamedStoredProcedureQuery,StoredProcedureQuery

● Update/delete em massa, usando Criteria

● Acesso a funções de banco de forma padronizada

Page 34: O que ganhamos com Java e Cloud Computing?

36 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Java API for RESTful Web Services 2.0

● Client-side API

● Validações

● Hypermedia

● Alinhamento com CDI

● Negociação de conteúdo Server-side

● Filtros e interceptadores

● Client-side e Server-side async requests

Page 35: O que ganhamos com Java e Cloud Computing?

37 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

JavaServer Faces 2.2

● Controle de acesso para requests Ajax (queue)

● Componente de File Upload (Non-Ajax & Ajax)

● Injection em todos os artefatos JSF – Incluindo conversores & validatores

● @FaceletsResourceResolver

● Instanciação de componentes de composição em Java

● HTML5 Friendly Markup – HTML puro

Page 36: O que ganhamos com Java e Cloud Computing?

38 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Contexts & Dependency Injection 1.1

● Modo embedded, para rodar fora do container Java EE

● Ordenação global de interceptadores e decoradores

● API para gerenciar contextos

● Disparar eventos de Servlet como eventos CDI

Page 37: O que ganhamos com Java e Cloud Computing?

39 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Enterprise JavaBean 3.2

● Especificação separada em 3 partes– Core: transações CMT em ManagedBeans, Timer não-persistente e

método Async no EJB 3 Lite

– Optional: Entity Beans, JAX-RPC Web Service endpoint

– Interceptors

● Alinhamento com JMS 2.0

Page 38: O que ganhamos com Java e Cloud Computing?

40 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Enterprise JavaBean 3.2

● Especificação separada em 3 partes– Core: transações CMT em ManagedBeans, Timer não-persistente e

método Async no EJB 3 Lite

– Optional: Entity Beans, JAX-RPC Web Service endpoint

– Interceptors

● Alinhamento com JMS 2.0

Page 39: O que ganhamos com Java e Cloud Computing?

Java EE 7JCP 2.8

Page 40: O que ganhamos com Java e Cloud Computing?

42 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Transparência

● JSR's lideradas pela Oracle são abertas– http://javaee-spec.java.net

● Arquivo da mailing-list do Expert Group é público

● Área de download pública

● Issue Tracker público

● Comprometido em finalizar a atualização para o JCP 2.8

Page 41: O que ganhamos com Java e Cloud Computing?

Java EE 7Outras linguagens

Page 42: O que ganhamos com Java e Cloud Computing?

44 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Em um PaaS Java EE, você ainda pode ...

● Utilizar outras linguagens– JRuby

– PHP

– Scala

– Clojure

– Groovy

– Jython

– Javascript

Page 43: O que ganhamos com Java e Cloud Computing?

Java EE 7Continuous Integrationand Delivery

Page 44: O que ganhamos com Java e Cloud Computing?

50 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Integração Contínua com Apache Maven

● Plugins

– Compile

– Test

– Package

– Deploy

– Administrate

Page 45: O que ganhamos com Java e Cloud Computing?

51 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Integração com Servidores de IC

Servidor de Integração ContínuaRepositório

do CódigoServidor

naNuvem

Compila & Empacota

Page 46: O que ganhamos com Java e Cloud Computing?

Java EE 7Agenda do Java EE

Page 47: O que ganhamos com Java e Cloud Computing?

53 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Agenda do Java EE

● Atualmente, em “Public Review”

● Lançamento do Java EE 7

– 29 de Abril de 2013

● Lançamento também do GlassFish 4.0

● Agenda completa em

– http://java.net/projects/javaee-spec/pages/Home

Page 48: O que ganhamos com Java e Cloud Computing?

54 Oracle Technical Workshop | WebLogic 12c & Fusion Middleware

Participe!

● Java EE 7 Expert Group Project

– http://javaee-spec.java.net

● Java EE 7 Reference Implementation

– http://glassfish.org

● The Aquarium

– http://blogs.oracle.com/theaquarium

Page 49: O que ganhamos com Java e Cloud Computing?