aplicaciones empresariales sobre plataformas j2ee...

of 49 /49
Aplicaciones Empresariales sobre Plataformas J2EE Open Source Jorge Arias ( [email protected]) Senior Technical Consultant Novell Inc ( Andean Region)

Author: vodung

Post on 14-Oct-2018

220 views

Category:

Documents


0 download

Embed Size (px)

TRANSCRIPT

  • Aplicaciones Empresariales sobre Plataformas J2EE Open Source

    Jorge Arias ( [email protected])Senior Technical ConsultantNovell Inc ( Andean Region)

  • October 7, 2004 Novell Inc.2

    AgendaAgenda

    Motivacin y Contexto

    Implementacin J2EE: Jboss AS

    1

    3

    4

    Agenda

    Conclusiones5

    Nivel de madurez de JBoss

    Q&A6

    Caractersticas de un aplicacin empresarial2

  • October 7, 2004 Novell Inc.3

    Sistema Operacional

    Office Suite

    Web Browser

    GroupwareRuntime MS

    Viewers

    Escritorio de trabajo

    Aplicaciones de Negocio, Clientes a aplicaciones

    Runtime JAVA

    Abstraccin de realidades

    Categorizacin del mundo del desktop

    Para cuales capas de funcionalidaddebera pagar por un producto comercial ?

  • October 7, 2004 Novell Inc.4

    Sistema Operacional ( Enterprise Release)

    Base dedatos

    ( RDBMS)

    Servidor de Aplicaciones

    J2EEDirectorio

    de Servicios

    Runtime MS

    Runtimes

    Consolas de operacin y administracin

    Aplicaciones de negocio, CRM, ERP

    Runtime JAVA

    Abstraccin de realidades

    Categorizacin del mundo del datacenter

    Para cuales capas de funcionalidaddebera pagar por un producto comercial ?

  • October 7, 2004 Novell Inc.5

    AgendaAgenda

    Motivacin

    Implementacin J2EE: Jboss AS

    1

    3

    4

    Agenda

    Conclusiones5

    Nivel de madurez de JBoss

    Q&A6

    Caractersticas de un aplicacin empresarial2

  • October 7, 2004 Novell Inc.6

    Prototipo de Aplicacin Empresarial

    Cliente

    SAN

    AppServer

    Lgica Negocio (componentes)

    Datos

    Lgica Presentacin

    Datos

    WebServer

    DBServer

    CRM ( Siebel )

    ERP ( SAP)

    AppServer

    Lgica Negocio (componentes)

    Empresas Externas

    Cliente

    HTTP, SOAP, WML, XML

    RMI, CORBA, SOAP

    Balanceo de CargaWebservices

    LDAP ServerAutenticacin Autorizacin

    Integracin

    Replicacion & Clustering

    Transacciones Distribuidas

    Escalable a cuntos usuarios ? Tiempos de respuesta bajos ? Robustez ?

  • October 7, 2004 Novell Inc.7

    Abstraccin de sistemas va webservices

    Composicin de procesos de negocio

    Sistemas y plataformas consumiendo procesos de negocio

    Aplicaciones Empresariales bajo un enfoque SOA (Services Oriented Architecture)

  • October 7, 2004 Novell Inc.8

    Aplicaciones Empresariales bajo un enfoque SOA

    Procesos de negocio Integrados

    Soluciones de negocio

    Servicios estandarizados

    Datos Aplicaciones

  • October 7, 2004 Novell Inc.9

    Evolucin de paradigmas de para aplicaciones empresariales

    Fuente: Gartner Group

    Objetos

    Componentes

    Servicios

    Servicios WebSOAP

    Protocolo de comunicacin:

    Alcance

    Ambientes empresarialesde gran escala

    Integracin B2B

    MOM

    ORB

    Pequeas empresasAplicaciones integradas

    Aplicaciones distribuidas

    Aplicacin

    Fuerte DbilAcoplamiento

    Paradigma de desarrollo: OOD CBD SODA SODA

  • October 7, 2004 Novell Inc.10

    Arquitecturas de software para aplicaciones corporativas

    Manejo Transaccional Seguridad Clustering

    Integracin Replicacin Persistencia

    Plataforma de ComponentesDistribuidos

    Capa

    Pr

    esen

    taci

    n

    Capa

    Se

    rvic

    ios

    Del

    neg

    ocio

    Capa

    Dat

    os y

    Pe

    rsis

    tenc

    ia

    Capa

    In

    tegr

    aci

    n

    AplicacinCorporativaMulti-capas

    Servidor de Aplicaciones

  • October 7, 2004 Novell Inc.11

    Caracteristicas externas de una aplicacin empresarial

    Guas de arquitectura, patrones de diseo

    Herramientas de

    productividad

    Administracin y depuracin remota

    Servicios Profesionales y soporte

    Entrenamiento

    Software

    Aplicacin Empresarial

  • October 7, 2004 Novell Inc.12

    AgendaAgenda

    Motivacin

    Implementacin J2EE: Jboss AS

    1

    3

    4

    Agenda

    Conclusiones5

    Nivel de madurez de JBoss

    Q&A6

    Caractersticas de una aplicacin empresarial2

  • Datos Generales JBoss

  • October 7, 2004 Novell Inc.14

    Qu es JBoss AS?

    Implementacin J2EE Open Source

    Basado en modelo de licencia GLP

    Estructurado alrededor de un kernel JMX

    Certificado para la especificacin J2EE 1.4

    JBoss SX

    Java Management Extesions (JMX)

    JBoss CX WebServer Deployment

    EJB Container JBoss TX

    JBoss AppServer

    JBoss HA Platform JBoss Portal

    JBoss SOA Impl.

  • October 7, 2004 Novell Inc.15

    Qu es Jboss Inc. ?

    JBoss Inc. federa proyectos open source bajo el modelo Professional Open Source

    JBoss Inc. emplea los desarrollares lderes de los siguientes proyectos. JBoss Application Server: J2EE based Tomcat Hibernate JBossCache/JGroups: Nukes, Workflow, rules, connectors

    JBoss inc, provee Soporte 24/7 Programa de indemnizacin. Certificaciones J2EE, JASP ( JBoss Authorized Services Partner )

  • October 7, 2004 Novell Inc.16

    JBoss en nmeros

    Una comunidad en crecimiento 40,000 kits de documentacin vendidos. 500 contribuyentes de codigo a travs del tiempo

    Un estandar en el mercado : #1 en uso de desarrollos J2EE Ms de 4 Millones de downloads en los ltimos dos aos.

    Un estandar en el mercado: #1 en OEM Un estandar para los integradores de sistemas: #2 en crecimiento. ( CRN

    Survey)

    Un estandar en el mercado: # 3 en implantaciones en produccin BZResearch survey.

    13% in 2002

    27% in 2003,

    Crecimiento ms representativo de todas las implementaciones J2EE. JDJ survey: 70% de los usuarios lo emplean en deployments rpidos

  • October 7, 2004 Novell Inc.17

    Proveer una solucin robusta y madura de J2EE

    Evolucin Corporativa de JBoss

    Small ConsultancyJBoss Group

    JBoss inc Professional Open Source

    TrainingDocumentation

    Consulting

    Developer Support

    Production Support

    9/039/021/026/0110/00

    Dev

    elop

    er

    Tac

    tical

    E

    nter

    pris

    e

    New Projects

    1/04

  • October 7, 2004 Novell Inc.18

    Implantaciones exitosas de JBoss

  • Arquitectura JBoss

  • October 7, 2004 Novell Inc.20

    Evolucin Arquitctonica de JBoss

    EJB

    Application Server

    Microkernel, JMX, J2EE APIs

    Clustering, Tomcat, Web Services

    Aspects, J2EE 1.4

    4.03.23.02.01.0

    Dev

    elop

    er

    Tac

    tical

    E

    nter

    pris

    e

    O/R Mapping Portal Byte Code Manipulation

    JBoss Version

  • October 7, 2004 Novell Inc.21

    Contenedor EJB en JBoss

    BeanLock Cache

    CMP Engine

    Tran

    sact

    ion

    Lock

    Conn

    ectio

    n

    Sync

    hron

    izatio

    n

    Secu

    rity

    Cach

    e

    Microkernel

    Data Source TransactionManager

    Sync

    hron

    izatio

    n

    Repl

    icatio

    nCl

    uste

    ring

    Sync

    hron

    izatio

    nLo

    ad b

    alanc

    ing

    Sync

    hron

    izatio

    nLo

    ad b

    alanc

    ing

    SOA

    Conn

    ecto

    rs

    EJB-Container

    SOAP

    RMI/JRMP

    RMI/IIOP

  • October 7, 2004 Novell Inc.22

    Modelo de Invocacin x Container

    Client JVM

    JMX Microkernel

    Server JVM

    EJB Container MBean

    011101010101

    RemoteInvoker

    Typed Interface

    Client Proxy

    RemoteInvoker

    EJB Container MBean

    Service MBean

    Invocation

    Port 1234

    Port 4321Client

    Cadena de interceptores

    Typed Interface

    Cadena de interceptores

  • October 7, 2004 Novell Inc.23

    Projectos manejados x JBoss

    JBoss AS : Implementacin J2EE, EJB, JMX, JMS, JCA, JAAS Hibernate : Framwork para resolver la impedancia O-R Tomcat : JSP/Servlet/Web server. JBossIDE : Eclipse integration, desarrollo dirigo por tag libraries, debugging

    local y remoto.

    JBossCache : Manejo distribuido de imagenes de datos ( Grid Computing). JGroups : Implementacin IP Multicast confiable, base para laimplementacin

    de cluster.

    Nukes : Implementacin de portal y CMS ( Manejador de Contenido) JBossAOP : Aspect-Oriented Programming en JBoss 4.0. Javassist Librera de manipulacin de bytecode Simple.

  • October 7, 2004 Novell Inc.24

    Capa de Aspectos

    Sesiones Transaccionales

    ACID

    Acceso Seguro

    Monitor en tiempo real

    Configuracion cache

    Monitor de tiempo y fecha

    Cache de datos Persistentes

    Cluster de Webservices

    ClusteringRemoteInvokers ACID Monitoring PersistenceTransaction CacheSecurity

    JBoss Microkernel (JMX)

    JBoss AOP

  • October 7, 2004 Novell Inc.25

    JBoss AOP: Configuracin

    /** * * @@transaction(RequiresNew) */ public void somePOJOmethod() { }

    Explicito a travs de Xdoclets

    RequiresNew Implicito a travs de XML

  • October 7, 2004 Novell Inc.26

    JBoss AOP: Aspectos a la carta

    La implementacin de un middleware orientado por aspectos permite: Desarrollos fluidos e iteractivos Marca una clara separacin entre la arquitectura del sistema y el

    desarrollador de la aplicacin.

    Las decisiones de arquitecturas pueden postergarse hasta etapas avanzadas del desarrollo ( Principio bsico de Arquitectura de Software Software Architecture Bootcap Book )

    JBoss 4 es un verdadero middleware orientado a aspectos.

  • October 7, 2004 Novell Inc.27

    Jboss.net: WebServices Especifica como pueden ser publicados los objetos como webservices:

    Stateless Session Beans Web components POJO como servlet ( Plaint Old Java Object)

  • October 7, 2004 Novell Inc.28

    JBoss Hibernate

    Hibernate IS EJB 3.0 CMP Hibernate es el actual motor de persistencia de Jboss 4.x

    El mecanismo de cache de Hibernate esta integrado con la plataforma de cache de Jboss: JbossCache.

    Mapeo flexible e intuitivo Soporte para modelo de datos estructurados alrededor de objetos de

    granularidad fina. Potencia consultas compleadas. Dual-Layer Caching Architecture (HDLCA)

    Persistencia transparente.

    Persistencia transitiva.

  • October 7, 2004 Novell Inc.29

    JBoss IDE

    JBoss IDE esta basado en Eclipse. Serie de plugins para Eclipse

    Permite el monitoreo y depuracin de las instancias de Jboss.

    Permite controlar el ciclo de vida del servidor de aplicaciones ( Start, Stop, Deploy, undeploy) y assembly de los componentes web, negocio e integracin.

    Soporte amigable y sofisticado con XDoclet Soporte para generacin y completacin. Soporte para AOP (completion and generation).

  • October 7, 2004 Novell Inc.30

    Jboss Cache

    CACHE

    EJB

    WEB

    CACHE

    EJB

    WEB

    Qu es JBossCache? Un mecanismo de caches transaccionales replicados para

    Jboss. Considera componentes con o sin AOP.

    Provee funcionalidades de cache alrededor de los recursos frecuentemente ms usados. Stateful Session Beans, HTTPSession Caches son usados a cualquier nivel en cualquier capa de la

    arquitectura.

    Todos los accesos son a travs del cache. Write-through (lazy or eager) Reads only access (Incrementa el desempeo por los hits!!) Items no residentes en el cache son cargados. (e.g. from

    database) Items de bajo movimiento son bajandos del cache de

    acuerdo a diferentes politicas (LRU, MRU)

  • October 7, 2004 Novell Inc.31

    JBoss Nukes ( Solucin de Portal)

    Identidades

    ContainerGroupUser

    Attribute

    Reglas y Categorizacin

    Manejador de ContenidoSearch

    Personalizacin

    Integracin de aplicaciones

    Soporte multi-idioma,

    multidispositivo

    AdministratorEnd-UserDeveloper

  • October 7, 2004 Novell Inc.32

    JBoss Clustering

    Servidor Aplicaciones

    Nodo B

    Servidor Aplicaciones

    Cluster

    Nodo A

    AplicacinCliente

    Jboss AppServer

    Jboss Appserver

    MecanismoBalanceo de carga

    Esquema Round-Robin

    1 3 5

    2

    46

    Replicacin de componentes & estado

    Alta Disponibilidad - Replicacin de Servicios

    - Balanceo de carga.

  • October 7, 2004 Novell Inc.33

    AgendaAgenda

    Motivacin

    Implementacin J2EE: Jboss AS

    1

    3

    4

    Agenda

    Conclusiones5

    Nivel de madurez de JBoss

    Q&A6

    Caractersticas de un aplicacin empresarial2

  • October 7, 2004 Novell Inc.34

    Valoracin de Madurez de Producto

    OSMM ( Open Source Madurity Model) Metodologa independiente de producto para valorar la madurez

    de una solucin open-source. Est preparado el producto para una ambiente empresarial ?

    Documentacin

    Integracin Soporte

    Servicios Profesionales

    Entrenamiento

    Software

    SOLUCION OPEN-SOURCE

  • October 7, 2004 Novell Inc.35

    Valoracin de Madurez de Producto

    Documentacin

    Integracin Soporte

    Servicios Profesionales

    Entrenamiento

    Software

    SOLUCION OPEN-SOURCE

    Estos indicadores los tenemos en cuenta a la hora de comprar un producto comercial ?

    Nuestros actuales proveedores de tecnologa nos garantizan cada una de estas dimensiones de calidad y madurez de producto ?

  • October 7, 2004 Novell Inc.36

    Valoracin de Madurez de Producto

    Documentacin

    Integracin Soporte

    Servicios Profesionales

    Entrenamiento

    Software

    JBOSS AS

  • October 7, 2004 Novell Inc.37

    Valoracin de Madurez de JBossSoftware

    Criterios de evaluacin

    Funcionalidad: Certificado para J2EE 1.4, Paso la suite de pruebas de compatibilidad de SUN, pionero en kerneles JMX,AOP. Historia: Disponible hace mas de 4 aos. Ms de 5 millones de downloads, Servidor de aplicaciones por excelencia de los desarrolladores. Miles de implantaciones a nivel mundial Calidad: 1700 pruebas de compatibilidad despues de cada compilacin + las 23000 pruebas del Sun CTS. 9 patches por mes. Equipo de desarrollo: 91 miembros, Ingenieros activos 12, una de las comunidades mas activas. Compromiso de proyectos con universidades a nivel mundial ( Oxford, Cambridge, Stanford, Cornell, UCLA, etc )

    Puntaje: 8/10- Aunsencia de un IDE integrado. ( Falencia ante productos comerciales)- Solucin:Eclipse + Jboss Plug-in

  • October 7, 2004 Novell Inc.38

    Valoracin de Madurez de JBoss

    Opciones de soporte tcnico para soluciones open-source

    Comunidad: JBoss posee una activa comunidad donde se publican preguntas y respuestas. Gran parte de las preguntas las responden empleados de Jboss ( Compromiso y calidad de las respuestas) Comercial: Soporte pagado en dos modalidades: Desarrollo ( Orientado a los desarrollores que escriben la aplicacin ) y Produccin ( Orientado apoyar al staff de administracin de la aplicacin y datacenter) On-site: Ingenieros de Jboss apoyando proyectos al interior de la empresa

    Puntaje: 8/10- Algunas preguntas colocadas por los jueces en el foro de soporte de Jboss no fueron respondidas en el tiempo esperado o no se entrego un solucion directa al problema ( Efectividad) - Pregunta: S le aplicaramos la misma evaluacin a las respuesta entregadas por las unidades de soporte de varias soluciones comerciales cuanto sacaran ?

    Soporte

  • October 7, 2004 Novell Inc.39

    Valoracin de Madurez de JBoss

    Las opciones u ofertas de documentacin para soluciones open-source

    Webposting informales publicados por usuarios de la comunidad o agenos a la misma Tutoriales y referenciasJboss Team le ha dado una prioridad alta a la generacin de documentacin.Han creado un proyecto de contribuccin de documentacin.La documentacin tcnica escrita por Jboss se vende a US30.Hay publicaciones formales en SAMs publishing.

    Puntaje: 6/10- La documentacin libre entregada por Jboss en su website es considerada poco funcional.- No hay muchas publicaciones formales.

    Documentacin

  • October 7, 2004 Novell Inc.40

    Valoracin de Madurez de JBoss

    Tipos de entrenamiento para soluciones open-source Posting informales de ejemplos how-to escritos por usuarios finales. Tutoriales en linea creado por los desarrolladores. Tutoriales publicados a nivel comercial. Entrenamiento tipo class-room entregado por equipos de desarrollo OpenSource. Entrenamiento tipo class-room entregado por entidades comerciales.

    JBoss ofrece todos los cinco tipos de entrenamiento.

    Puntaje: 8/10- Ausencia de tutoriales publicados a nivel comercial.

    Entrenamiento

  • October 7, 2004 Novell Inc.41

    Valoracin de Madurez de JBoss

    Qu tan fcil se integra esta solucin con otros productos?

    Tecnologas J2EE: JMS, RMI, CORBA, JCA ( Conectores CRM, ERP, etc) Tecnologas web: HTTP,SOAP Arquitectura orientada a servicios: Webservices, SOAP, JAX-RPC. Apoyo de fabricantes de soluciones CRM, ERP, etc. Kernel basado en JMX ( CORBA, SNMP, HTTP, RMI, etc)

    Puntaje: 10/10Es considerado el servidor de aplicaciones con ms facilidades de integracin ( Fuente: Theserverside.com )

    Integracin

  • October 7, 2004 Novell Inc.42

    Valoracin de Madurez de JBoss

    Opciones de soporte tcnico para soluciones open-source: E-mail, Onsite, Telefono, Soporte Desarrollo de relaciones con firmas de consultora, integradores, empresas fabricantes Actualmente JBoss tiene relaciones con: Novell, HP, CA. Toda la red de soporte de Novell apoya Jboss Grupo de consultoria de Novell ( Anteriormente Cambridge Technology Partners) Centros autorizados de servicios ( Platinum, Gold, Silver )

    Puntaje: 8/10- Falta desarrollo de canales y relaciones con empresas de consultoria

    Servicios Profesionales

  • October 7, 2004 Novell Inc.43

    Valoracin de Madurez de JBoss

    Documentacin 6/10

    Integracin10/10

    Soporte ( 8/10)

    Servicios Profesionales ( 8/10 )

    Entrenamiento 8 /10

    Software = 8/10

    Valoracin de madurezJBOSS > = 80%

  • October 7, 2004 Novell Inc.44

    Valoracin de Madurez de JBossDocumentacin

    IntegracinSoporte

    Servicios Profesionales

    Entrenamiento Software

    S realizaramos este ejercicio a cada una de las implementaciones J2EE

    comerciales, cuantas de ellas estaran en un verdadero estado de madurez ?

  • October 7, 2004 Novell Inc.45

    AgendaAgenda

    Motivacin

    Implementacin J2EE: Jboss AS

    1

    3

    4

    Agenda

    Conclusiones5

    Nivel de madurez de JBoss

    Q&A6

    Caractersticas de un aplicacin empresarial2

  • October 7, 2004 Novell Inc.46

    Conclusiones

    JBoss AS es una sera, robusta y madura alternativa para construir aplicaciones empresariales de gran escala, caracterizadas por altas cargas de trabajo, acceso distribuidos de informacin, bajos tiempos de respuesta, entre otros requerimientos no funcionales.

    El modelo arquitectnico estructura alrededor de AOP y JMX hace de JBoss el pionero en la siguiente generacin de plataformas J2EE para desplegar aplicaciones empresariales de gran escala.

    La arquitectura modular y flexible de JBoss AS permite que este pueda ser potenciado para implementar solidas soluciones bajo el enfoque orientado a servicios SOA.

  • October 7, 2004 Novell Inc.47

    AgendaAgenda

    Motivacin

    Implementacin J2EE: Jboss AS

    1

    3

    4

    Agenda

    Conclusiones5

    Nivel de madurez de JBoss

    Q&A6

    Caractersticas de un aplicacin empresarial2

  • October 7, 2004 Novell Inc.48

    Preguntas & Respuestas