aplicaciones empresariales sobre plataformas j2ee...
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