53
Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. | 1 Principios básicos de las arquitecturas multitenant en WebLogic Chanda Patel Tim Quinn Product Development, Oracle Marzo/abril de 2016 Aguarde un momento por favor. La sesión comenzará en breve en el horario señalado en el programa. Muchas gracias.

Web logic multi tenancy fundamentals

Embed Size (px)

Citation preview

Page 1: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. | 1

Principios básicos de las arquitecturasmultitenant en WebLogicChanda PatelTim QuinnProduct Development, OracleMarzo/abril de 2016

Aguarde un momento por favor. La sesión comenzaráen breve en el horario señalado en el programa. Muchas gracias.

Page 2: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Temario• Conceptos clave, casos de uso• Grupos de recursos, plantillas de grupos de recursos• Targeting (determinación de destinos), destinos virtuales• Ciclo de vida de particiones• Demo

Page 3: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Conceptos clave• Funcionalidad multitenant (MT)

Capacidad de admitir diversos tenants en una única instancia de software

• ParticiónUna porción virtual de un dominio de WLS. Las particiones son los módulos básicos de la funcionalidad MT en WLS

Page 4: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Conceptos clave

• Microcontenedor de WLS• Cada una se configura y se administra por separado

– Configuración de seguridad– Puesta en marcha y apagado– Implementación de aplicaciones, recursos– Targeting– Administradores

• ... pero pueden compartir servidores administrados

Partición

Page 5: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Conceptos clave

TrafficDirector

Servidor WebLogic

Partición 1

Destino virtual

App App Serv.JMS

Origen de

datos

Interfaz JNDI

Coherencia

Servicio 1

Servicio 2

… Servicio N

Partición 1

Base de datos

Partición 2

Destino virtual

App App Serv.JMS

Origen de

datos

Interfaz JNDIPartición 2

Page 6: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Caso de uso de PaaS• PaaS (Consolidación)

–Consolidación de diversos dominios de WLS en numerosas particionesde un dominio de WLS

–Cada dominio antiguo se convierte en tenant del nuevo dominio

• Ejemplo con departamentos:–Partición de RRHH (HR)–Partición de Finanzas

• Ejemplo con desarrolladores–Partición de John Smith–Partición de Lisa Johnson

Page 7: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Caso de uso de SaaS• SaaS

–Todos los tenants ejecutan el mismo software–El software se define en el dominio, pero se implementa por partición

• Ejemplo• Partición de Atención al cliente de Coca-Cola• Partición de Atención al cliente de Pepsi

Page 8: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

Page 9: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• Grupo de recursos (RG)–Conjunto de recursos relacionados e implementaciones de aplicaciones–Cada RG que pertenece a un dominio o partición–Unidad de targeting

• Plantilla de grupo de recursos (RGT)–Agrupaciones de recursos reutilizadas, implementaciones de

aplicaciones–Un grupo de recursos puede referirse a una RGT

Reseña

Page 10: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• SaaS (software como servicio)–“Software” = aplicaciones + recursos definidos en RGT–Las particiones contienen grupos RG que se refieren a plantillas RGT–Cada partición puede invalidar atributos de recursos de manera

diferente

• PaaS (plataforma como servicio)–“Plataforma” = WLS expuesto como partición–Los grupos RG (no RGT) incluyen implementaciones de recursos y

aplicaciones–Partición ≈ "dominio virtualizado"

SaaS vs. PaaS

Page 11: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• ///Procedimiento similar a la creación de recursos, implementación de aplicaciones en un dominio en 12.1.3, excepto:–SaaS:

• Creación de recurso en plantilla de grupo de recursos• Implementación de aplicaciones en plantilla de grupo de recursos

–PaaS:• Creación de recurso en grupo de recursos• Implementación de aplicaciones en grupo de recursos

Creación de recursos e implementación de aplicaciones

Page 12: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

startEdit()template = domain.createResourceGroupTemplate('T1')

mailSession=template.createMailSession('mailSess1')mailSession.setJNDIName('mail/sess1')props=Properties()props.setProperty('mail.user', 'joe')props.setProperty('mail.host','mail.mycompany')mailSession.setProperties(props)activate()

SaaS: Creación de recursos

Page 13: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

startEdit()progress=deploy(appName='appName',path='pathToAppArchive',resourceGroupTemplate=template.getName(),deploymentOrder=10,securityModel='DDOnly')

activate()while not (progress.isCompleted() or progress.isFailed()) :

os.time.sleep(2)progress.printStatus()

SaaS: Implementación de aplicaciones

Page 14: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

startEdit()newPart = domain.createPartition('pepsi')

# set up partition targeting – see later sections

rg = newPart.createResourceGroup('rg-1')rg.setUseDefaultTarget(true)rg.setResourceGroupTemplate(template)activate()

