WebCast: Manejo de mensajes grandes con Microsoft BizTalk Server 2006 Tomás Hernández García – Consultor ilitia Technologies SRL (MCTS BizTalk 2006, MCAD.NET)

Slides:



Advertisements
Presentaciones similares
Descripción general de la presentación
Advertisements

Código: HOL-SQL29. Permite la encriptación de ficheros de registro y de datos mediante clave de encriptación de datos (Database Encryption Key) Encriptación.
para Exchange Archivo del correo interno y externo
XBRL: Aplicación XML a gran escala Canales de Acceso Orquestador / Integrador Servicios de Infraestructura Servicio Logs Generación InformesServicio Directorio.
BizTalk Server 2006: Sistemas Distribuidos Kabel Sistemas S.L.
BizTalk Server 2006 & Test Driven Development Kabel Sistemas S.L.
3/24/2017 3:59 PM © Microsoft Corporation. All rights reserved.
© 2006 Microsoft Corporation. All rights reserved.
Diseño de Aplicaciones SOA usando Visual Studio Team System
Nuevas tecnologías en Office System
Implementación de SQL Server 2000 Reporting Services
¿Está utilizando todo el potencial de Microsoft SQL Server? Fernando Bocigas SQL Server Product Manager Microsoft Ibérica S.R.L. 16 de Marzo de 2005 Fernando.
BizTalk Server como ESB
Software Testing Héctor Santa María..
Hardware y Software de servidor
Planificación de Monoprocesadores
Guido Rubin Escalabilidad.
Administración de archivos de bases de datos
I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís
Database Mounting Tool (Dsamain.exe) Mediante esta nueva herramienta y una de las mejoras de la nueva versión de Ntdsutil… podemos generar y examinar.
Virtual PC.
Erick Stephens Director Nacional de Tecnolog í a Microsoft.
Subir Ficheros al Servidor con PHP José Sánchez Galvañ.
System Center Reporting Manager 2006 Implantación y configuración Joshua Sáenz G Joshua Sáenz G
BITLOCKER Fernando Guillot Paulo Dias IT Pro Evangelist Microsoft
Systems Management Server 2003 Santiago Pastor Zaltor Soluciones Informáticas.
Jefe de Producto de SQL Server y Business Intelligence
David Cervigón Luna IT Pro Evangelist Microsoft Ibérica
Service Pack 1 Nuevas posibilidades de virtualización Paulo Dias IT Pro Evangelist Microsoft Fernando.
Seguridad y Privacidad
I Conferencia sobre Business Intelligence de Microsoft 1.
Windows XP sp3.
Servidores de Archivo SX-520 de XenData Una serie de servidores de archivo LTO basados en estándares IT, diseñados para los exigentes requisitos de la.
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
1.1.2 Sistemas de información para la gestión y para la ayuda en la toma de decisiones. Los SI contribuyen activamente a la consecución de los objetivos.
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Windows Server 2003 Tests de rendimiento Comparación con Microsoft Windows ® NT Server 4.0 y Microsoft Windows Server ™ 2000 Fuente: VeriTest.
Código: HOL-WIN51. Introducción a Windows Server 2008 Novedades en Windows Server 2008 R2 Actualización a Windows Server 2008 R2 Implantación Instalación.
POP3 UCLV Mapas Conceptuales para la enseñanza de Redes de Computadoras.
Administración de Memoria Memoria Virtual
presentación de LA VIRTUALIZACION
Memoria Cachés. Universidad de SonoraArquitectura de Computadoras2 Introducción Caché es el nivel de memoria situada entre el procesador y la memoria.
A demanda elástica De amplio Acceso Servicios medibles Recursos mancomunados.
Soporte HW para Administración de Memoria Cecilia Hernández
O Funcionamiento, ventajas y alcance o ESTUDIANTE: EDWIN ARAY VÉLEZ o PROFESOR: ING. JOSÉ MEDINA o FUNDAMENTOS TECNOLÓGICOS DE INFORMACIÓN.
Un sistema de gestión de bases de datos: Es un conjunto de programas que permite a los usuarios crear y mantener una base de datos. Por tanto, el SGBD.
 DirectX 10 (Library) Evolución de la API C++, C# (Manejado)  XNA (Framework) Principio de Hollywood Solo rellenar ○ Método Update ○ Método Draw.
