Select the product you need help with
Cómo solucionar problemas de una pérdida de memoria o una excepción de la memoria en el proceso de BizTalk ServerId. de artículo: 918643 - Ver los productos a los que se aplica este artículo En esta páginaResumenPérdidas de memoria son un problema común. Quizás tenga que probar
varios pasos para encontrar la causa específica de una pérdida de memoria o una excepción de memoria insuficiente (OOM) en Microsoft BizTalk Server. Este artículo analiza las cosas importantes a tener en cuenta al evaluar el uso de memoria y problemas relacionados con la memoria. Estas consideraciones incluyen lo siguiente:
INTRODUCCIÓNEste artículo describe cómo solucionar problemas de una pérdida de memoria o
una excepción de la memoria en el proceso de BizTalk Server de Microsoft BizTalk
Servidor. Más informaciónEl proceso de BizTalk Server puede estar experimentando una pérdida de memoria
Cuando el uso de memoria en el Administrador de tareas de Microsoft Windows consume más de 50
porcentaje de la RAM física. Una pérdida de memoria puede provocar una excepción de la memoria
Cuando el uso de memoria aumenta hasta que se ejecuta el proceso de la memoria del sistema o
hasta que el proceso deja de funcionar. Cuando se produce este problema, un mensaje de advertencia similar el siguiente mensaje de error se registra en el registro de sucesos: Evento
Tipo: advertencia Tipo de suceso: advertencia Consideraciones importantesUso de memoria RAM y la memoria físicaDado que puede ser el comportamiento esperado de un proceso utilizar aproximadamente la mitad de la RAM física, utilice el uso de memoria como una guía. Por ejemplo, si el BizTalk Server tiene 4 gigabytes (GB) de RAM y el proceso de BizTalk Server utiliza aproximadamente 500 megabytes (MB) de RAM, no habrá pérdida. Si el proceso de BizTalk Server utiliza aproximadamente 1 GB de RAM, puede que haya una pérdida de memoria o una situación de memoria alta. El consumo de memoria puede deberse a un procedimiento almacenado de larga ejecución o la orquestación. Asegúrese de que sabe cuánta memoria del host de BizTalk se utiliza normalmente para determinar si se está produciendo una pérdida de memoria o la condición de memoria alta.Mensajes de gran tamañoCuando BizTalk Server procesa los mensajes de gran tamaño, el sistema parece tener una pérdida de memoria. Sin embargo, los mensajes pueden utilizar una gran cantidad de memoria. Para obtener más información acerca de los mensajes grandes, visite los siguientes sitios Web de Microsoft Developer Network (MSDN):http://blogs.msdn.com/biztalk_core_engine/archive/2005/02/28/381700.aspx
(http://blogs.msdn.com/biztalk_core_engine/archive/2005/02/28/381700.aspx)
http://msdn.Microsoft.com/en-us/library/aa560481 (BTS.10) .aspx Además, tenga en cuenta que puede esperarse mucha memoria si BizTalk
Servidor está procesando los mensajes grandes. Desea actualizar el hardware para
cumplir los requisitos de rendimiento de BizTalk Server en su entorno.
(http://msdn.microsoft.com/en-us/library/aa560481(BTS.10).aspx)
¿Cuánto tiempo tarda en reproducir la pérdida de memoriaPueden producirse pérdidas de memoria inmediatamente o pueden acumularse a través de tiempo. Ambos escenarios son comunes.Uso del modificador/3 GB en los equipos de 32 bitsNormalmente, un proceso puede tener acceso a 2 GB de espacio de direcciones virtuales. El modificador/3 GB es una opción para los sistemas que requieren más memoria direccionable. Esta opción puede mejorar el uso de memoria para procesar los mensajes. Sin embargo, el modificador/3 GB permite sólo 1 GB de memoria direccionable para operaciones en modo kernel. Además, este modificador puede aumentar el riesgo de quedarse sin memoria de grupo.Para obtener más información acerca de los 3 GB , visite el siguiente sitio Web de Microsoft Developer Network (MSDN): http://msdn.Microsoft.com/en-us/library/ms791558.aspx Cuando está habilitado el modificador/3 GB en una versión de 32 bits de Windows, el proceso puede tener acceso a 3 GB de direcciones virtuales
espacio si el proceso es grande dirección tenga en cuenta. Un proceso es grande dirección tenga en cuenta cuando el archivo ejecutable tiene establecido el indicador IMAGE_FILE_LARGE_ADDRESS_AWARE activado en el encabezado de imagen. Debido a que el proceso de BizTalk es grande dirección consciente, BizTalk se beneficiará el modificador/3 GB.
(http://msdn.microsoft.com/en-us/library/ms791558.aspx)
Si se está ejecutando una instancia de host de BizTalk de 32 bits en una versión de 64 bits de Windows (AMD64), las ventajas del proceso de BizTalk desde la memoria de 4 GB dirección espacio porque BizTalk es grande dirección tenga en cuenta. Por lo tanto, el traslado de las aplicaciones de memoria alta a un servidor de 64 bits puede ser la mejor solución. Un proceso de BizTalk de 64 bits en una versión de 64 bits de Windows (AMD64) con 8 TB de memoria direccionable. También debe considerar los bytes virtuales y los bytes privados utilizados por el proceso. Una instancia de host de BizTalk (que es un.Aplicación de NET Framework) puede aparecer un error de memoria insuficiente antes de que el valor de Bytes virtuales alcance los 2 GB. Esto puede ocurrir incluso aunque el máximo de memoria direccionable por un proceso en una versión de 32 bits de Windows (sin el modificador/3 GB ) es de 2 GB. Para obtener una explicación de por qué esto puede ocurrir, visite los siguientes sitios Web de Microsoft Developer Network (MSDN): http://msdn.Microsoft.com/en-us/library/ms972959.aspx
(http://msdn.microsoft.com/en-us/library/ms972959.aspx)
http://blogs.msdn.com/tess/archive/2005/11/25/496898.aspx El modificador/3 GB también aumenta el número máximo de bytes privado del proceso de BizTalk de 800 MB a 1800 MB. Para obtener más información acerca de.Rendimiento de la aplicación de NET Framework con el modificador/3 GB habilitado, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
(http://blogs.msdn.com/tess/archive/2005/11/25/496898.aspx)
http://msdn2.Microsoft.com/en-us/library/ms998583.aspx En la tabla siguiente se resume esta información e incluye los límites prácticos para virtuales bytes y privada.
(http://msdn2.microsoft.com/en-us/library/ms998583.aspx)
Contraer esta tabla
http://msdn.Microsoft.com/en-us/library/aa366778.aspx La tabla siguiente muestra la capacidad de soporte PAE y/3 GB para las distintas versiones de BizTalk Server.
(http://msdn.microsoft.com/en-us/library/aa366778.aspx)
Contraer esta tabla
Componentes de BizTalk Puede que se ejecutan dentro de un proceso de servicios de Internet Information Server (IIS) También se benefician cuando está habilitado el modificador/3 GB . El modificador/3 GB no se admite en equipos que ejecutan Windows SharePoint Services 2.0 o versiones posteriores o SharePoint Portal Server 2003 Service Pack 2 o versiones posteriores. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base: 933560
(http://support.microsoft.com/kb/933560/
)
No se admite el modificador/3 GB de Windows Server 2003 en Windows SharePoint Services 2.0 o en versiones posteriores o en SharePoint Portal Server 2003 Service Pack 2 o en versiones posterioresUso de componentes personalizadosSi utiliza componentes personalizados, como las tuberías o componentes de servicio, debe saber lo que hacer estos componentes. También debe conocer el efecto potencial de estos componentes en el uso de memoria. A problema de memoria común se produce cuando un componente es transformar un documento. El operación de transformación es una operación de memoria intensiva. Cuando es un documento transforma, BizTalk Server pasa la secuencia de mensajes de Microsoft.NET Clase XslTransform de marco dentro del proceso de BizTalk.Otro problema común se produce cuando hay manipulación de cadenas intensivo. Cadena intensivo manipulación puede consumir mucha memoria. Para obtener más información acerca de formas mejorar el rendimiento, visite el siguiente sitio Web de Microsoft Developer Network (MSDN): http://msdn2.Microsoft.com/en-us/library/ms998547
(http://msdn2.microsoft.com/en-us/library/ms998547)
Versión de la.NET FrameworkEl Microsoft.NET Framework 2.0 y el.NET Framework 1.1 tiene comportamiento de memoria diferente. Por lo tanto, puede ver diversos resultados entre ellos. Si está utilizando el.NET Framework, confirme que la última.NET Framework Service Pack 1 está instalado. Estos service Pack solucionan algunos problemas de memoria conocidos. Para obtener más información, haga clic en los números de artículo siguiente:945757
(http://support.microsoft.com/default.aspx?scid=kb;EN-US;945757)
Problemas corregidos en el.NET Framework 2.0 Service Pack 1867460
(http://support.microsoft.com/kb/867460/
)
Lista de errores corregidos en el.NET Framework 1.1 Service Pack 1Número de procesadoresCommon language runtime (CLR) tiene la siguiente basura colectores (GC):
Si el equipo es decir la ejecución de BizTalk Server es un sistema de procesador único, el.NET Framework utiliza la versión de la estación de trabajo del motor de ejecución. Éste es el predeterminado comportamiento. El algoritmo de asignación del recolector de elementos no utilizados de estación de trabajo no es diseñado para escalar o para un rendimiento óptimo. Utiliza este recolector de elementos no utilizados métodos de simultáneas recolector de elementos no utilizados. Estos métodos están diseñados para aplicaciones que tienen interfaces de usuario complejas. Tales aplicaciones pueden requerir más rigurosa recolección. Importante Esta sección, el método o la tarea contiene pasos que le indican cómo modificar el registro. Sin embargo, pueden producirse problemas graves si modifica incorrectamente el registro. Por lo tanto, asegúrese de que sigue estos pasos cuidadosamente. Para una mayor protección, copia de seguridad del registro antes de modificarlo. A continuación, puede restaurar el registro si surge algún problema. Para obtener más información acerca de cómo hacer copia de seguridad y restaurar el registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base: 322756 A veces, puede ser apropiado ejecutar la versión de la estación de trabajo del motor de ejecución en un sistema multiprocesador. Puede utilizar la siguiente clave del registro para cambiar a la versión de la estación de trabajo del motor de ejecución.
(http://support.microsoft.com/kb/322756/
)
Cómo hacer copia de seguridad y restaurar el registro de WindowsBizTalk 2006 y versiones posterioresCree la siguiente clave del registro de cadena de alojamiento de CRL con los valores correspondientes:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc$BizTalkHostName\CLR alojamiento Nombre: sabor Datos: wks BizTalk 2004Cree la siguiente clave del registro de cadena de alojamiento de CRL con los valores correspondientes:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\BTSSvc {GUID} \CLR Host Nombre: sabor Datos: wks Para obtener más información, visite los siguientes sitios Web de Microsoft Developer Network (MSDN): http://msdn2.Microsoft.com/en-us/library/ms973838
(http://msdn2.microsoft.com/en-us/library/ms973838)
http://blogs.msdn.com/tess/archive/2008/04/17/How-Does-the-GC-Work-and-What-are-the-Sizes-of-the-Different-generations.aspx
(http://blogs.msdn.com/tess/archive/2008/04/17/how-does-the-gc-work-and-what-are-the-sizes-of-the-different-generations.aspx)
Las resoluciones y las causas comunesUso de memoria de proceso y umbrales de limitación de uso de memoria físicaEl uso de memoria de proceso y el uso de memoria física umbrales de limitación pueden cambiarse en BizTalk Server 2006 y en versiones posteriores.
http://msdn.Microsoft.com/en-us/library/aa559628.aspx
(http://msdn.microsoft.com/en-us/library/aa559628.aspx)
Umbrales de limitación de deshidrataciónLos umbrales de deshidratación de memoria predeterminada pueden provocar demasiada deshidratación cuando orquestación se ejecuta en un host de 64 bits. Para obtener más información acerca de este problema, vea el tema de Las propiedades predeterminadas de deshidratación en el siguiente sitio Web de Microsoft Developer Network (MSDN):http://msdn.Microsoft.com/en-us/library/aa560586.aspx Nota los hosts de 64 bits se admiten en BizTalk Server 2006 y versiones posteriores.
(http://msdn.microsoft.com/en-us/library/aa560586.aspx)
En el hardware equivalente en una instancia de host de 32 bits, deshidratación observado es nominal cuando las orquestaciones del mismas se ejecutan mediante el uso de la deshidratación de memoria predeterminada umbrales de limitación. Debido a que la arquitectura de 64 bits proporciona el espacio de direcciones de memoria expandida (16 TB en lugar de 4 GB), las instancias de host de 64 bits se asignan significativamente más memoria que las instancias de host de 32 bits. Esto puede hacer que los umbrales de limitación de memoria predeterminada que se supere. Para evitar este comportamiento, cambie los valores VirtualMemoryThrottlingCriteria y PrivateMemoryThrottlingCriteria en el archivo BTSNTSvc64.exe.config. Utilice el indicador Proceso\Bytes de Bytes y los contadores del Monitor de rendimiento de Bytes de Proceso\Bytes para determinar la mayor cantidad de memoria asignada por una instancia de orquestación.
Si el valor del contador de Monitor de rendimiento de Bytes de \Process\Private es 435689400 bytes (415 MB), establezca el valor de OptimalUsage para PrivateMemoryThrottlingCriteria a 457 MB (435689400 * 1.10 = 479258340 bytes). Establezca el valor de MaximalUsage de PrivateMemoryThrottlingCriteria MB 594 (479258340 * 1,30 = 623035842). En este ejemplo, se especifica en el archivo BTSNTSvc64.exe.config para reducir el límite de los siguientes valores. Contraer esta tabla
<xlangs>
<Configuration>
<Dehydration>
<VirtualMemoryThrottlingCriteria OptimalUsage="6069" MaximalUsage="7889" IsActive="true" />
<PrivateMemoryThrottlingCriteria OptimalUsage="457" MaximalUsage="594" IsActive="true" />
</Dehydration>
</Configuration>
</xlangs>Nota La deshidratación alta puede provocar una disminución significativa del rendimiento cuando se ejecuta la base de datos de datos de BizTalkMsgBoxDb de SQL Server de 2008. BizTalk Server Service Packs y actualizaciones acumulativasBizTalk Server service packs y actualizaciones acumulativas incluyen las revisiones más recientes. Éstos incluyen los que afectan a los problemas conocidos de System.OutOfMemoryException.2281783
(http://support.microsoft.com/default.aspx?scid=kb;en-US;2281783)
Lista Service Pack o actualización acumulativa de BizTalk Server 2006 R22004 Service Pack 2 de Microsoft BizTalk Server
(http://www.microsoft.com/downloads/en/details.aspx?FamilyId=D20B4510-E5A6-4D7B-87A1-4BD52BDD57B8&displaylang=en)
HeapDeCommitFreeBlockThresholdDe forma predeterminada, el valor de la clave del registro theHeapDeCommitFreeBlockThreshold es 0. El valor 0 significa el montón Administrador libera cada página de 4 kilobytes (KB) que pasa a estar disponible. Anulación de registro las operaciones pueden causar la fragmentación de memoria virtual. El tamaño de la configuración de HeapDeCommitFreeBlockThreshold en el administrador del montón dependerá del tipo de trabajo que acciones del sistema. Un tamaño de 0 x 00040000 es inicial recomendado valor.Tenga en cuenta la siguiente información antes de cambiar el valor de la HeapDeCommitFreeBlockThreshold registro
clave:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Administrador Nombre de valor: HeapDeCommitFreeBlockThreshold Tipo de valor: REG_DWORD Información del valor: 0 x 00040000 (Esto es el valor inicial recomendado.) Valor predeterminado: no está presente 315407
(http://support.microsoft.com/kb/315407/
)
La clave de registro "HeapDecommitFreeBlockThreshold"Transformar las operacionesCuando BizTalk Server realiza las operaciones de transformación XML en los mensajes bastante grandes en un puerto de recepción, en un puerto de envío, o en XLANG, XSL transforma cargar todo el mensaje en la memoria..Para resolver este problema, utilice uno de los métodos siguientes:
La mayoría de los functoids de BizTalk predeterminado se implementan como secuencia de comandos en línea. Estos elementos pueden causar System.Byte [] objetos recoger en la memoria. Para minimizar el consumo de memoria, se recomienda que coloque cualquier asignación que utiliza estos functoids en un conjunto de pequeño. A continuación, hacer referencia a ese ensamblado. Utilice la siguiente tabla para determinar qué functoids Usar secuencia de comandos en línea y qué functoids no utilizan secuencias de comandos en línea. En la segunda columna, "Sí" significa que este functoid se implementa como secuencia de comandos en línea y causaría System.Byte [] objetos recopilar en memoria. "No" significa que este functoid no está implementada como secuencia de comandos en línea y que no provocarán System.Byte [] objetos recoger en la memoria. Contraer esta tabla
http://msdn2.Microsoft.com/en-us/library/aa560481.aspx
(http://msdn2.microsoft.com/en-us/library/aa560481.aspx)
Los valores de atributo de gran tamaño y los valores de elementos grandesCuando se ejecuta una operación de recepción de BizTalk Server canalización o una canalización de envío en un documento XML, se procesa la carga en memoria si el documento contiene una o varias de las siguientes entidades:
Componentes de canalización personalizadoUtiliza un componente de canalización personalizado que se carga la totalidad secuencia en la memoria. Todos los componentes que se incluyen con BizTalk Server, excepto las transformaciones, soporte de transmisión por secuencias. Estos componentes no se utilizan como mucho memoria durante la transmisión por secuencias. Sin embargo, no pueden admitir los componentes de canalización personalizado transmisión por secuencias.Bajo cargas pesadas de transmisión por secuenciasEnviar hosts quedarse sin memoria cuando operan bajo cargas pesadas. BizTalk Server canalizaciones de envío y enviar secuencias de compatibilidad de adaptadores. En el transmisión por secuencias, cada componente carga un pequeño fragmento de la secuencia en la memoria. Debido a que cada mensaje incluye otras estructuras de datos, junto con un mensaje contexto que puede ser grande o pequeña, este comportamiento afecta al comportamiento de BizTalk Server bajo cargas pesadas.Se ve afectado el comportamiento de BizTalk Server debido a que el motor de carga de un número de mensajes configurados previamente. El número de los mensajes que se carga el motor se basa en los valores que aparecen en el LowWaterMark y el campo HighWaterMark de la tabla Adm_serviceClass. La tabla de Adm_serviceClass está en la base de datos de administración de BizTalk. Estos valores controlar el número de mensajes que BizTalk Server los procesos o envía a la al mismo tiempo. El valor de HighWaterMark es el número total de mensajes que el motor de procesos al mismo tiempo. El valor predeterminado es 200 mensajes por cada CPU. Por lo tanto, en un servidor de 8 procesadores, el host de envío intentará procesar los mensajes de 1.600 (200 * 8) en el mismo tiempo. Si se supone que cada mensaje es de 50 KB, los mensajes de igual a 80 MB (1, 600 * 50 = 80 000 KB). Para resolver este problema, puede cambiar el valor de HighWaterMark y el valor de LowWaterMark en la base de datos. Los valores que utilice dependen del tamaño de los mensajes. Para obtener más información acerca de las causas comunes de un memoria insuficiente de condición, consulte la sección "Memoria crecimiento en mensajería de BizTalk" en el siguiente sitio Web de Microsoft: http://blogs.msdn.com/biztalkperformance BizTalk Server 2006 y versiones posteriores, puede cambiar el host predeterminado
configuración de límite. Para obtener más información acerca de cómo cambiar el host predeterminado
la configuración, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
(http://blogs.msdn.com/biztalkperformance)
http://msdn2.Microsoft.com/en-us/library/aa559628.aspx
(http://msdn2.microsoft.com/en-us/library/aa559628.aspx)
Intente simplificar el problemaSi ha identificado una pérdida de memoria, intente determinar la causa Quitando componentes personalizados o mediante la simplificación de un mapa. Además, trate de reproducir el problema mediante el uso de una orquestación simple o una solución sencilla. Normalmente, se debe crear independiente recibir hosts para adaptadores de recepción. También debería crear hosts de envío independiente para los adaptadores de envío. Cuando se utiliza este método, cada adaptador puede ejecutar en un proceso independiente. Por lo tanto, si el proceso de BizTalk Server produce una condición de falta de memoria, será saber qué son los componentes.Pasos para solucionar problemasPara solucionar una condición de falta de memoria, utilice la depuración Herramienta de diagnóstico para supervisar las asignaciones de memoria con el tiempo. Los diagnósticos de depuración herramienta puede crear y analizar un archivo de volcado de pérdida de memoria (.dmp). Cuando se solucionar problemas de pérdidas de memoria, el objetivo consiste en adjuntar Leaktrack.dll antes de la alta condición de memoria se reproduce para capturar el crecimiento de la memoria con el tiempo. Leaktrack.dll se incluye con la herramienta Diagnósticos de depuración.
Cómo utilizar el registro de Monitor de rendimientoSeleccione los datos para iniciar sesiónPara seleccionar los datos para iniciar sesión, utilice el método apropiado para el sistema operativo:
Obtener el archivo de volcadoPara obtener el archivo de volcado, utilice uno de los métodos siguientes:
Detener el registro de Monitor de rendimientoSi va a capturar un volcado de memoria y los datos del Monitor de rendimiento, detener el registro de Monitor de rendimiento unos dos minutos después de haber creado el volcado de memoria.Analizar el archivo de volcadoPara ayudar a determinar la causa de una pérdida de memoria, puede utilizar la depuración Herramienta de diagnóstico para analizar el archivo de volcado. Para ello, siga estos pasos:
Si utiliza personalizada DLL, puede agregar la ruta de acceso de símbolos de los archivos .pdb personalizado para el análisis. Para hacer Esto, siga estos pasos:
http://support.Microsoft.com/contactus/?ws=support Antes de ponerse en contacto con servicios de soporte técnico, comprima el archivo de volcado, el registro del Monitor de rendimiento, el archivo de informe de análisis y los registros de sucesos actualizados (archivos .evt). Tendrá que enviar que estos archivos a un BizTalk Server de ingeniero de soporte.
(http://support.microsoft.com/contactus/?ws=support)
PropiedadesId. de artículo: 918643 - Última revisión: miércoles, 13 de junio de 2012 - Versión: 2.0 La información de este artículo se refiere a:
Traducción automática IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente. Haga clic aquí para ver el artículo original (en inglés): 918643
(http://support.microsoft.com/kb/918643/en-us/
)
| Seleccione idioma
|





Volver al principio








