Perfil de GabrielBiztalk Blandengue (http...FotosBlogListasMais Ferramentas Ajuda

Blog


10/7/2008

Guía para optimización de performance en Biztalk

La guía para optimización de performance en Biztalk ha sido publicada aquí, y me tomé el tiempo para no solamente leerla sino hacer un resumen de la misma para poder tener de referencia y buscar esos puntos. Es una guía muy interesante y diría que es de lectura obligatoria para todo el que piense realizar serios proyectos con Biztalk. Sin embargo, tampoco lo veo como la "guía definitiva" para la performance en Biztalk, dado que la variedad de escenarios puede ser muy compleja, la profundidad con la que se tocan los temas es variada y muchas porciones están teñidas (para bien Y para mal) por la experiencia de los participantes en la confección de la guía.

La primer parte "Performance Factors", es una recorrida por diferentes puntos que pueden afectar a la solución. Es extremadamente complejo hacer algo que abarque todo, pero es de esperar al menos que sea una muestra representativa de problemas encontrados por los que lo elaboraron. En este sentido, debe tomarse como un muy buen punto de comienzo, pero deben ser incorporadas experiencias de otros expertos.

De la revisión de los diferentes factores, elaboré el cuadro debajo.

image

image

La segunda parte "Performance Tools" es una lista de las herramientas que normalmente uno podría usar con Biztalk. Incluye todas las herramientas que se deben tener a mano pero es únicamente una pequeña lista.

La tercera parte se enfoca en realizar un "Performance Assessment" a una instalación Biztalk y es un acercamiento más metodológico que técnico. La metodología es más que adecuada y se ve no solamente alienada con las metodologías que normalmente usamos con MCS sino que es coherente y realizable.

Reseño debajo algunos puntos destacables

  • En las páginas 35 y 36 hay una buena guía para el scoping del proyecto.
  • La página 37 tiene una lista de potenciales medidas a optimizar en el análisis de performance.
  • La página 39 es muy interesante dado que en un cuadro tenemos algunas medidas de los posibles máximos de performance. Inclusive menciona la máxima performance de orquestaciones por segundo que la ubica en 1156 con la friolera de 23 Quad Processor Biztalk 2006
  • Documentación de cómo separar las diferentes bases de datos en la página 52.

La cuarta parte se centra en encontrar y eliminar los cuellos de botella en Biztalk. A continuación un cuadro de recomendaciones generales

image

y de las de Biztalk específicamente

image

La quinta parte trata del testing de aplicaciones. Es un muy detallado análisis del uso de herramientas, aunque en mi criterio no forma parte de la guía como tal y en ese lugar, sino en otra guía o apéndice (aunque debo reconocer que suma hojas para que la guía se vea contundente :)  )

La última sección está estrictamente dedicada a la optimización de performance. Hasta ahora, la guía, realmente ha centrado su atención en evitar, encontrar y corregir problemas que afectan la performance. En esta sección, entra directamente en la búsqueda de performance máxima una vez determinada una infraestructura. Esto será parte de mi próxima entrada en el blog.

2/7/2008

Un PAR de días mejorando mis deployments Biztalk - Parte 5

Lo último que quería aprender era la relación entre los bats de implementación y los XML de los wizards.

El bat de implementación ServerDeployWizard.bat tiene dos líneas:

EnvironmentSettingsExporter.exe EnvironmentSettings\SettingsFileGenerator.xml EnvironmentSettings
SetEnvUI.exe InstallWizard.xml ServerDeploy.bat

Donde el primero genera los archivos de configuración diferentes por ambiente y el segundo implementa en variables de ambiente los datos que el wizard pide y llama al bat que hace el deployment que es ServerDeploy.bat que tiene:

EnvironmentSettingsExporter.exe EnvironmentSettings\SettingsFileGenerator.xml EnvironmentSettings
nant.exe -D:skipUndeploy=true -D:deployBizTalkMgmtDB=%BT_DEPLOY_MGMT_DB% -l:DeployResults\DeployResults.txt serverDeploy
nant.exe -buildfile:CopyDeployResults.nant >nul

Que exporta (nuevamente y realmente no se por qué) los datos. Pre-procesa (no en mi caso) el xml para incluirle los datos de ambiente y realiza el deployment con Nant

Los xml InstallWizar y UninstallWizard son usados por el SetEnvUi que toma el xml y hace pantallas que piden datos para instalación poniéndolas en variables de ambiente. Dado que no afectaba a mi instalación, quité todo lo que venía del ejemplo dejando únicamente la pregunta para caso multi servidor y no dio problemas.

Lo único adicional que me quedaría por resolver es cómo se relacionan las variables cargadas en el excel XML con el deployment, dado que hasta ahora no he visto esa relación.