Alejandro García Sánchez Readiness Champion.. Licenciamiento para Pequeñas y Medianas Empresas Como Elegir el licenciamiento Correcto Preguntas y Respuestas.
MEDIOS DE ALMACENAMIENTO
Silverlight Pablo Michelis Gerente de Relaciones Académicas Microsoft Cono Sur.
“condición que necesita el usuario para resolver un problema o conseguir un objetivo determinado”. Los requisitos de un sistema son los aspectos que el.
TARJETAS DE RED.
I Conferencia sobre Business Intelligence de Microsoft Fernando Bocigas Jefe de Producto de SQL Server y Business Intelligence Microsoft Ibérica.
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 20 La mayor parte del contenido de estas láminas, ha sido extraído del libro Computer Organization and.
Sistemas de Archivos Sistemas Operativos.  Se debe proporcionar un almacenamiento secundario que respalda a la memoria principal  El Sistema de archivos.
Rendimiento de la CPU y sus factores
Unidad 2 – Gestión de Procesos
Introducción a .NET Nombre : Ethel García-Simón Matachana
Pasos a seguir para asociar un MCP o una persona a la empresa
TALLER DE SISTEMAS OPERATIVOS
Tecnologías Cliente / Servidor Capitulo II Richard Jiménez V. clienteserver.wordpress.com.
UNIDAD 1. ORGANIZACIÓN BÁSICA Y DISEÑO DEL COMPUTADOR
Virtualización en Windows 7 Paulo Dias IT Pro Evangelist Microsoft Fernando Guillot IT Pro Evangelist.
DISCOS RAID (Redundant Array of Independent Disks)
1 RAID (Redundant Array of Inexpensive Disks). RAID Una serie de sistemas para organizar varios discos como si de uno solo se tratara. Haciendo que trabajen.
LA CAPACIDAD DE LA MEMORIA. Nombre: Bryan Galarza Muñoz. Curso: 5143.
BUSINESS T&G Think & Grow Uniclass Business Intelligence La solución Business Objects que analiza los procesos de su negocio.
© 2012 Microsoft Corporation. All rights reserved. This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED,
El Sistema Operativo es el software básico necesario para el funcionamiento de cualquier ordenador Los Sistemas Operativos están en continua evolución.
Crear Referencias Febrero 10, Ingresar al portal Ingresar a la siguiente url: Ya que se haya entrado a la URL.
Transcripción de la presentación:

WebCast: Manejo de mensajes grandes con Microsoft BizTalk Server 2006 Tomás Hernández García – Consultor ilitia Technologies SRL (MCTS BizTalk 2006, MCAD.NET) Blog: Mail:

Así es ilitia Technologies  Dedicada al desarrollo de aplicaciones de software y a la consultoría en TI  Expertos en e-(commerce, government, business)  Expertos en EAI con BizTalk 2006  Microsoft Gold Partner  Information Worker  Bussines Process and Integration

Resumen  Definición de Mensaje grande  Problemas asociados a mensajes grandes  Factores que afectan a su procesado  Mitigación  Técnicas recomendadas  Demo  Links de interés

Definición de mensaje grande  Es imposible de definir  Depende de:  Capacidad de Hardware  Número de mensajes esperados (no es lo mismo 100 mens/h o 100 mens/s)  Una aproximación podría ser esta: Tamaño mensajeDefinición (sugerencia) < 10 KbIdeal < 100 KbPequeño 100 Kb – 1 MbMedio 1 Mb – 5 MbGrande + 5MbMuy Grande