startPartitionWait(newPart)

SaaS: Creación de partición, grupo de recursos

Procedimiento similar para otras particiones

Page 15: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

startEdit()hrPart = domain.createPartition('HR')

# set up partition targeting – see later sections

rg = hrPart.createResourceGroup('rg-1')rg.setUseDefaultTarget(true)

PaaS: Creación de partición, grupo de recursos

Page 16: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

mailSession=rg.createMailSession('mailSess1')mailSession.setJNDIName('mail/sess1')props=Properties()props.setProperty('mail.user', 'joe')props.setProperty('mail.host','mail.mycompany')mailSession.setProperties(props)activate()

PaaS: Creación de recursos

Page 17: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

startEdit()progress=deploy(appName='appName',path='pathToAppArchive',

partition='HR',resourceGroup='rg-1',deploymentOrder=10,securityModel='DDOnly')

activate()while not (progress.isCompleted() or progress.isFailed()) :

os.time.sleep(2)progress.printStatus()

startPartitionWait(hrPart)

PaaS: Implementación de aplicaciones

Page 18: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• El administrador puede personalizar los recursos para cadapartición–En la plantilla se especifican los atributos de los recursos–Cada partición puede invalidar atributos de manera diferente

• Principales tipos–///Beans de configuración para invalidación–Planes de implementación de recursos–Planes de implementación de aplicaciones para particiones específicas

Invalidación de recursos (SaaS)

Page 19: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• Definición en el nivel de la partición• Emparejamiento con los recursos correspondientes• Para cada partición:

–WLS usa los valores de invalidación de la partición en lugar de los valoresde la plantilla para las copias de recursos de esa partición

• Se simplifican las personalizaciones más frecuentes

Invalidación de recursos: ///beans de configuración parainvalidación

Page 20: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• Ejemplo: Recurso de sistema JDBC–URL–usuario–contraseña–nombre de origen de datos

Invalidación de recursos: ///beans de configuración para invalidación

Page 21: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

dsOver=newPart.createJDBCSystemOverride('medrecPDB')dsOver.setDataSourceName('MedRecGlobalDataSourceXA')pdbURL='jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=TCP)(HOST='+pdbHost+')(PORT='+pdbPort+')))

