Este documento presenta un curso sobre JBoss que cubre temas como la escalabilidad, alta disponibilidad, despliegue continuo, gestión y estándares de JBoss. El curso también analiza conceptos como la identidad y seguridad, y compara servidores J2EE de código abierto frente a servidores comerciales.
JBoss AS Installation -JBoss as jeap - Curso JBoss JB366 Día 2 César Pajares
El documento describe los pasos para instalar JBoss AS 5.1.0, incluyendo la descarga e instalación de Java y JBoss, la configuración de las variables de entorno, y la ejecución inicial de JBoss para verificar la instalación. También cubre temas como la administración de JBoss a través de la consola y cómo acceder de forma remota, y proporciona información sobre cómo desinstalar JBoss y las herramientas Ant y Maven.
JBoss AS jeap - Curso JBoss JB366 Día 1 César Pajares
Este documento proporciona una visión general de los servidores de aplicaciones y JBoss en particular. Explica que un servidor de aplicaciones es un software que ejecuta aplicaciones y proporciona servicios a computadoras cliente, manejando la lógica de negocio y acceso a datos. También describe la arquitectura de tres capas de Java EE y cómo JBoss implementa este estándar de manera abierta y flexible.
JBoss AS Monitorización - Curso JBoss JB366 Día 4 César Pajares
El documento describe la API JMX y herramientas para la monitorización de JBoss. Explica que JMX permite el acceso a la información publicada por las aplicaciones a través de los MBeans. JBoss implementa JMX y puede ser monitorizado utilizando herramientas como JConsole, MC4j y ManageEngine Applications Manager.
JBoss AS Seguridad - monitorizacións - Curso JBoss JB366 Día 4 César Pajares
Este documento contiene información sobre cómo instalar y configurar JBoss Application Server para que se ejecute como un servicio en Microsoft Windows. Explica diferentes métodos como usar JavaService, JavaServiceWrapper y configurar el directorio de despliegue. También cubre temas como monitorización de JBoss usando JMX y herramientas como JConsole, MC4j y ManageEngine.
JBoss AS web services - Curso JBoss JB366 Día 4 César Pajares
Este documento contiene información sobre cómo configurar JBoss Application Server para que se ejecute como un servicio en Microsoft Windows. Explica dos métodos: usar JavaService o JavaServiceWrapper. También cubre temas como el despliegue de aplicaciones en JBoss AS, la configuración del directorio de despliegue y la API JMX para la monitorización.
Este documento presenta una introducción a JBoss, un servidor de aplicaciones Java. Explica cómo instalar y configurar JBoss, desplegar aplicaciones, gestionar el servidor, ajustar el rendimiento, configurar clustering, y asegurar JBoss. También cubre herramientas de administración y resolución de problemas.
Este documento describe JBoss, un servidor de aplicaciones Java de código abierto. JBoss implementa los estándares J2EE y ofrece servicios como EJB, Hibernate y JMS. Usa directorios como bin, deploy y conf para ejecutarse y administrarse. Los desarrolladores pueden implementar EJBs, servicios web y aplicaciones JSF en JBoss.
JBoss AS Installation -JBoss as jeap - Curso JBoss JB366 Día 2 César Pajares
El documento describe los pasos para instalar JBoss AS 5.1.0, incluyendo la descarga e instalación de Java y JBoss, la configuración de las variables de entorno, y la ejecución inicial de JBoss para verificar la instalación. También cubre temas como la administración de JBoss a través de la consola y cómo acceder de forma remota, y proporciona información sobre cómo desinstalar JBoss y las herramientas Ant y Maven.
JBoss AS jeap - Curso JBoss JB366 Día 1 César Pajares
Este documento proporciona una visión general de los servidores de aplicaciones y JBoss en particular. Explica que un servidor de aplicaciones es un software que ejecuta aplicaciones y proporciona servicios a computadoras cliente, manejando la lógica de negocio y acceso a datos. También describe la arquitectura de tres capas de Java EE y cómo JBoss implementa este estándar de manera abierta y flexible.
JBoss AS Monitorización - Curso JBoss JB366 Día 4 César Pajares
El documento describe la API JMX y herramientas para la monitorización de JBoss. Explica que JMX permite el acceso a la información publicada por las aplicaciones a través de los MBeans. JBoss implementa JMX y puede ser monitorizado utilizando herramientas como JConsole, MC4j y ManageEngine Applications Manager.
JBoss AS Seguridad - monitorizacións - Curso JBoss JB366 Día 4 César Pajares
Este documento contiene información sobre cómo instalar y configurar JBoss Application Server para que se ejecute como un servicio en Microsoft Windows. Explica diferentes métodos como usar JavaService, JavaServiceWrapper y configurar el directorio de despliegue. También cubre temas como monitorización de JBoss usando JMX y herramientas como JConsole, MC4j y ManageEngine.
JBoss AS web services - Curso JBoss JB366 Día 4 César Pajares
Este documento contiene información sobre cómo configurar JBoss Application Server para que se ejecute como un servicio en Microsoft Windows. Explica dos métodos: usar JavaService o JavaServiceWrapper. También cubre temas como el despliegue de aplicaciones en JBoss AS, la configuración del directorio de despliegue y la API JMX para la monitorización.
Este documento presenta una introducción a JBoss, un servidor de aplicaciones Java. Explica cómo instalar y configurar JBoss, desplegar aplicaciones, gestionar el servidor, ajustar el rendimiento, configurar clustering, y asegurar JBoss. También cubre herramientas de administración y resolución de problemas.
Este documento describe JBoss, un servidor de aplicaciones Java de código abierto. JBoss implementa los estándares J2EE y ofrece servicios como EJB, Hibernate y JMS. Usa directorios como bin, deploy y conf para ejecutarse y administrarse. Los desarrolladores pueden implementar EJBs, servicios web y aplicaciones JSF en JBoss.
Tomcat es un servidor web escrito en Java que permite ejecutar servlets y JSP. Se puede instalar junto con Apache HTTP Server para que este sirva páginas estáticas y aquel contenido dinámico generado mediante servlets y JSP. La instalación requiere descargar e instalar Tomcat y la máquina virtual Java, y opcionalmente el módulo mod_jk para unir Apache y Tomcat.
Este documento describe los pasos para configurar e instalar JBoss ESB Server y crear un proyecto de ejemplo en Eclipse. Incluye instrucciones para descargar las herramientas necesarias como JDK, JRE y Apache Ant. Luego explica cómo agregar las variables al sistema PATH, instalar JBoss ESB Server y compilar ejemplos de prueba. También proporciona instrucciones detalladas para crear un proyecto en Eclipse, incluida la instalación de complementos como JBoss Tools y la creación de proveedores, filtros, servicios, acciones y
Este documento proporciona un tutorial paso a paso para crear un bean EJB simple con Eclipse e implementarlo en un servidor JBoss. Explica cómo instalar los requisitos como Eclipse y JBoss, crear el bean con interfaces, clase y descriptor de despliegue, y desplegarlo en el servidor para probarlo con una aplicación cliente.
Este documento describe los pasos para configurar un servidor para desarrollo con J2EE en Ubuntu 7.04, incluyendo la instalación de Apache 2.0.55, JDK, JRE, JEE, JBoss 4.0.4, PostgreSQL, y la integración de NetBeans 6 y UML. Explica cómo configurar Apache para trabajar con JBoss a través de mod_jk, y cómo configurar JBoss, PostgreSQL, y NetBeans para el desarrollo de aplicaciones J2EE.
Este documento describe los pasos para crear, desplegar y probar una aplicación simple con EJB. Incluye escribir el código del bean, el descriptor de despliegue, desplegar el bean en un servidor de aplicaciones, y crear un cliente que invoque al bean.
Este documento presenta una guía para instalar MySQL Community Edition en diferentes sistemas operativos como Windows, Linux y OpenSolaris. Explica los pasos para descargar e instalar MySQL, configurar usuarios y contraseñas, crear y otorgar permisos a bases de datos, e introducir la herramienta de administración MySQL Administrator.
Este documento introduce los web services y describe cómo crear un servicio web calculadora simple con Axis y JEE5. Explica cómo instalar y configurar el entorno de desarrollo necesario con Axis y un servidor de aplicaciones. A continuación, proporciona instrucciones paso a paso para crear un servicio web calculadora con Axis usando un archivo JWS y también con las herramientas JEE5. Finalmente, brevemente menciona cómo implementar un servicio mediante un archivo WSDD.
Caracteristicas quitadas o desusadas en Windows Server 2012 R2RaGaZoMe
Este documento enumera características que fueron quitadas o quedaron en desuso en Windows Server 2012 y Windows Server 2012 R2. Algunas características quitadas incluyen la copia de seguridad de imágenes del sistema, controladores de unidades de cinta, y la capacidad de crear discos de recuperación en CD o DVD. Características desusadas incluyen el SDK de AD RMS, la funcionalidad de revocación de licencia en AD RMS, y el nivel funcional de Windows Server 2003 en Active Directory. La tabla proporciona un resumen de las característic
Este documento describe cómo analizar documentos XML usando las APIs SAX y DOM en Java. Explica cómo construir analizadores SAX simples y cómo usar los eventos SAX para procesar documentos XML. También muestra cómo usar DOM para recorrer y extraer información de documentos XML. Finalmente, introduce la biblioteca JDOM para crear y manipular árboles DOM en Java.
Introducción al servidor Tomcat.Resumen de conceptos básicos, instalación y configuración. Se repasan conceptos sobre JSPs, JavaBeans, Servicios web sobre Axis2, JNLP, etc.
Simple y breve introducción a Apache Ant: herramienta usada en programación para la realización de tareas mecánicas y repetitivas, normalmente durante la fase de compilación y construcción (build).
En esta práctica, emplearemos algunas de las características principalmente, la
utilización de servidores virtuales, como configuracion de servidor apache,configuracion de phpmyadmin e instalacion de joomla bajo el entorno ubuntu*
El documento explica cómo configurar un servidor web en Windows 7 utilizando AppServ (Apache, PHP y MySQL) e instalar el CMS Joomla. Incluye los pasos para descargar e instalar AppServ y Joomla, configurar la conexión entre Joomla y la base de datos MySQL, y traducir la interfaz de Joomla al español.
Este documento describe los componentes fundamentales de Java EE y su arquitectura. Explica que Java EE simplifica la creación de aplicaciones empresariales mediante el uso de componentes como servlets, JSP, EJB y aplicaciones cliente. Además, describe cómo estos componentes se comunican entre sí a través de protocolos como HTTP y cómo se empaquetan y despliegan las aplicaciones Java EE. Finalmente, proporciona detalles sobre cómo Java EE 5 simplifica el desarrollo mediante el uso de anotaciones.
Este documento describe los pasos para instalar un servidor LAMP (Linux, Apache, MySQL, PHP). Explica cómo instalar cada componente (Apache, MySQL, PHP, phpMyAdmin), comprobar su funcionamiento, e instalar WordPress para crear un blog.
Manual de instalacion de PostGreSQL - Windows 7Mario Alfonso
Este documento proporciona instrucciones paso a paso para instalar PostgreSQL y aplicaciones asociadas como Apache/PHP, pgAdmin III y PostGIS en Windows. Explica los 23 pasos requeridos, que incluyen descargar e instalar PostgreSQL, configurar usuarios y contraseñas, e instalar paquetes adicionales como pgBouncer y pgAgents para ampliar las funcionalidades del sistema de gestión de bases de datos.
Tomcat comenzó como una implementación de servlets desarrollada por Sun Microsystems. Funciona como un contenedor de servlets y JSPs bajo el proyecto Apache. Se describe su estructura de directorios, características a través de las versiones como soporte a nuevas especificaciones, y pasos para instalar y configurar Tomcat como descargar el software, editar archivos de configuración y comprobar que el servicio está funcionando.
Este documento describe cómo configurar Jboss, Tomcat y Apache para trabajar juntos. Instruye sobre cómo instalar y configurar Jboss y Tomcat de forma independiente, luego configurar Apache para redirigir solicitudes a las consolas de administración de Jboss a través de Tomcat. También cubre cómo configurar logs, colas JMS, y envío de correo electrónico para notificaciones de errores.
Kohana es un ligero framework PHP para desarrollo web basado en el patrón MVC y que implementa HMVC. Ofrece seguridad, facilidad de uso y baja curva de aprendizaje. Se instala descargando el archivo más reciente del sitio web de Kohana y extrayéndolo en el servidor, luego configurando archivos como .htaccess y bootstrap.php para indicar la ubicación raíz y activar reescritura de URLs.
Escalabilidad en azure web sites y sql databaseEduardo Castro
Este documento presenta varios escenarios relacionados con la escalabilidad de sitios web de Azure y bases de datos SQL. Describe tres pasos para cada escenario: 1) identificar un problema de escalabilidad, adaptación al cambio o entornos múltiples, 2) proponer una solución usando características de Azure, y 3) demostrar la solución. Los escenarios incluyen escalabilidad, cambios en el código y datos, despliegues, y entornos de desarrollo, prueba y producción.
Este documento proporciona una introducción al software de monitoreo Zabbix. Explica que Zabbix es un software de código abierto para la supervisión de redes y servidores. Describe algunas de las principales características de Zabbix, como la capacidad de monitorear parámetros de rendimiento del sistema, configurar alertas por correo electrónico, visualizar datos históricos y supervisar aplicaciones web de forma centralizada. También menciona usos comunes de Zabbix como la supervisión de rendimiento, detección de problemas de
Tomcat es un servidor web escrito en Java que permite ejecutar servlets y JSP. Se puede instalar junto con Apache HTTP Server para que este sirva páginas estáticas y aquel contenido dinámico generado mediante servlets y JSP. La instalación requiere descargar e instalar Tomcat y la máquina virtual Java, y opcionalmente el módulo mod_jk para unir Apache y Tomcat.
Este documento describe los pasos para configurar e instalar JBoss ESB Server y crear un proyecto de ejemplo en Eclipse. Incluye instrucciones para descargar las herramientas necesarias como JDK, JRE y Apache Ant. Luego explica cómo agregar las variables al sistema PATH, instalar JBoss ESB Server y compilar ejemplos de prueba. También proporciona instrucciones detalladas para crear un proyecto en Eclipse, incluida la instalación de complementos como JBoss Tools y la creación de proveedores, filtros, servicios, acciones y
Este documento proporciona un tutorial paso a paso para crear un bean EJB simple con Eclipse e implementarlo en un servidor JBoss. Explica cómo instalar los requisitos como Eclipse y JBoss, crear el bean con interfaces, clase y descriptor de despliegue, y desplegarlo en el servidor para probarlo con una aplicación cliente.
Este documento describe los pasos para configurar un servidor para desarrollo con J2EE en Ubuntu 7.04, incluyendo la instalación de Apache 2.0.55, JDK, JRE, JEE, JBoss 4.0.4, PostgreSQL, y la integración de NetBeans 6 y UML. Explica cómo configurar Apache para trabajar con JBoss a través de mod_jk, y cómo configurar JBoss, PostgreSQL, y NetBeans para el desarrollo de aplicaciones J2EE.
Este documento describe los pasos para crear, desplegar y probar una aplicación simple con EJB. Incluye escribir el código del bean, el descriptor de despliegue, desplegar el bean en un servidor de aplicaciones, y crear un cliente que invoque al bean.
Este documento presenta una guía para instalar MySQL Community Edition en diferentes sistemas operativos como Windows, Linux y OpenSolaris. Explica los pasos para descargar e instalar MySQL, configurar usuarios y contraseñas, crear y otorgar permisos a bases de datos, e introducir la herramienta de administración MySQL Administrator.
Este documento introduce los web services y describe cómo crear un servicio web calculadora simple con Axis y JEE5. Explica cómo instalar y configurar el entorno de desarrollo necesario con Axis y un servidor de aplicaciones. A continuación, proporciona instrucciones paso a paso para crear un servicio web calculadora con Axis usando un archivo JWS y también con las herramientas JEE5. Finalmente, brevemente menciona cómo implementar un servicio mediante un archivo WSDD.
Caracteristicas quitadas o desusadas en Windows Server 2012 R2RaGaZoMe
Este documento enumera características que fueron quitadas o quedaron en desuso en Windows Server 2012 y Windows Server 2012 R2. Algunas características quitadas incluyen la copia de seguridad de imágenes del sistema, controladores de unidades de cinta, y la capacidad de crear discos de recuperación en CD o DVD. Características desusadas incluyen el SDK de AD RMS, la funcionalidad de revocación de licencia en AD RMS, y el nivel funcional de Windows Server 2003 en Active Directory. La tabla proporciona un resumen de las característic
Este documento describe cómo analizar documentos XML usando las APIs SAX y DOM en Java. Explica cómo construir analizadores SAX simples y cómo usar los eventos SAX para procesar documentos XML. También muestra cómo usar DOM para recorrer y extraer información de documentos XML. Finalmente, introduce la biblioteca JDOM para crear y manipular árboles DOM en Java.
Introducción al servidor Tomcat.Resumen de conceptos básicos, instalación y configuración. Se repasan conceptos sobre JSPs, JavaBeans, Servicios web sobre Axis2, JNLP, etc.
Simple y breve introducción a Apache Ant: herramienta usada en programación para la realización de tareas mecánicas y repetitivas, normalmente durante la fase de compilación y construcción (build).
En esta práctica, emplearemos algunas de las características principalmente, la
utilización de servidores virtuales, como configuracion de servidor apache,configuracion de phpmyadmin e instalacion de joomla bajo el entorno ubuntu*
El documento explica cómo configurar un servidor web en Windows 7 utilizando AppServ (Apache, PHP y MySQL) e instalar el CMS Joomla. Incluye los pasos para descargar e instalar AppServ y Joomla, configurar la conexión entre Joomla y la base de datos MySQL, y traducir la interfaz de Joomla al español.
Este documento describe los componentes fundamentales de Java EE y su arquitectura. Explica que Java EE simplifica la creación de aplicaciones empresariales mediante el uso de componentes como servlets, JSP, EJB y aplicaciones cliente. Además, describe cómo estos componentes se comunican entre sí a través de protocolos como HTTP y cómo se empaquetan y despliegan las aplicaciones Java EE. Finalmente, proporciona detalles sobre cómo Java EE 5 simplifica el desarrollo mediante el uso de anotaciones.
Este documento describe los pasos para instalar un servidor LAMP (Linux, Apache, MySQL, PHP). Explica cómo instalar cada componente (Apache, MySQL, PHP, phpMyAdmin), comprobar su funcionamiento, e instalar WordPress para crear un blog.
Manual de instalacion de PostGreSQL - Windows 7Mario Alfonso
Este documento proporciona instrucciones paso a paso para instalar PostgreSQL y aplicaciones asociadas como Apache/PHP, pgAdmin III y PostGIS en Windows. Explica los 23 pasos requeridos, que incluyen descargar e instalar PostgreSQL, configurar usuarios y contraseñas, e instalar paquetes adicionales como pgBouncer y pgAgents para ampliar las funcionalidades del sistema de gestión de bases de datos.
Tomcat comenzó como una implementación de servlets desarrollada por Sun Microsystems. Funciona como un contenedor de servlets y JSPs bajo el proyecto Apache. Se describe su estructura de directorios, características a través de las versiones como soporte a nuevas especificaciones, y pasos para instalar y configurar Tomcat como descargar el software, editar archivos de configuración y comprobar que el servicio está funcionando.
Este documento describe cómo configurar Jboss, Tomcat y Apache para trabajar juntos. Instruye sobre cómo instalar y configurar Jboss y Tomcat de forma independiente, luego configurar Apache para redirigir solicitudes a las consolas de administración de Jboss a través de Tomcat. También cubre cómo configurar logs, colas JMS, y envío de correo electrónico para notificaciones de errores.
Kohana es un ligero framework PHP para desarrollo web basado en el patrón MVC y que implementa HMVC. Ofrece seguridad, facilidad de uso y baja curva de aprendizaje. Se instala descargando el archivo más reciente del sitio web de Kohana y extrayéndolo en el servidor, luego configurando archivos como .htaccess y bootstrap.php para indicar la ubicación raíz y activar reescritura de URLs.
Escalabilidad en azure web sites y sql databaseEduardo Castro
Este documento presenta varios escenarios relacionados con la escalabilidad de sitios web de Azure y bases de datos SQL. Describe tres pasos para cada escenario: 1) identificar un problema de escalabilidad, adaptación al cambio o entornos múltiples, 2) proponer una solución usando características de Azure, y 3) demostrar la solución. Los escenarios incluyen escalabilidad, cambios en el código y datos, despliegues, y entornos de desarrollo, prueba y producción.
Este documento proporciona una introducción al software de monitoreo Zabbix. Explica que Zabbix es un software de código abierto para la supervisión de redes y servidores. Describe algunas de las principales características de Zabbix, como la capacidad de monitorear parámetros de rendimiento del sistema, configurar alertas por correo electrónico, visualizar datos históricos y supervisar aplicaciones web de forma centralizada. También menciona usos comunes de Zabbix como la supervisión de rendimiento, detección de problemas de
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBDJuan Fabian
El documento presenta los pasos para instalar Dynamics 365 Finance and Operations localmente, incluyendo la configuración de Active Directory Federation Services (ADFS), Service Fabric, SQL Server, cuentas y credenciales, y la instalación del agente local. Se proporcionan enlaces a documentación adicional y consejos para solucionar errores.
Diseño de aplicaciones de bases de datos SQL AzureJoseph Lopez
Este documento presenta una agenda sobre diseño de aplicaciones de bases de datos SQL Azure. La agenda incluye secciones sobre Windows Azure Storage, componentes, funcionamiento interno, arquitectura, mejores prácticas y una demostración. El orador, José Redondo, es el líder del capítulo de SQL PASS Venezuela.
Este documento resume varios estudios de caso de grandes implementaciones de almacenes de datos con SQL Server. Incluye detalles sobre cómo Microsoft AdCenter maneja cubos de hasta 3,2 TB, cómo Xbox Live usa SSD para mejorar el rendimiento y particiona datos para procesamiento paralelo, y cómo Yahoo! maneja un cubo de 12 TB con particionamiento y almacenamiento en archivos.
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)Micael Gallego
Esta presentación corresponde al "Tema 3: Despliegue de aplicaciones web" de la asignatura "Desarrollo de Aplicaciones Web" de 3º del Grado en Ingeniería del Software de la ETSII en la Universidad Rey Juan Carlos.
Buenas prácticas que debes seguir en la administración de tu SQL ServerSolidQ
El documento habla sobre las buenas prácticas para administrar SQL Server. Señala que es importante la configuración a nivel de sistema de almacenamiento, instancia y bases de datos. También es necesario el mantenimiento de bases de datos y objetos como índices. Además, se debe registrar tendencias y notificar cambios.
El documento habla sobre un evento sobre SQL Monitoring el 16 de Setiembre. Se resumirá las herramientas y técnicas para monitorear SQL, incluyendo el uso de Extended Events para monitorear deadlocks y errores, SQL Performance Dashboard, identificar Missing Indexes desde el query plan, y Performance Point para capturar, analizar y alertar sobre el rendimiento.
El documento presenta el proceso de construcción y despliegue de aplicaciones desarrolladas con GeneXus. Explica los conceptos clave como unidades de despliegue, empaquetado, instalaciones, servidores y ambientes. También describe las herramientas y procesos actuales, y las dificultades encontradas, concluyendo que se necesitan nuevas herramientas para mejorar la automatización y trazabilidad del proceso.
Presentación de Computación en la Nube en el Colegio Cedes Don Bosco, en Alajuelita. Los 5 Pilares de la Computación en la Nube de Oracle. 18 de setiembre del 2013. "La Internet ha madurado. Ya nos más se le llama así. El Internet ha evolucionado y ahora se le llama Computación en la Nube.
Tips en la instalación de Dynamics 365 FO - LBD, 365 SaturdayJuan Fabian
Este documento proporciona instrucciones para la instalación local de Microsoft Dynamics 365 Finance and Operations. Describe los pasos para configurar la autenticación, crear el clúster de Service Fabric, instalar SQL Server, configurar las bases de datos y credenciales, e implementar el agente local. El objetivo es permitir que Dynamics 365 FO se ejecute localmente con la administración a través de LCS en la nube.
Este documento presenta un resumen de cuatro sistemas de gestión de bases de datos: MySQL, Firebird, WebPublisher y Oracle. Describe brevemente las características técnicas, licencias, ventajas y desventajas de cada uno. El documento proporciona información sobre estos sistemas de bases de datos para comparar sus funcionalidades.
Permite la creaciÃ3n de asistentes para guiar al usuario en la
navegaciÃ3n de las páginas.
Editor de páginas: Editor WYSIWYG para crear y editar páginas web.
Plantillas: Posibilidad de crear plantillas para aplicar formatos comunes.
Estilos CSS: Soporte para hojas de estilo en cascada para dar formato a los
elementos.
Importar/exportar: Importar y exportar páginas y contenidos desde y hacia
otros formatos como XML.
Seguridad
Este documento presenta un resumen de cuatro sistemas de gestión de bases de datos: MySQL, Firebird, WebPublisher y Oracle. Describe brevemente las características técnicas, licencias, ventajas y desventajas de cada uno. El documento analiza estas herramientas para proponer cuál sería la mejor opción para un proyecto.
24 HOP edición Español - Patrones de escalalidad en microsoft azure sql datab...SpanishPASSVC
Este documento resume los patrones de escalabilidad en Microsoft Azure SQL Database. Ofrece varias opciones para escalar el rendimiento de forma vertical u horizontal. La escalabilidad vertical se logra cambiando entre los diferentes niveles de servicio (Básico, Estándar y Premium), mientras que la horizontal se logra agregando o eliminando bases de datos. También describe las opciones de sharding para escalar hasta miles de bases de datos y el uso de consultas multi-shard para procesar consultas a través de múltiples shards.
Este documento proporciona una introducción a SQL Server 2008 para desarrolladores. Explica conceptos clave como las bases de datos, las sentencias DDL, DCL y DML de SQL, los nuevos tipos de datos como DATE y DATETIME2, el uso de variables, los procedimientos almacenados, los parámetros de tipo tabla y la nueva sentencia MERGE. También incluye ejemplos de código T-SQL para ilustrar estos conceptos.
La Unión Europea ha acordado un paquete de sanciones contra Rusia por su invasión de Ucrania. Las sanciones incluyen restricciones a las transacciones con bancos rusos clave y la prohibición de la venta de aviones y equipos a Rusia. Los líderes de la UE esperan que las sanciones aumenten la presión económica sobre Rusia y la disuadan de continuar su agresión contra Ucrania.
Este documento describe varias características de Windows Server 2012 para mejorar el rendimiento de aplicaciones web, incluyendo la inicialización anticipada de aplicaciones para acelerar las primeras solicitudes, la regulación dinámica del uso de CPU para evitar monopolizaciones, y el uso de configuraciones compartidas para mantener la coherencia entre granjas de servidores.
Aplicando SQL Server 2016 en Microsoft Azure Virtual MachineJoseph Lopez
En la presente exposición mostrare las diversas caracteristicas que Microsoft Azure Virtual Machine nos ofrece a la hora de implementar una solución virtualizada bajo esta tecnología.
Este documento presenta una sesión sobre los servicios de bases de datos de AWS. Explica que ofrece una variedad de servicios de bases de datos relacionales, NoSQL y de Big Data, cada uno optimizado para diferentes casos de uso. También describe los servicios principales como Amazon RDS, DynamoDB y Redshift, y cómo clientes importantes los usan para solucionar sus desafíos de datos y análisis.
Similar a JBoss AS Cluster - Curso JBoss JB366 Día 4 (20)
1. JBoss
Professional Open Source
JBoss AS
Servicios Web con Axis
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
2. Índice
• ESCALABILIDAD. Diseñando arquitecturas
masivamente escalables.
• ALTA DISPONIBILIDAD. Diseñando una
arquitectura 24x7.
• OPERACION CONTINUA. Estrategias de
despliegue de Aplicaciones.
• GESTIONABILIDAD. Integración con gestión
de Red. Gestion JMX
• ESTANDARES. J2EE 1.4. Roadmap J2EE 5.0.
19 Octubre 2009
César Pajares – ECM /CMS Manager
Novedades.
Curso JBoss JB366
cesarpajares@gmail.com
3. Índice
• IDENTIDAD y SEGURIDAD. Integración del
servidor de Aplicaciones con sistemas LDAP
y SSO
• MERCADO Servidores J2EE. Servidores
OpenSource vs Servidores comerciales
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
4. Contexto
• En la gestión de los proyectos WEB no sólo
es importante la arquitectura de desarrollo
del proyecto, sino que la arquitectura de
sistemas y de operación de la plataforma es
fundamental a la hora de proporcionar la
calidad de servicio requerida por los
usuarios
• Una aplicación funcionalmente perfecta no
servira a su proposito si tiene un tiempo de
respuesta muy lento o tiene una
19 Octubre 2009
César Pajares – ECM /CMS Manager
Curso JBoss JB366
cesarpajares@gmail.com
disponibilidad baja.
5. Objetivos
• Entender las posibilidades de arquitectura
de operación de los servidores de
Aplicaciones J2EE
• Planificar adecuadamente el HW para
conseguir la máximas prestaciones para un
determinado presupuesto económico
• Establecer criterios de decisión para elegir
entre productos OpenSource, versiones
básicas o versiones Enterprise según las
necesidades
19 Octubre 2009
César Pajares – ECM /CMS Manager de cada proyecto
cesarpajares@gmail.com
Curso JBoss JB366
6. ap
lic
ac
ió
n
Servidores de Aplicaciones J2EE
•Concurrency
Presentation
Business Logic
Data access
(optional)
D
es
ar
ro
l
Pr
od
uc
to
•Consistency
•Security
•Availability
•Scalability
•Administration
•Integration
•Distribution
Components
lo
C
om
er
ci
al
Containers
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
10. • Cómo¿Qué es escalabilidad?cuando
se comporta una arquitectura
únicamente aumenta la carga del sistema y
los demás parámetros se mantienen
constantes
• Idealmente la escalabilidad debe ser lineal,
es decir si la arquitectura soporta N
usuarios, y se doblan los recursos de la
arquitectura, entonces soporta 2xN usuarios.
• Escalabilidad vertical: Aumentando el
numero de CPUs, y memoria de los mismos
19 Octubre 2009
César Pajares – ECM /CMS Manager
servidores
Curso JBoss JB366
cesarpajares@gmail.com
11. Balanceo de carga
3 DNS GLB
San Diego
Server
Local DNS Server
192.10.1.50
• Balanceo de carga basado en DNS
New York
San Francisco
Server
Local DNS Server
10.10.1.50
New York
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
12. Balanceo de Carga
GLB
Client 1
San Francisco Local LB
Server
Set-Cookie
: Site
Francisco; =San-
• Balanceo de carga basado en Cookies
Client 2
Server
New York Local LB
Set-Coo
kie: Site=
N
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
ew York;
Server
Server
19 Octubre 2009
Curso JBoss JB366
13. StickyR11
round-robin load balancing
Client 1
R12
Cookie :
instance=server1
Load Balancer
R11
R12
Servlet (HTTP
Session)
Server 1
R21
R21
Client2
Rij = jth request from client i
Cookie :
instance=server2
Servlet (HTTP
Session)
Server 2
Cluster
Permite que dirigir cada usuario a un mismo servidor durante el
ciclo de vida de la sesión en la información de sesión
Implementación mediante cookies de sesión de navegador 2009
19 Octubre
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Curso JBoss JB366
14. Diseño de los plugins de
servidor Web
• Persistencia del servidor basada en Cookies
• Cookie Pasiva:
.jsp
o rl d
w
ello
T /H
– Mantenimiento Server/LBpersistencia basado en la cookie
Web de la
GE
543 4
generada por el servidor de aplicaciones
5 4!4
47
GET /Helloworld.jsp
49 ! 1
14754
34528
GET /index.jsp
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Server1
Server 2
98402
Server 3
JSE
JS
ES
f1
D=s
O NI
SSI
SI
ON
GE
T
ID
=a
3
/ind
1K
Server 1
D
Server 2
ex.
z0
!98
4
js p
02
!45
43
4
Server 3
19 Octubre 2009
Curso JBoss JB366
15. Diseño de los plugins de servidor
Web basada en Cookies
• Persistencia del servidor
• Cookie Activa
─ El servidor Web o balanceador genera sus
propias cookies
JSESSIONID=sf1
d49;Server=Serve
r-1
Web Server/LB
GE T
/Hellowor
ld.jsp
Server-1
Server-2
e
=a31Kz0;Serv
JSESSIONID
3
r=Server-
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
SSIO
JSE
=s f 1
NI D
Server 1
;
D49
Server 2
Server-3
.jsp
dex
/in
GET
Server1
ell
T /H
GE
.jsp
o rl d
ow
Server 3
Server 2
GET /index
.jsp
JSES
SION
ID=a
3
1Kz0
;
19 Octubre 2009
Curso JBoss JB366
Server 3
16. Diseño de los plugins de servidor
Web
• Protocolos de gestión de servidores de
aplicaciones en los balanceadores
─ Registro Estático
─ Registro Dinámico
─ Protocolo IP Multicast
─ Notificaciones en arranque / parada
─ F5 proporciona un API SOAP para conseguirlo
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
17. Arquitectura con Balanceador
HW y Servidores WEB
Firewall
Load
Balancer
Web
Server
Plug-in
App Server
SE
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Web
Server
Plug-in
Web
Server
Plug-in
App Server
App Server
SE
SE
cluster1
Firewall
App Server
SE
19 Octubre 2009
Curso JBoss JB366
18. Escalabilidad en una topología de 112 CPUs con altaCPU's
AS
HADB
in
disponibilidad a nivel de sesión Scalability Cluster
Instances Nodes
Web
Server
Plug-in
Round Robin LB
with HTTP Session Affinity
Business Logic
App Server
EE
2 Instances
App Server
EE
2 Instances
App Server
EE
2 Instances
App Server
EE
2 Instances
App Server
EE
2 Instances
2
4
8
12
14
4
8
16
24
28
App Server App Server
EE
EE
2 Instances 2 Instances
100%
95%
87%
75%
70%
16
32
64
96
112
V880 (1G RAM per CPU,
1.2GHz Ultra Sparc 3)
14 App. Server Instances
8 CPU's Per Server x 7
=56CPU's
HADB
4 N odes
HADB
4 N odes
HADB
4 N odes
HADB
4 N odes
HADB
4 N odes
HADB
4 N odes
HADB
4 N odes
V880 (1G RAM per CPU,
1.2GHz Ultra Sparc 3)
28 HADB Nodes
Session Replication: HTTP Session and Stateful Session Beans
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
8 CPU's Per Server x 7
=56CPU's
19 Octubre 2009
Curso JBoss JB366
19. ¿Que Factores escalabilidad?
influye en la de Escalabilidad
• El diseño de la aplicación
• Requisitos de Alta disponibilidad y nodos del
Cluster
• Coste de la comunicación entre servidores y
nodes
• Mecanismos de comunicación con el
backend donde se almacenan los datos
(Base de Datos, Host, Sistemas ERP,
19 Octubre 2009
César PajaresSistemas CRM, etc)
– ECM /CMS Manager
cesarpajares@gmail.com
Curso JBoss JB366
20. Factores disponibilidad y nodos
Requisitos de Altade Escalabilidad del
Cluster
• Número de nodos de un cluster
– Cuanto más nodos, mayor coste de comunicación
– La transferencia de datos puede inundar el
sistema
• La eficiencia de los balanceadores
– Detección de caidas de servidores de aplicaciones
• Los costes de replicación de datos se
incrementan con el número de nodos
– Se puede mitigar con estrategias de replicación
19 Octubre 2009
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Curso JBoss JB366
21. Factores de Escalabilidad
Consejos sobre nodos del Cluster
• Tamaño del cluster
– A menor número de nodos la escalabilidad es
mayor
• Comunicación entre los nodos del cluster
– “Sesión replicada en todos los nodos”—funciona
bien para un número de nodos pequeño (2,3,4)
– “Principal/ Secundario”—cada nodo tiene una
réplica con la sesión almacenada de manera
pasiva
César Pajares – – “Nodos totalmente independientes que 19 Octubre 2009
ECM /CMS Manager
cesarpajares@gmail.com
Curso JBoss JB366
22. Multi-Cluster
S1 WS 6
LBP
HTTP(S)
S1 AS 7
Instance S1 AS 7
Instance
S1 AS 7
Instance
HADB
Cluster A
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
S1 AS 7
Instance
S1 AS 7
Instance S1 AS 7
Instance
S1 AS 7
Instance
HADB
S1 AS 7
Instance
Cluster B
19 Octubre 2009
Curso JBoss JB366
23. Factores de Escalabilidad
Consejos de Alta Disponibilidad
• Determinar el nivel requerido de tolerancia
a fallos
– Cuanto menos datos tenga que replicar mejor
– Cuanto mayor sea la frecuencia de replicación
mejor
• Planificar el crecimiento en escalabilidad
– Elegir estrategias que permitan mayor
escalabilidad como almacén de sesiones
independiente en caso de previsión de
19 Octubre 2009
César Pajares – ECM /CMS Manager
Curso JBoss JB366
cesarpajares@gmail.com
crecimiento
24. Matriz con tipo de persistencia, frecuencia, y
ámbito
Persistence-type
memory
file
ha
ha
ha
ha
ha
ha
Persistencefrequency
stopserv*
time-based*
time-based
time-based
time-based
web-event
web-event
web-event
Persistencescope
session
modified-session
modified-attribute
session
modified-session
modified-attribute
Supported in
7.0PE
7.0PE
7.0EE
7.0EE
7.0EE
7.0EE
7.0EE
7.0EE
* :- These are not the supported values for this property
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
25. Escalabilidad
El problema y Alta Disponibilidad en J2EE™
• Soporte de clustering de Servidores
– Balanceo de carga entre instancias
– Gestión del failover entre instancias
• Garantizar alta disponibilidad de datos
– Información de sesión de cliente (con
autenticación)
– Datos de negocio almacenados en base de datos
– Mensajes pendientes de procesamiento
• Garantizar alta disponibilidad de servicios
19 Octubre 2009
César Pajares – ECM /CMS Manager
Curso JBoss JB366
cesarpajares@gmail.com
J2EE
26. Escalabilidad
La solución y Alta Disponibilidad en J2EE™
• Los fabricantes proporcionan guías de
configuración y arquitecturas de alta
disponibilidad en las versiones Enterprise
• Ajustar la arquitectura de sistemas a los
requisitos de Escalabilidad y Alta
Disponibilidad
• Guías de diseño y codificación
– Mantener la sesión de usuario lo más pequeña
posible
19 Octubre 2009
César Pajares – ECM /CMS Manager
– Pensar inicialamente que la aplicación debe JB366
Curso JBoss
cesarpajares@gmail.com
27. Balanceo de carga de peticiones
Características
HTTP
• En general implementado en los plugin de los
servidores WEB
• Algoritmos de balanceo
– Round-robin
– Round-robin con pesos
– Basados en el tiempo de respuesta
• Asignación de clientes a instancias (stickiness)
• Monitorización de disponibilidad de
instancias
19 Octubre 2009
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Curso JBoss JB366
34. ¿Que es Alta Disponibilidad?
El porcentaje del tiempo que el sistema
entrega una respuesta correcta dentro de un
determinado intervalo de tiempo.
A=
MTBF
MTBF + MTTR
MTBF
MTTR
MTBF == Mean Time Between Failure
MTTR == Maximum Time to Repair
• “5–Nueves” 99.999% ~5 Min. Caida / Año
> Incluyendo paradas planificadas y no planificadas
> Implica un alto de grado de tolerancia a fallos
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
35. Alta dispnobilidad de servicio
Firewall
Load
Balancer
Web
Server
Plug-in
App Server
SE
Web
Server
Plug-in
Web
Server
Plug-in
App Server
App Server
SE
SE
cluster1
• Failover automático
– Detección de caidas de
servicio
– Asignación de nueva
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
instancia
Firewall
App Server
SE
> Muy eficiente en coste
> Para aplicaciones sin
sesión o cuya pérdida no
sea grave para el19 Octubre 2009
servicio
Curso JBoss JB366
36. Alta Disponibilidad de Sesión
• Aplicaciones de
Misión Crítica
Firewall
Load
Balancer
Web
Server
Plug-in
App Server
EE
Web
Server
Plug-in
App Server
EE
App Server
EE
Shared Nothing Architecture
HADB
cluster1
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Web
Server
Plug-in
App Server
EE
Firewall
– Servicio 24x7
– Sesión y
estado
siempre
recuperable
– Fallos
transparentes
al usuario
19 Octubre 2009
Curso JBoss JB366
37. Failover de la sesión HTTP
Servlet (HTTP
Session)
Server 1
Load Balancer
Servlet (HTTP
Session)
Http
Session
Persistenc
e
Session
Store (or
replicatio
n
Server 2
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Cluster
19 Octubre 2009
Curso JBoss JB366
38. Failover de la sesión HTTP
Servlet (HTTP
Session)
Server 1
Load Balancer
Http
Session Session
Persistence Store (or
replicatio
n
Servlet (HTTP
Session)
Server 2
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Cluster
19 Octubre 2009
Curso JBoss JB366
39. Replicación en memoria
Failover de la sesión
Client
Req1
Req 2 Load- Req1
Cookie :
balancer Req2
primary=server1
secondary=server2
Procesa la petición y
envía la respuesta
Server1 se cae entre la
petición Req1 y la
petición Req2
HTTP
Otras instancias
del cluster
Servlet (HTTP
Session)
Server
1(primary)
Replicación sesión
Servlet (HTTP
Session)
Server
2(secondary)
Cluster
Después del failover, el servidor2 pasa a ser el primario
Se crea un tercer servidor secundario, si el servidor 1 queda in
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
40. Failover de la sesiones
Usando un repositorio desesión HTTP
Req1
Req1
LoadClient Req2 balancer Req2
Procesa la petición y
envía la respuesta
Server1 se cae entre
la petición Req1 y la
petición Req2
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Servlet (HTTP
Session)
Server 1
Servlet (HTTP
Session)
Sesión guardada
en el repositorio
Session
Repository
Sesión recuperada
del repositorio
Server 2
Cluster
19 Octubre 2009
Curso JBoss JB366
41. Estrategias para el Failover de la
Frecuencia desesión HTTP
la persistencia
• Configuración específica de cada fabricante
• Se puede configurar para persistir las
sesiones al final de la petición http, o bien
en background, cada cierto tiempo
• La estrategia basada en tiempo da una
mejor latencia pero con el riesgo potencial
de pérdida de la información del último
minuto
19
César Pajares – ECM /CMS Manager
• Algunos fabricantes proporcionan APIs Octubre 2009
para
Curso JBoss JB366
cesarpajares@gmail.com
42. Estrategias para el Failover de la
sesión
Ámbito de la persistencia HTTP
• Configuración específica de cada fabricante
• Sirve para reducir el volumen de datos a
persistir
• Por defecto siempre se escribe toda la
sesión en el almacen de persistencia
• Se pueden configurar otros ámbitos:
– Sesión modificada
– Atributo Modificado
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
43. Balanceo de carga y Failover
Técnicas invocaciones a EJB™
• InitialContextFactory específico del vendedor
– Se distribuyen las siguientes llamadas a las
diferentes instancias del cluster con una política
round-robin:
• New InitialContext()
• InitialContext.lookup()
• IORs con información de cluster
– Los IOR incluyen información del servidor donde
se generan, y el cliente reintenta las peticiones
César Pajares – ECM /CMSotro nodo en caso de que uno de los19 Octubre 2009
con Manager
Curso JBoss JB366
cesarpajares@gmail.com
44. Balanceo de carga y Failover
invocaciones a EJB™
Optimizaciones para evitar congestion en la red
• Afinidad de Servidor
– Las llamadas a los EJB por parte del mismo
cliente siempre se hacen al mismo servidor,
minimizando el número de conexiones abiertas
simultaneamente
• Colocalización: Útil para Servlet llamando
EJB
– Los servlets llaman al EJB local, dentro de la 2009
19 Octubre
Curso JBoss JB366
misma JVM, en vez de balancear las peticiones.
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
45. Failover de Stateless Session
Beans
Usar cualquier otra instancia del cluster
• Secuencia de eventos
– El Cliente detecta un fallo en la invocación
– El Cliente identifica un endpoint IIOP alternativo
– El Cliente reinvoca la petición
– Cualquier instancia del SLSB sirve para gestionar
la invocación ya que no existe información de
estado asociada.
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
46. Failover de Stateful Session
Se requiere Checkpointing
Beans
• Las actividades del Client son las mismas que
en el caso de SLSB excepto:
– La instancia asignada para ejecutar la llamada
debe reconstruir la información de estado, o
bien de repositorio o bien de otra instancia
replicada
• Problemas:
– Las invocaciones de SFSB pueden ser
transaccionales— el checkpointing se puede
hacer sólo al final de la transacción o del
19 Octubre 2009
César Pajares – ECM /CMS Manager
método si no la hubiera
Curso JBoss JB366
cesarpajares@gmail.com
47. EJB™ Stateful Session Bean Failover
ShoppingCart
Bean1
O
CartClient R
B
Server 1
Session
Store
(or replication)
ShoppingCart
Bean
Server 2
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Cluster
19 Octubre 2009
Curso JBoss JB366
48. EJB™ Stateful Session Bean Failover
ShoppingCart
Bean1
O
CartClient R
B
Server 1
Session
Store
(or replication)
ShoppingCart
Bean
Server 2
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Cluster
19 Octubre 2009
Curso JBoss JB366
49. Arquitectura Altamente
Firewall
Disponible
Load Balancer
Load Balancer
Web
Server
Plug-in
Web
Server
Plug-in
Load
Balancers
Web
Server
Web Servers
Plug-in
Firewall
App
Server
EE
App
Server
EE
App
Server
EE
App
Server
EE
Backing Store or Memory Replication
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
App
Server
EE
App Servers
Backing Store
or Memory
Replication
19 Octubre 2009
Curso JBoss JB366
50. ¿Que es tiempo que el sistema
El porcentaje delAlta Disponibilidad?
entrega una respuesta correcta dentro de un
determinado intervalo de tiempo.
A=
MTBF
MTBF
MTBF + MTTR
MTTR
MTBF == Mean Time Between Failure
MTTR == Maximum Time to Repair
• “5–Nueves” 99.999% ~5 Min. Caida / Año
> Incluyendo paradas planificadas y no planificadas
> Implica un alto de grado de tolerancia a fallos
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
51. Fiabilidad
Conceptos
y Alta Disponibilidad
• MTTF—Número /Frecuencia de Fallos
• MTTR—Duración de los fallos (Time to
Repair)
• Alta fiabilidad no implica Alta Disponibilidad
– 1 fallo —1hora para recuperarlo—Alta fiabilidad
pero Baja Disponibilidad
– 60 fallos —1 segundo para recuperarse de cada
fallo. Baja fiabilidad pero Alta Disponibilidad
• Incluso con un sistema poco fiable
19 Octubre 2009
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
(máquinas baratas) puedo tener Alta Curso JBoss JB366
52. ¿Garantizan los servidores de
aplicaciones la alta
disponibilidad?
• Los fabricantes se esfuerzan en lograr que
esto sea verdad y en aislar a los
desarrolladores y operadores de
complejidad innecesaria.
• El objetivo de los servidores de aplicaciones
es que un cluster de servidores se comporte
como un único servidor escalable, un
servidor tolerante a fallos virtualizado
• La /CMS Manager
19 Octubre 2009
César Pajares – ECM disponibilidad no es gratuita
cesarpajares@gmail.com
Curso JBoss JB366
53. ¿Tiene algun coste activar la alta
disponibilidad?
• La alta disponibilidad de sesión implica una
replicación de esta información en
diferentes nodos. Por tanto tiene los
siguientes costes:
– Memoria para guardar las sesiones replicadas
– Tráfico de red mientras se produce la
replicación
– Ciclos de CPU para gestionar la replicación
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
54. Error 1: Las aplicaciones no se
tienen que ocupar de la Alta
Disponibilidad sino los productos
de Servidor
• Las sesiones HTTP y los EJB de estado debe
ser serializables
– Consejo: las aplicaciones deben hacer el menor
uso posible de los objetos de sesión
• Previsión de posibles excepciones:
– Los fallos que causen expeciones que no deban
ser motivo de failover deben ser tratados
específicamente para prevenir el posible 19 Octubre 2009
failover
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Curso JBoss JB366
55. Error 2. Todas las peticiones son
idempotentes
• “La idempotencia es la cualidad de algo que
tiene el mismo efecto si se usa múltiples
veces que si sólo se usa una”
• Ejemplos de operaciones idempotentes
– “Fijar la temperatura de la habitación a 23º”
– Cualquier operación de lectura
• Muchas (la mayoría) no son idempotentes!!!
– “Incrementa la cuenta en 20”
César Pajares – ECM /CMS Manager
– “Pasa al estado siguiente”
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
56. Error 2. Todas las peticiones son
idempotentes
• Las peticiones no idempotentes pueden
afectar a la integridad de los datos si se
repiten
• Failover implica reintentos en operaciones
de negocio
– Muchas (la mayoría) de las operaciones de
negocio no son idempotentes
• Cuidado con funcionalidad del tipo failover
19 Octubre 2009
César Pajares transparente
– ECM /CMS Manager
cesarpajares@gmail.com
Curso JBoss JB366
57. Error 2. Todas las peticiones son
idempotentes
• Peticiones HTTP
– Algunos balanceadores soportan failover
transparente sobre peticiones idempotentes
• Usar con precaución. Hacer un análisis previo.
• No poner en riesgo la integridad de los datos
• Peticiones RMI/IIOP
– Los buenos orb distinguen los estados de “no
completada”, “si completada” y “en duda” y el
César Pajares – ECM /CMS Manager
failover solo se debería hacer en el primer 19 Octubre 2009
caso
Curso JBoss JB366
cesarpajares@gmail.com
58. Error 2. Todas las peticiones son
idempotentes
• Mensajes JMS(entrada de MDB’s)
– Usar la transacción manejada por el contenedor
para onMessage()
– El envio de duplicados es posible, la aplicación lo
debería tener en cuenta (también en el origen)
– Ayudas para determinar el reenvio de mensajes:
• getJMSRedelivered()
– “Es probable aunque no se garantiza que el mensaje fue entregado
anteriormente pero su recepción no fue confirmada entonces
• getJMSCorrelationID()
César Pajares – ECM /CMS Manager
cesarpajares@gmail.comÚtil en situacioens
–
donde los mensajes son
19 Octubre 2009
Curso
correlados JBoss JB366
60. Error 3. Usar las sesiones HTTP o
EJBs como una Base de Datos
• Guardar demasiados datos en las sesiones
– En una sola instancia—“sólo” un problema de
memoria
– En clusters, un impacto directo al rendimiento,
escalabilidad y alta disponibilidad
• No tienen transaccionalidad
– No se garantiza sincronización con el back-end
– En caso de failover se puede romper la
sincronización
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
61. Error 4. Los upgrades y parches
no afectan a la Alta
Consejo: Probar con Rolling Upgrades y
Disponibilidad
Quiescence
• Que es quiescence
– Algunos balanceadores lo soportan a dos
niveles:
• Instance-level quiescence
• Application-level quiescence
• En entornos de producción probar primero
en entornos de certificación o pruebas
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
63. Application Quiescing
Load
Balancer
Old version
of app
Disabled
cluster
S1
S1
S2
S3
Load
Balancer
S2
S3
S4
C1
C2
New version
of app
Load
Balancer
S2
S3
S4
C1
S1
Two versions
of the app are
being serviced
Load
Balancer
S4
Cluster
with upgraded
C1
apps
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
S1
C2
S2
S3
C1
S4
19 Octubre 2009
Curso JBoss JB366
64. Alta Disponibilidad de Sesión
• Aplicaciones de
Misión Crítica
Firewall
Load
Balancer
Web
Server
Plug-in
App Server
EE
Web
Server
Plug-in
App Server
EE
App Server
EE
Shared Nothing Architecture
HADB
cluster1
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Web
Server
Plug-in
App Server
EE
Firewall
– Servicio 24x7
– Sesión y
estado
siempre
recuperable
– Fallos
transparentes
al usuario
19 Octubre 2009
Curso JBoss JB366
65. Persistencia a velocidades de
memoria con alta disponibilidad de
5 nueves
Instance
Instance
11
2. Fast
synchronous
memory to
memory
replication across
nodes, JVM freed
quickly
S1
S0
Instance
Instance
22
1. Real time in-memory writes
from JVM heap to HADB
Memory Cache
HADB in-Memory Cache
Memory
Memory
NODE
0 S0
NODE
S0
1
S1
S1
HADB - Disk
3. Asynchronous writes to HADB
> Always-On - Automatic
> Self Repairing
S0
César Pajares – ECM /CMS Manager
S1
cesarpajares@gmail.com
S0
S1
> No intervention
19 Octubre 2009
> Massively Scalable
Curso JBoss JB366
67. Arquitectura de datos y acceso
Synchronous Replication:
Data Distribution:
Updates are synchronized
across both copies of the data
From the outside, the cluster
Is invisible, and Clustra looks
like a single-image database
Tables automatically distributed
across active nodes
Fragments
Table T
0
1
2
3
4
5
0
DRU 0
DRU 1
NODE
0
0
NODE 0
1
NODE 2
2
NODE 2
3
NODE 4
4
NODE 4
5
1
1
2
3
4
5
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Transparency:
3
5
NODE
6
JDBC
1
3
Load balancing:
5
Connections automatically
shared across all nodes
NODE
7
Site
19 Octubre 2009
Curso JBoss JB366
75. App Server 8.1 EE
Dominios Administrativos
Admin Domain A
I-1
I-2
I-3
I-4
Admin Domain C
I-5
Admin Domain C
I-8
I-7
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
76. Servidor de Administración
Firewall
asadmin CLI
asadmin CLI
http(s)
Administration Server
Instance
Admin Servlet
http(s)
Admin GUI
JATO
Sun JAVA Studio
http(s)
Debugging
Navegador (Firefox, IE)
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
Applications &
Configuration
Sun JAVA Studio
write
read
Server
Server
Server
Server
Instance
Instance
Instances
Instances
Instance
Instance
rmi/iiop(s)
App Client
App Client
Container
Container
19 Octubre 2009
Curso JBoss JB366
77. Viewing Monitoring Data - GUI
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
78. Jboss AS 5.1.0 Instalación
GET JBOSS 5!
Questions?
César Pajares – ECM /CMS Manager
cesarpajares@gmail.com
19 Octubre 2009
Curso JBoss JB366
Notas del editor
This is a technical diagram of the functionality that is included with the Sun ONE Application Server, Enterprise Edition. The two key features that provide high-availability for the application server environment is load-balancing at the front-end and fail-over on the back-end.
There are three key components to Sun's new “Always On”, Continuous Availability solution. First … the “Always On” technology provides five 9’s availability for application session state. This means that through integrated load-balancing and a scalable underlying architecture, an end users’ experience is not interrupted if an application failure occurs.
Second … the “Always On” technology is “Self Repairing”. This is instrumental in providing continuous availability for application session state. With its Self Repairing capabilities, user intervention is virtually eliminated when a failure occurs. The application server itself has the ability to determine the root cause of the failure and, in most cases, restore the failed system to its original condition.
The third component of the Sun ONE App Server “Always On” technology is an integrated management view across the app server and the high availability subsystem. This ensures that the look and feel of the app server configuration and management is consistent across all components of the app server.
Shared Nothing, Loosely Coupled Architecture. Elegance through Simplicity
JVM relegated to run Business Logic /process J2EE Artifacts (no session replication across VM's ). Simplifies LB
Replication in Separate External tier HADB (not JVM)
Competitors:
Discourage persistence to Database, non-performant (synchronous writes to disk)
Session Replication between JVM is not a scalable reliable mechanism to exchange and store and mission critical information
Failure prone, replication errors impact business logic
No additional licensing (CPU fees) to process HADB on separate tier from J2EE Application Server tier
Failures fall into two categories: soft failure, where the failure is due to a process or software failure, and hard failures, where a machine crashes or you loose power.
1: Here we have a situation were node 0 has suffered a “soft failure”, for example a database process has failed. Any transactions using data on node 0 will be aborted, the applications will need to retry them. Also all clients connections to node 0 will be disconnected.
2: Node 0 will not be able to exchange “I'm alive” messages with its neighbors and will be determined as dead. At this time the hot-standby fragment on the mirror node will become available.
3:Automatically the database will restart the failed node. Log records of any transaction that came in while node 0 was down are shipped from the mirror node to node 0, and the data is resyhchronized.
4: Once node 0 is resynchronized, it rejoins the other nodes, and we are back to our orginal configuration.
Note, no human intervention is required. From the detection of the failure, to restarting and resynching the nodes – it is all automatic to the database software. Also the database is still available while the self-repair takes place.
1: Now lets consider node 0 has suffered a power outage.
2: Once again failure will be detected due to the missing heart beat from node 0. Node 1 activiates the hot-standby fragment. Performance in fact goes up slightly during this time as only one copy is being made.
3: In this case node 0 will not restart. The nodes will give the failed node a time window in which to restart, once that window has elasped they will initiate a repair to a spare. All data and log records from node 1 will be copied down to the spare node in the DRU of the failed node, the fragments will then be rebuilt. Time taken to complete this procedure depend on the amount of data stored on the node, ie: 5 GB of data (plus another 5 for the copy) will take around 30 minutes to copy, depending on the speed of the interconnects. It is at this time that the database is most vulnerable to a “double failure”; a failure on node 1 would require the database to be stopped and restored from backup. Storing less data per node will bring this window of vulnerability down because the transfer times are faster.
4: Once the repair is complete the spare node becomes active.
Note; while the repair in underway performance will drop because of the extra work being done. One important issue to always consider when deploying highly available systems is that you should always plan for considerable overhead in processing and storage capacity to handle such recovery operations.
Again this process requires no human intervention and the database is available at all times.