Definición de mensaje grande  Qué se hace con el mensaje en BizTalk?

Problemas asociados a mensajes grandes (1)  Problemas de memoria:  Algunos procesos (como mapeos, validación, promoción de propiedades) leen el mensaje entero en memoria  Parseo a XML  Problemas de Rendimiento  Si los mensajes no se cargan en memoria BizTalk los guarda directamente en la MessageBox usando XmlReader (streaming, mínimo uso de memoria) 1 Mb en plano ≈ 10 Mb en XML

Problemas asociados a mensajes grandes (2)  Latencia en la transmisión de datos  Ancho de banda en la red  Procesador: encode/decode, encrypt/decrypt  Almacenamiento: colas y procesos  Persistencia: tamaño y tiempo

Factores que afectan a su procesado (1)  Tamaño mensaje original  Obviamente cuando más pequeño mejor  Formato:  XML: Cualquier proceso que no sea routing BizTalk requiere este formato  Flat Files: Parsear de plano a XML impacta en el rendimiento y en el tamaño del mensaje  CDATA: Incluir un mensaje plano en esta sección de un XML es problemático porque obliga a cargarlo en memoria para acceder al contenido  Cifrado a nivel de mensaje

Factores que afectan a su procesado (2)  Tipo de Procesado:  Sólo Routing: el mensaje se guarda en la MessageBox usando streaming:  Mínimo uso de memoria. No hay riesgo de falta de memoria  Puede tardar en caso de ficheros de más de 100 Mbs  Está probado que BizTalk puede enrutar ficheros de más de un 1Gb  Mapping: las transformaciones usando mapas cargan el mensaje en un XPathDocument (pudiendo aumentar su tamaño 10 veces)

Qué preguntarte? Mensaje ¿Siempre son grandes? O sólo algunos. Media de tamaño. Formato de la información. Es XML? ¿Es grande porque es XML o Base64? Procesos ¿Cuántos procesos usan esos mensajes? Qué pico y media de mensajes grandes recibidos se espera Sólo routing o habrá que mapear, acceder al contenido… Otras ¿Cual sería el rendimiento esperado? ¿Los mensajes están encriptados? Por el transporte o a nivel de mensaje

Mitigación (1)  Escalar Hardware: siempre ayuda  Evitar compresión a nivel de mensaje. Mejor en la capa de transporte  Uso de streaming. Para evitar manejar el mensaje entero en memoria  Evitar el uso de Base64-encoding  Evitar persistencia innecesaria en orquestaciones  Copiar datos del body al contexto  Hay que evitar manipular el cuerpo del mensaje

Mitigación (2)  Minimizar el uso de mapas en orquestaciones  Preferible distinguished fields o promoted properties  Evitar múltiples mensajes de entrada en mapas. Lo almacena en memoria  Evitar copias de mensajes  El tracking incrementa la sobrecarga  Split: descomponer un mensaje grande en más pequeños en la recepción

Mitigación (3)  Large message fragment size  Esta opción configurable en BizTalk Group Properties  Es el tamaño de cada fragmento del mensaje en la MessageBox  Al incrementar reduce los accesos a base de datos  Large message threshold  Esta opción configurable en BizTalk Group Properties  Si el tamaño total del batch no excede de este valor, no se creará transacción para cada bloque del batch.  TransformThreshold  Nuevo en BTS06  Si el mensaje supera este tamaño BizTalk lo almacena en disco al aplicar un mapa  Se modifica en el registro (por defecto es 1 Mb)  Al aumentar mejora el rendimiento en mensajes menores de ese límite pero OJO con la memoria. HKLM\Software\Microsoft\BizTalk Server\3.0\Administration\TransformThreshold Batch Size * MessageSize < Large message threshold MessageSize = Media de tamaño (en bytes) de cada mensaje en el batch después de ser procesado por el pipeline Batch Size * MessageSize < Large message threshold MessageSize = Media de tamaño (en bytes) de cada mensaje en el batch después de ser procesado por el pipeline