(CONNECT_DATA=(SERVICE_NAME=’+pdbServiceName+')))'dsOver.setURL(pdbURL)dsOver.setUser(pdbUserName)dsOver.setPassword(pdbPassword)

Invalidación de recursos: ///beans de configuración para invalidación

Page 22: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• Definición en el nivel de la partición• Similar a los planes de implementación de aplicaciones

–Definición de variables–Definición de cambios de valores de variables para atributos específicos

• Agregar, modificar, eliminar• Expresiones de tipo Xpath exclusivas de WLS

• Principalmente para recursos o atributos no expuestos mediante ///beans de configuración para invalidación

Invalidación de recursos: plan de implementación de recursos

Page 23: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• El código aplica los valores de los atributos en el siguiente orden:–Plantilla–Plan de implementación de recursos–///Bean de configuración para invalidación

• "El último gana"

Invalidación de recursos: prioridad

Page 24: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• Implementación de aplicaciones en plantilla de grupo de recursos• Indicación de plan para partición específica

progress = updateApplication(appName='myApp',planPath='path/to/plan.xml',

partition='pepsi')

oprogress = redeploy(appName='myApp',planPath='path/to/plan.xml',

partition='pepsi’)

Planes de implementación de aplicaciones para particiones específicas

Page 25: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• ///Ámbitos de nombres de recursos–Dominio (y grupo de recursos por dominio)–Cada partición

• 12.2.1 no incluye herramientas para crear planes de implementación de recursos

• ConfigurationManagerMBean.getPropertyValues–Para un bean de configuración devuelve los valores de los atributos

requeridos:• Default, original, resource deployment plan, overriding config bean, effective

–Usado por EM pero accesible desde WLST, JMX

Sugerencias

Page 26: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Grupos de recursos y plantillas de grupos de recursos

• DebugDeploymentPlan• DebugConfigurationRuntime (procesamiento de

invalidaciones)• DebugDeployment

Diagnóstico

Page 27: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Targeting y destinos virtuales

Page 28: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Destinos virtuales• Se usan para determinar destinos en particiones (y grupos de

recursos)• Existen dos aspectos

–Destinos físicos (servidor, clúster) que se usarán–Patrón URL para enrutamiento a la partición (más precisamente, al VT)

• Nombres de host virtuales• Prefijo URI• Número de puerto

• Provee servidor HTTP• Similar al VirtualHost existente

Page 29: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ejemplos de destinos virtualesvt=domain.createVirtualTarget("PepsiVT")vt.addTarget(cluster)vt.getWebServer().getWebServerLog().setBufferSizeKB(0)

Por nombre de host:vt.addHostName("pepsi.com")

http://pepsi.com:7001/myapp

Por prefijo URI:vt.setUriPrefix("/pepsi")

http://any.com:7001/pepsi/myapp

Por nombre de host y prefijo URIvt.addHostName("cloud.com")vt.setUriPrefix("/pepsi")

http://cloud.com:7001/pepsi/myapp

Por número de puerto:vt.setExplicitPort(8001)

http://any.com:8001/myapp

Page 30: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Sugerencias para trabajo con destinos virtuales• Solo se define cómo tratar una solicitud cuando esta llega a un servidor

– Deben usarse otros mecanismos (equilibrador de carga, DNS) para hacer que la solicitudllegue al servidor correcto

• El establecimiento de coincidencias de nombres de host se lleva a cabo mediantecomparaciones sencillas de cadenas– Puede haber numerosas coincidencias: pepsi.com, pepsi.us.com, pepsi

• Existe un algoritmo de coincidencia más preciso: – A mayor longitud de URL, mayor precisión; nombre de host + URL = mayor precisión; el

puerto es el que brinda la máxima precisión

• No se recomienda definir destinos virtuales que ///"acaparen" solicitudes relativas a dominios

• El establecimiento del número de puerto crea automáticamente canales para particiones

• El atributo partitionChannel solo se aplica cuando se modifican los puertos globalmente (port offset)

Page 31: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Targeting en particiones• Destinos disponibles (available targets): es posible usar destinos virtuales para establecer

destinos en la partición

• Destinos predeterminados (default targets): subconjunto de destinos disponibles

• Es posible seleccionar como destino de los grupos de recursos uno o más de los destinos disponibles• Un destino si incluye un JMSServer, MessagingBridge, PathService, JMSBridgeDestination.

FileStore, JDBCStore, JMSSystemResource

• Si no se establecen destinos para el RG, se emplean los destinos predeterminados– Controlable con useDefaultTarget de tipo boolean

• Cada destino virtual puede ser compartido por más de una partición

• Y también puede usarse un host virtual

Page 32: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ejemplos de targeting en particionespartition=domain.createPartition("PepsiPartition")partition.addAvailableTarget(vt1)partition.addAvailableTarget(vt2)partition.addDefaultTarget(vt1)rg=partition.createResourceGroup("RG1")

Explícito:rg.addTarget(vt2)

Nota: Esta instrucción también asigna a UseDefaultTarget el valor false

Uso de valor predeterminado de partición (vt1):rg.setUseDefaultTarget(true)Nota: Esto no suele ser necesario porque se trabaja con el valor predeterminado

Page 33: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

Page 34: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones (y grupos de recursos)

• Sobre la base del ciclo de vida del servidor

• Se activan– Cambios de estado en el servidor– Instrucciones del administrador

relativas a las particiones– Acciones ante uso inadecuado de

recursos (recourse actions) como parte de la administración del uso de recursos (RCM)

Requisitos de alto nivel

Page 35: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Puesta en marcha de servidores: 12.1.3

Revisión: ///Elementos internos del ciclo de vida de los servidores

Servicio de servidor JDBC

Ciclo de vida de servidores

Servicio de servidor JMS B

Servicio de servidor de

implementación

Servicio de servidor JMS A

Todos losBasicDeploymentMBeans,DeploymentMBeansdel dominio

puesta en marcha de servidores

Page 36: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Puesta en marcha de servidores/particiones: 12.2.1

Cambios internos en 12.2.1

Servicio de servidor JDBC

Ciclo de vida de servidores

Servicio de servidor JMS B

Servicio de servidor de

implementación

Servicio de servidor JMS A

Ciclo de vida de particiones

Interceptor Interceptor InterceptorInterceptor

BasicDeploymentMBeans,DeploymentMBeans por dominio

BasicDeploymentMBeans,DeploymentMBeansde partición

puesta en marcha de servidores

Puesta en marcha de particiones

Page 37: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• ParticióndomainRuntime()dpRT=cmo.lookupDomainPartitionRuntime(pName)plcRT=dpRT.getPartitionLifeCycleRuntime()task=plcRT.start()while task.isRunning():os.time.sleep(1)

Interfaces API - LifeCycleRuntimeMBeans

DomainPartitionRuntimeMBeanDomainPartition

RuntimeMBean1 por partición

PartitionLifeCycleRuntimeMBean xxx

xxx

Page 38: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Grupo de recursos en la particióndomainRuntime()dpRT=cmo.lookupDomainPartitionRuntime(pName)plcRT=dpRT.getPartitionLifeCycleRuntime()rglcRT=plcRT.lookupResourceGroupLifeCycleRuntime(rgName)task=rglcRT.start()while task.isRunning():os.time.sleep(1)

Interfaces API - LifeCycleRuntimeMBeans

PartitionLifeCycleRuntimeMBean

ResourceGroupLifeCycleRuntime

MBean

Page 39: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Grupo de recursos por dominiodomainRuntime()rglcRT=cmo.lookupResourceGroupLifeCycleRuntime(rgName)task=rglcRT.start()while task.isRunning():os.time.sleep(1)

Interfaces API - LifeCycleRuntimeMBeansDomainRuntime

MBean

ResourceGroupLifeCycleRuntime

MBean

Page 40: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Operaciones de ciclo de vida

• Destinos opcionales–Omit: la operación afecta a todos los destinos–Specify: la operación afecta solo a esos destinos

• Asincrónicas

Interfaces API - LifeCycleRuntimeMBeans

startstartInAdminshutdownforceShutdownsuspend

forceSuspendresume

Page 41: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• En general, usar RuntimeMBeans para ciclo de vida• Pero es posible establecer una conexión directa con

un servidor administradoserverRuntime()cmo.startPartition(pName)cmo.startResourceGroup(rgName) # domain-level RG

pRT=cmo.lookupPartitionRuntime(pName)pRT.shutdown()• Sincrónicas

Interfaces API - RuntimeMBeans

ServerRuntimeMBean

PartitionRuntimeMBeanPartitionRuntime

MBean

Page 42: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Operaciones de ServerRuntimeMBean

• Operaciones de PartitionRuntimeMBean

Interfaces API - RuntimeMBeans

startPartitionstartPartitionInAdminstartResourceGroupstartResourceGroupInAdmin

shutdownResourceGroupforceShutdownResourceGroup

suspendResourceGroupforceSuspendResourceGroupresumeResourceGroup

shutdownforceShutdownstartResourceGroupstartResourceGroupInAdmin

shutdownResourceGroupforceShutdownResourceGroup

suspendResourceGroupforceSuspendResourceGroupresumeResourceGroup

Page 43: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Dos operaciones– startPartitionWait(partitionMBean)– forcePartitionShutdownWait(partitionMBean)

• Sincrónicas• Se devuelve un objeto de tarea

– getError()

Interfaces APC - Operaciones útiles de WLST

Page 44: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Cambios de estado persistentes• Operaciones sincrónicas vs. asincrónicas• Es mejor trabajar con RT Mbeans de ciclo de vida

–solo en servidor de administración

• Se debe poner en marcha explícitamente una partición creada de cero

• Información sobre estado provista por MBeans de ciclo de vida de partición/RG–///Agregado

Sugerencias

Page 45: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Ciclo de vida de particiones

• Mensaje de log– <Oct 2, 2015 9:41:46 AM PDT> <Notice> <Partition Lifecycle> <BEA-2192303> <The

partition lifecycle operation "START" for partition "Pepsi" is initiated.>– <Oct 2, 2015 9:41:46 AM PDT> <Notice> <Partition Lifecycle> <BEA-2192304> <The

partition lifecycle operation "START" for partition "Pepsi" was successful.>

• Para obtener más detalles:– -Dweblogic.debug.DebugPartitionLifecycle=true

Diagnóstico

Page 46: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Para obtener más información

• Documentación sobre WLS 12.2.1: https://docs.oracle.com/middleware/1221/wls/index.html

• https://blogs.oracle.com/WebLogicServer/entry/domain_partitions_for_multi_tenancy

• https://blogs.oracle.com/dipol/entry/partition_targeting_and_virtual_targets

• https://blogs.oracle.com/misty/entry/multi_tenancy_deployment

Page 47: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Demo

Page 48: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Declaración relativa a la norma de Safe HarborEl objetivo de esta presentación es señalar la dirección general de nuestros productos. Se ofrece solo con fines informativos y no podrá incorporarse en ningún contrato. No constituye un compromiso de proporcionar materiales, código ni funcionalidades de ningún tipo, y no debería servir de fundamento para la toma de decisiones de compra. El desarrollo, lanzamiento y cronograma de cualquiera de las características o funcionalidades descritas para los productos de Oracle quedan a criterio exclusivo de Oracle.

48

Page 49: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. | 49

Preguntas y respuestas

Page 50: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. |

Siga aprendiendo con las capacitaciones de Oracle University

• Capacitación práctica presencial o en línea a cargo de instructores de trayectoria de todo el mundo

• Nuevos servicios de aprendizaje con suscripción para brindarle acceso a la capacitación en todo momento

• Programas de certificación para validar sus competencias

education.oracle.com

50

Page 51: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. | 51

Page 52: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. | 52

Page 53: Web logic multi tenancy fundamentals

Copyright © 2016, Oracle y/o sus compañías afiliadas. Todos los derechos reservados. | 53