A tener en cuenta  Los mensajes son guardados y leídos de la MessageBox. Muchas veces.  SQL Server puede tener un uso intensivo por recepciones, envíos y orquestaciones simultáneas  Orquestaciones: los mensajes son inmutables, si hacemos copias aumentaremos la sobrecarga del tracking

Escalar Hardware  Escalar SQL Server. La base de datos MessageBox es la más castigada  W2003 y SQL Server 2005 soportan procesadores Itanium-2 así como BizTalk runtime soporta x64 (máxima escalabilidad)  Usar servidores dedicados para Envío y Recepción  Crear Hosts independientes  Recepción / Envío / Orquestaciones  Memoria (cuanto más mejor )  Utilizar tests de carga para estudiar un plan de mejora de rendimiento

Técnicas recomendadas (1)  Descomponer el mensaje (si este contiene elementos repetitivos)  Se generan mensajes más pequeños que puedan ser procesados unitariamente Splitter

Técnicas recomendadas (2) Posibilidades:  Debatching: EnvelopeSchema y DocumentSchema  Se configura en el disassembler  Puede que se necesite conocer el primer y último elemento (FixMsg)  Recoverable Interchange: el disassembler permite configurar, si falla algún mensaje, suspender el batch entero o sólo esos mensajes.  Ordered Delivery: BizTalk permite enviar de forma ordenada el resultado  Mapas  Consiste en utilizar un mapa para descomponer el mensaje  Es sencillo de implementar pero con alto coste en rendimiento Splitter

Técnicas recomendadas (3) Slice / Splice  Para mensajes grandes o muy grandes  Donde el tiempo de proceso es muy importante  Y no es necesario acceder al cuerpo del mensaje  Crear dos Componentes de Pipeline  Recepción:  Guardar el cuerpo del mensaje en una base de datos temporal  Reemplazar los datos por un proxyID en el mensaje  Envío: recupera el cuerpo del mensaje del almacenamiento temporal  Mejora enormemente los tiempos de respuesta y la sobrecarga

Técnicas recomendadas (4) SQLBulkInsert Adapter

Técnicas recomendadas (5) SQLBulkInsert Adapter Hardware CPU 2 GHz VPC 1.3 Gb de RAM Software VPC W2003 BizTalk Server 2006 SQL Server 2005 Resultados Matt Meleski blog : Procesado en el Pipeline (FFDsm)SQLBulkInsert Adapter

Técnicas recomendadas (6)  Procesamiento en el Pipeline  Es el método estándar  Fácil de implementar incluso con mensajes con estructura complicada  Muy lento de procesar y consume muchos recursos con mensajes grandes  SQLBulkInsert Adapter  Se procesa muy rápido  No consume tantos recursos  No requiere publicar grandes mensajes en la MessageBox  Por el contrario es más complicado de desarrollar SQLBulkInsert Adapter Resultados

Técnicas recomendadas (6)  Es recomendable utilizar tests de carga  Nos da una idea de tiempos, métricas sobre mensajes máximos y tamaños posibles  Usar BizTalk LoadGen Tests de Carga

Recursos Contacto: ilitia Technologies: MSDN: BizTalk Server Performance: BizTalk Core Team on Large Messages aspx BizTalk Server: BizTalk LoadGen: 32B-41C2-42B4-B F483C9E&displaylang=en 32B-41C2-42B4-B F483C9E&displaylang=en

Webcast Relacionados Con BizTalk Webcast grabados de BizTalk 2006: BizTalk Server 2006: Entornos Distribuidos BizTalk Server 2006: Arquitectura BizTalk Server 2006: Novedades BizTalk Server 2006: Patrones de diseño. BizTalk Server 2006: Banca Registro Webcast Grabado: ornadas/webcasts/webcasts_ant.asp ornadas/webcasts/webcasts_ant.asp

© Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

© Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.