NCache Supervisión de la salud y el rendimiento

Seminario web grabado
Por Ron Hussein

Este seminario web en video es una introducción completa a las opciones y herramientas disponibles para el estado óptimo de sus aplicaciones que se ejecutan a través de NCache.

Aprenderá acerca de las alertas de estado y las opciones de rendimiento tanto para el NCache Servidor y NCache Cliente (lado de la aplicación), específicamente:

  • NCache Funciones de alerta de salud: descripción general y cómo usarlas
  • NCache Supervisión del rendimiento: descripción general y capacidades
  • Las herramientas integradas para la supervisión del estado y el rendimiento
  • NCache monitoreo a través de los recursos del Sistema Operativo (Windows)
  • NCache monitoreo a través de herramientas de terceros
  • Cómo depurar NCache problemas de salud y rendimiento

El tema que hemos seleccionado hoy es NCache seguimiento de la salud y el rendimiento. Entonces, básicamente, cubriré diferentes opciones de monitoreo dentro NCache en este seminario web en particular y lo abordaré de dos maneras diferentes. Hablaré sobre las opciones relacionadas con la salud que puede utilizar y luego la supervisión del rendimiento y eso es el rendimiento de la aplicación, así como NCache rendimiento del lado del servidor. Esto es un NCache tema basado, por lo que supongo que ya conoce algunos detalles sobre NCache y también compartiré algunos detalles básicos, pero la agenda del seminario web de hoy es que tenemos un tema específico entre manos. Se trata NCache y voy a exponer NCache características en lo que respecta a la supervisión de la salud y el rendimiento.

NCache Despliegue

¡Bien! Entonces, primero un punto de partida es NCache despliegue. Como dije, asumiría que NCache ya está configurado, pero si no lo está, esta es una implementación típica para NCache.

implementación de caché distribuida

Tenemos un nivel de servidor en el que residen varios servidores y luego tenemos un nivel de aplicación que en realidad se conecta a este en un modelo cliente-servidor. Por lo tanto, podría usar un nivel de almacenamiento en caché separado donde los servidores están dedicados al almacenamiento en caché y luego sus aplicaciones pueden ejecutarse en su propio nivel respectivo. Estos podrían ser aplicaciones web ASP.NET, formularios web o MVC, servicios web ASP.NET o servicios web Java, WCF o cualquier otro, o podría ser cualquier aplicación de servidor back-end que se esté conectando a NCache. Entonces, cada vez que tenga una implementación de este tipo en la mano, donde tiene un almacenamiento en caché de NCache y luego sus aplicaciones se están conectando a NCache, podría haber varias preguntas con respecto a lo que se almacena en caché. ¿Cuál es el rendimiento? ¿Qué son las matrices de rendimiento? ¿Cuál es la ganancia de rendimiento con diferentes tamaños de objetos o si hay algún problema? ¿Cómo depurar eso?

Entonces, eso es todo lo que voy a cubrir hoy. Voy a hablar sobre diferentes registros, diferentes eventos relacionados con la salud que puede capturar y funciones de monitoreo en caché con respecto a la salud. Hablaré sobre los diferentes registros de depuración que puede configurar y, además, le daré una comparación de rendimiento, así que todo esto se incluye en este seminario web. Mucho va a venir y todo es práctico.

NCache Requisitos del servidor

Sin más demoras, comencemos de hecho y esto es NCache requisitos del servidor. Por lo general, cubrimos esto en nuestras demostraciones y seminarios web regulares. Entonces, son 8 núcleos o más, esa es una configuración mínima recomendada para NCache pero también podría tener más núcleos. La RAM es según su caso de uso, 16 gb o más. Es compatible con todos los entornos de Windows, así como con NCache En lo que respecta a la parte del servidor, se recomienda que use 2012 o 2016, pero también puede funcionar en versiones anteriores, como el sistema operativo 2008, .NET 4.0 o posterior, 4.6.1 o 4.6.2 o 4.5. Eso es lo más comúnmente utilizado. Y, remote clients puede estar en cualquier marco nuevamente en cualquier entorno de Windows. También se admiten todos los entornos de 32 bits y 64 bits.

Entorno de configuración

Entonces, habiendo dicho eso, saltaré rápidamente y comenzaré con esto. Crearé rápidamente un entorno de demostración y para eso usaré dos nodos y algunos clientes para conectarme. Y, nuevamente, supondría que no compartiría muchos detalles sobre cómo crear un caché, cuáles son las configuraciones, cuáles son las topologías. Supongo que ya conoces ese detalle. Si no lo hace, en ese caso, busque nuestros seminarios web arquitectónicos o demostraciones arquitectónicas que hacemos todos los meses como parte de NCache o como parte de seminarios web de tecnología que hacemos.

Entonces, usaré la aplicación web ASP.NET, así como una aplicación de consola que viene instalada con NCache entonces eso es lo que tengo en mente. Básicamente, esto es lo que haré rápidamente para comenzar con esto. Iniciaré sesión en mi entorno de desarrollo. Hay un caché que ya configuré, así que simplemente crearé un nuevo proyecto y luego crearás los cachés. Entonces, solo crearé un caché de demostración y este es el caché que usaré para todos los aspectos de monitoreo relacionados con el rendimiento y la salud de NCache. Elegiré el caché de réplica de partición, que es el más popular, por lo que le recomendaría que también elija este y luego asíncrono, que es el modo de replicación entre servidores y nuevamente demo1 y demo2.

Todos estos pasos están documentados con gran detalle en nuestros seminarios web y demostraciones existentes que puede consultar en nuestro sitio web. Entonces, así es como especifica el puerto TCP del servidor para la comunicación y luego el tamaño del clúster de caché. Tengo algo en mente en términos de recibir una notificación cuando el caché se llene y cómo reaccionar ante eso, así que... Y simplemente desactivaré los desalojos por ahora o simplemente lo mantendré activado. En realidad, apaguémoslo porque realmente mostraría cómo se llena un caché y qué se necesita en ese escenario. Los desalojos son una forma cuando el caché se llena, automáticamente deja espacio para los nuevos elementos al eliminar algunos elementos del caché. Entonces, no hagamos eso, elegimos finalizar y eso ha creado nuestro Caché.

Agregaré rápidamente mi caja como cliente, que es mi computadora personal aquí. necesito comprobar si NCache el servicio ha comenzado o no. He estado jugando con los entornos, así que tengan paciencia conmigo. Puede que... sí, empezó, así que creo que también se ha añadido, así que, ¡de acuerdo! Entonces, empecemos de verdad. Entonces, nuestro entorno está configurado. Ignora el caché de prueba por ahora porque estaba jugando con él. Solo concéntrate en el caché de demostración. He hecho clic en él. Puede ver en el panel derecho. Estas son todas las configuraciones para este caché en particular. Todavía no ha comenzado. Entonces, comenzaré rápidamente esto para que ambos servidores se inicien. Cuando solo usa el botón de inicio desde aquí o desde aquí, en realidad inicia el caché en todos los servidores de almacenamiento en caché. Y, a continuación, comenzaré con algunos pasos básicos; ¿Cómo saber que tu caché ha comenzado? ¿Cómo saber si está saludable y cómo saber si muestra actividad? Por lo tanto, estos son algunos pasos básicos que tomaremos ahora y luego construiremos sobre ellos. Progresaremos llevándolo a algunos niveles extensos, algunos niveles avanzados.

Por lo tanto, el caché se ha iniciado como primer paso que puede usar desde el administrador o desde la línea de comandos y, por cierto, todo esto también se puede hacer a través de la línea de comandos, por lo que no se trata solo de las herramientas GUI. Hay herramientas de línea de comandos que están igualmente equipadas en comparación con la GUI. Haré clic derecho y para verificar el estado del clúster de caché, abriré un cuadro de conectividad de clúster de visualización.

ver-cluster-conectividad

Eso realmente me da una idea sobre el estado completamente conectado. Cada servidor tiene un activo y una copia de seguridad. Déjame mostrarte un diagrama para eso muy rápido. Debido a que elegí una topología, tenemos esta caché de réplica de partición y una arquitectura es que tiene una partición activa donde existe y luego hay una partición pasiva donde se mantienen las réplicas de otro servicio.

partición-replica-caché

Por lo tanto, la parte posterior activa del servidor uno se abre en el servidor dos y la copia de seguridad activa del servidor dos en uno. Estos son activos, estos son pasivos. Estos solo se activan y esto baja, no? Entonces, si esto falla, se activaría y si esto falla, la copia de seguridad se activaría. Entonces, cada servidor tiene dos particiones. Tenemos dos servidores, tendríamos cuatro particiones y esto es exactamente lo que está viendo aquí.

conectividad-entre-nodos

Entonces, uno está conectado a su propia copia de seguridad, otros servidores activos y el otro servicio de copia de seguridad. Y el servidor dos está conectado a su propio 107, que es el otro servidor, la copia de seguridad de otro servidor y su propia copia de seguridad. Sabes que está en un patrón creciente y también está completamente conectado. Si ves, ahora déjame compartir algunos detalles. El mensaje de estado puede no estar conectado o estar parcialmente conectado o el servicio de caché no se ha iniciado. Por lo tanto, todo esto significa que hay algún problema con el clúster de caché, por lo que hasta que vea el estado completamente conectado, su caché no se ha iniciado correctamente. Entonces, ese es el primer punto de construcción, cuando comience a crear un caché, asegúrese de verificar el estado del caché completamente conectado.

Y, esta salida también se puede usar a través de cachés de lista. Esa es una herramienta que viene, déjame traerla aquí, esto se almacena en caché. Y, si ejecuta los cachés de lista, con /a si solo lo ejecuta, solo le dará la información local de que se inició el caché de demostración. Pero, si solo lo hace con este caché, por ejemplo, un interruptor, en realidad le da los tamaños de clúster para 107 puertos, 107:7802 para la copia de seguridad. 108:7807 y 708 y cuenta.

tamaños de lista

Entonces, esto da una indicación saludable de esto. Por lo tanto, debe buscar esta información si usa cachés de lista; de lo contrario, ver la conectividad del clúster le brinda esto de manera GUI.

Cada caché tiene un proceso de host de caché, por lo que tiene el proceso de flujos de caché para el caché de demostración, así como para el caché de demostración dos. Y, en realidad podría ver si agrega un detalle, por ejemplo, dentro de la descripción de esto, también podría ver el caché asociado. Creo que está en la línea de comando, pero si agrega una columna de línea de comando aquí, podría ver el nombre del caché. Pero, por lo general, confiamos en los ID de proceso porque eso es lo que nos importa y explicaré más sobre esto en las próximas diapositivas. Entonces, dicho esto, nuestro caché parece estar en funcionamiento, por lo que ese es nuestro primer punto de construcción.

Lo siguiente es cómo verificar la actividad en el caché, actividad básica si el caché acepta solicitudes o no. Entonces, para eso, simplemente puede hacer clic con el botón derecho y elegir estadísticas. Esto abriría los contadores perf-mon y estos son contadores del lado del servidor que se ven en el NCache manager, pero también podría ver los contadores del lado del cliente, que trataré con gran detalle. Tengo un escenario que le mostraré con diferentes tamaños de objetos. Le mostraré los promedios del lado del cliente y cómo se ven afectados. Entonces, eso es algo que he alineado hacia el final de este seminario web. Entonces, eso también está surgiendo. Pero, solo para mostrarles el lado básico de las cosas, permítanme traerlo aquí, tienen el caché de demostración y el caché de demostración de réplica y la réplica. No se está generando actividad en este momento porque no estamos ejecutando ninguna prueba, así que tendremos que hacer eso y para eso solo puedo ejecutar, ya que agregué mi caja como cliente, ejecutaré la línea de comando herramienta para empezar con esto.

También puede tomar diferentes parámetros, pero por ahora solo usaré algunos valores básicos para ello y podría ver las solicitudes por segundo que ya están llegando. Entonces, tenemos el servidor uno tomando solicitudes, la copia de seguridad no está tomando solicitudes, pero el conteo se está actualizando, pero el servidor dos está tomando solicitudes, por lo que puede verlo aquí y luego tenemos la copia de seguridad del servidor dos, que en realidad es una copia de seguridad. Entonces, se está alineando una partición de respaldo. Entonces, esto en realidad nos da otra confirmación de que el caché está funcionando bien.

estadísticas-caché-ejecutando

Las solicitudes se distribuyen uniformemente. Puede ver este contador de solicitudes por segundo aquí. Y también tenemos las copias de seguridad actualizadas.

Entonces, nuestro primer paso, el monitoreo básico en lo que respecta a la salud es algo que rodea esto y luego podemos avanzar desde este punto en adelante, podríamos ver cuáles son los problemas que ocurren con el caché. Podríamos recibir una notificación y hablaré más detalles al respecto.

Opciones de monitoreo

Me adelantaré rápidamente y comenzaré con las opciones de monitoreo dentro de NCache. Entonces, esto es lo que he alineado. Ayer, dediqué mucho tiempo a explicar esto y luego recibí un comentario de que deberíamos centrarnos más en la parte práctica, manos a la obra. Entonces, esto es lo que haré hoy. Como dije, usaré un giro diferente en este seminario web de hoy.

Supervisión mediante el contador PerfMon

Entonces, tenemos contadores PerfMon. Tenemos el lado del servidor y el lado del cliente, te los mostraré. Tenemos entradas de registro de eventos y al usar estas entradas de registro de eventos tenemos esta herramienta de monitoreo que le brinda alertas. Tenemos estas alertas por correo electrónico que le brindan alertas relacionadas con el correo electrónico. Y, luego, también podría usar una herramienta de terceros para conectarse a estos registros de eventos. Por lo tanto, estos son bastante extensos y diría que son el factor más importante cuando se trata del aspecto de monitoreo de NCache.

Supervisión mediante registros

Y, luego tenemos los registros. Hay varias formas de configurar los registros. Tenemos registros del lado del servidor, registros del lado del cliente, hay una herramienta separada llamada analizador de registros. Luego hay una herramienta de análisis de datos con la ayuda de la integración del panel de enlace y también tenemos los registros de API que pueden demostrar cuánto tiempo toman las llamadas individuales y es solo una opción plug-and-play. Y, como dije, tenemos integraciones de terceros que podría usar SCOM para conectarse a estos registros, para conectarse a estas entradas de registro de eventos y luego tenemos AppDynamics o cualquier otra herramienta de terceros y luego podría usar NCache para eso.

NCache Herramientas de monitoreo – Demostración

Hoy, solo voy a usar la demostración real de las diferentes vías, así que comencemos con NCache herramientas de monitoreo que viene instalada con NCache. Ahora que tiene una solicitud configurada, déjeme ir a otro cliente y usemos una caja de servidor. El servidor también puede usar un cliente para que pueda verlo. Ejecutemos una herramienta de prueba de estrés desde aquí y luego ejecutemos una herramienta de prueba de estrés desde aquí también para que tengamos una carga significativa, yo lo llamaría una carga significativa en lo que respecta a las solicitudes por segundo. Y, podría ver alrededor de mil quinientas solicitudes por segundo y ahora más de dos mil solicitudes, entre dos y tres mil solicitudes por segundo en el servidor uno y el servidor dos.

Ahora, los requisitos básicos de monitoreo en tiempo real, así como para el registro, se pueden cubrir a través de nuestra herramienta de monitoreo. No tiene que buscar en ningún otro lado, no tiene que revisar los registros, no tiene que ir a sus registros de eventos ni conectarse a ninguna herramienta de terceros. Hay una herramienta que viene instalada con NCache así que le recomendaría que lo use como está y le daré una demostración rápida de esa herramienta en particular.

Tableros de monitoreo preconfigurados

Haré clic con el botón derecho y elegiré el grupo de monitores y esto abrirá el NCache herramienta de monitoreo que viene con la instalación NCache. Ahora, lo bueno de esto es que monitorea sus servidores así como los clientes y no tiene que ser uno de los servidores o los clientes, podría ser una tercera caja en su red. No tiene que ser ninguna de las implementaciones de caché.

ncache-herramienta-de-monitoreo

Entonces, tenemos 107, 108 y 3 clientes. Mi caja tiene algunas reglas, por lo que no permite el monitoreo remoto, pero podría ver los contadores 108 y 107 y todo lo que necesita hacer es ir a la vista, asegurarse de que estos paneles de servidor y cliente estén marcados. Mi caja daría un error que se esperaba. Pero, podría ver el mismo cuadro de conectividad que muestra el estado completamente conectado y, por cierto, si hubiera algún cambio, lo cambiaría en tiempo real. Esa es la belleza de esta herramienta de monitoreo que exhibe todos los estados en tiempo real.

monitor-herramienta-gráficos

Gráfico de CPU, para el servidor de CPU 1 y el servidor 2 se enumeran aquí. Gráfico de red, si hubiera alguna actividad de red que se mostraría aquí. Gráfico de tamaño de caché y luego gráfico de solicitudes por segundo. Por lo tanto, no hay una gran actividad en este momento en lo que respecta al tamaño y la red, por lo que está viendo valores de casi cero, pero en lo que respecta a las solicitudes por segundo, puede ver que es un factor de miles, por lo que alrededor de 3,000 solicitudes por segundo tanto por el servidor uno como por el servidor dos. Y también tenemos la memoria subiendo. Entonces, esto realmente explica que el servidor uno y el servidor dos están utilizando y que hay tres clientes que están conectados a él y luego también podría ver el panel del cliente. Entonces, 108 y 107 son clientes y está viendo que están enviando solicitudes de lectura y también hay una actividad.

Tableros de monitoreo personalizados

Entonces, esto cubre el aspecto de monitoreo en tiempo real de algunos paneles preconfigurados. Pero, usted no tiene que depender de estos. De hecho, podría dar un paso adelante y crear sus propios tableros y ahí es donde comienza la diversión. Solo diré, mi guión, déjame hacer una cosa, solo para que sea más robusto, déjame mostrarte otra forma de abrir la herramienta del monitor. También abriría la herramienta de monitor desde aquí directamente. Todo lo que necesita hacer es elegir el servidor y también será un servidor remoto y solo debe especificar el nombre del caché. Entonces, esa es otra forma en que usted especifica y ahora podría ver lo mismo y ahora tenemos dos clientes porque cerré un cliente. Ahora vería más actividad en cuanto a la solicitud de CPU porque solo tenemos dos servidores y dos clientes.

Ahora, volviendo, puede crear sus propios tableros en NCache herramienta de monitoreo. Y, por cierto, todos estos son contadores Perf-mon. De hecho, también le mostraré la herramienta de monitoreo de rendimiento, donde también podría lograr lo mismo usando el monitoreo de rendimiento de Windows. Entonces, si te sientes cómodo con eso, úsalo. Si solo desea utilizar NCache herramienta de monitor que viene instalada con NCache, esa es otra excelente opción. Y, por cierto, esta es una vista en tiempo real. Permítanme crear este guión. Entonces, crear su propio tablero significa que tendría un panel vacío, usemos una columna de 2 por 2 y esto se usaría para cualquiera de los contadores de perf-mon que ve en el lado izquierdo de la pantalla. tiene uso de CPU en el lado del servidor, registros de eventos, estado del clúster, operaciones de escritura, recuento de elementos y hasta ahora todo bien. Todo se enumera aquí y luego también tiene los contadores del lado del cliente.

Por lo tanto, le brinda monitoreo personalizado del lado del servidor y del lado del cliente y, además, también le brinda un control perf-mon que puede arrastrar y soltar aquí mismo. Por lo tanto, podría agregar cualquier contador de rendimiento. Podrían ser contadores de rendimiento de Windows, podría ser memoria, memoria celular .NET, CPU, cualquier tipo de contadores relacionados con el rendimiento o contadores relacionados con la salud para NCache se puede agregar aquí. Y hablaré de ellos con cierto detalle. ¡Está bien! Entonces, simplemente crearé otro guión para que tengamos dos tableros. Llamémoslo guión dos y digamos que 2 por 2 es el tamaño. Ese es el estándar.

¡De acuerdo! Entonces, mientras estamos en eso, le mostraré rápidamente el primer tablero y le mostraré los procesos del cliente que están conectados a él. Entonces, esto le brinda una descripción general de todos los procesos del cliente que actualmente están conectados a mi caché. Entonces, podría venir aquí, usar esta ventana, usar la IP del cliente, la ID del proceso, el puerto al que están conectados, la IP del servidor al que están conectados y los bytes enviados y recibidos. Por lo tanto, si ve una gran actividad en una de las aplicaciones cliente, también podría ver la conexión aquí. Podría haber una conexión rota. Siempre verá un ID de proceso conectado a todos los servidores, por lo que 4016 está conectado a 107, 4016 también está conectado a 108. Entonces, si hay algún problema de conexión, por ejemplo, su proceso de trabajo comenzó, había tres servidores en el caché y uno de los procesos de trabajo no pudo conectarse al servidor 3, entonces, ¿cómo saberlo?

proceso-id-conectado

En primer lugar, hay eventos que se desencadenan y hablaré de ellos en breve, por lo que es una forma explícita de recibir notificaciones. Pero, verá si hay un comportamiento anormal, si hay una lentitud o si hay una gran cantidad de solicitudes porque, si un servidor no está conectado por el cliente, el cliente enviaría solicitudes a otros servidores y esos redirigirían esa solicitud. a ese otro servidor y eso puede tomar tiempo. Por lo tanto, puede ingresar a esta pantalla y luego elegir la IP, puede iniciarla con la ID del proceso y luego ver si hay una conexión que no figura aquí.

La otra forma sería el número de clientes. Por lo tanto, uno de los servidores que estaría aquí tendría una menor cantidad de clientes enumerados en esta ventana en comparación con otros. Entonces, esa es una herramienta importante que quería mostrar y luego podría ver algunas recuperaciones personalizadas por segundo que se realizan, adiciones por segundo que se realizan y luego en el guión dos podría pasar al lado del cliente y luego podría ver el uso de la red de el uso de la CPU del cliente que normalmente no vería en los paneles preconfigurados.

servidor-informe-vista

Entonces, esto es nuevamente para el monitoreo en tiempo real. ¿Qué pasa con los datos históricos? ¿Qué pasa con el registro? Entonces, eso también está integrado en esta herramienta. Entonces, en realidad podría venir aquí y comenzar a iniciar sesión y esto realmente y luego también podría programar algunos registros y también podría elegir mostrar réplicas aquí, si eso es un requisito y luego hay algunas opciones con las que puede jugar. . Por ejemplo, elija la frecuencia de muestreo, use el gráfico y luego use los registros de eventos que realmente desea ver dentro del caché. Entonces, esto le brinda el monitoreo en tiempo real como mencioné. Si la carga de solicitudes está llegando, vería esto. A continuación, puede ampliar este momento en particular. El tiempo que lleva llenar y luego la ventana de estos tableros individuales que también se pueden cambiar y, como dije, hay un soporte de inicio de sesión para acompañarlo.

Entonces, eso cubre la demostración básica de NCache herramienta de monitoreo y le he brindado algunos detalles sobre algunos casos de uso, como verificar el estado, verificar la conectividad del cliente, la solicitud. La solicitud también se agregaría aquí y también vería la actividad en el servidor. Por lo tanto, este es su cliente y este es su servidor que exhibe la carga de solicitud y, además, tiene las estadísticas y la conectividad del proceso del cliente de conectividad y luego también tiene la actividad del cliente en cuanto al uso de la red y NCP. No vería un uso intensivo de la red porque no es muy intensiva en la red en este momento o podría haber algunos problemas de permisos de que este panel no se está publicando, pero lo investigaremos. Pero, hasta ahora todo bien, todo se ve como debería. Estamos teniendo algo de actividad y tenemos a los clientes y servidores interactuando entre sí de manera saludable. ¿Alguna pregunta hasta ahora? Entonces, esto completa nuestra NCache herramienta de demostración de monitor que viene instalada con NCache.

¡Está bien! Entonces, simplemente cerraré la herramienta de monitoreo y mantendré la herramienta de prueba de estrés en ejecución. También debería usar una aplicación web, pero eso es algo que haré en una etapa posterior.

Registro de eventos y alertas por correo electrónico: demostración

A continuación, le mostraré algunas alertas relacionadas con la salud y para eso debo explicar las entradas del registro de eventos que pasan a formar parte de su sistema y luego se actualizan periódicamente cada vez que tiene un evento. Entonces, vayamos al registro de eventos de Windows. NCache.. en realidad tiene muchos derechos y eso es específico para cualquiera de los eventos. Por ejemplo, iniciamos un caché y cada registro de eventos de un sistema es específico de su propio servidor, la vista del caché, los eventos de NCache service o el host de caché para ese servidor, así que iniciamos el caché, así que lo primero es que se inicie un proceso separado para que eso sea lo que sucedió aquí.

Registro del visor de eventos de Windows

El siguiente registro de eventos es que se trata de una réplica conjunta, por lo que se inició y esta réplica conjunta y, a continuación, la memoria caché de demostración también se inició correctamente en la memoria caché. Y luego 108 se unió al caché 108 réplica se unió al caché y luego estos son algunos mensajes de configuración que podemos omitir y eso es todo. Estos no están relacionados con NCache pero en lo que respecta a estos mensajes, debería brindarle información completa sobre el registro de eventos. Y permítanme simular rápidamente nuestro escenario en el que realmente usamos un caché de prueba aquí y es por eso que aquí comenzaré uno de los cachés. Como estoy en 107, comenzaré con 107 y verá que se propagan algunos registros de eventos con respecto a eso. Entonces, esperemos una vez que esto se complete. Entonces, comenzó. Nuevamente, podría usar una vista de conectividad de clúster y podría ver que solo un servicio no se inició pero que no tiene ningún estado, no está conectado porque el caché está detenido, ¿verdad? Entonces, eso puede hacerlo y también puede monitorearlo por separado si es necesario usando el grupo de monitores.

Ahora, volviendo a los registros de eventos. Entonces, ahora que lo hemos hecho, deberían iniciarse la caché de prueba, pero antes de que se iniciara el proceso de caché de prueba y luego tenemos 107 réplicas. Entonces, lo que sucede es que cada vez que inicia un caché, el proceso de caché se inicia, por lo que hay una entrada de registro de eventos para eso y luego hay una réplica, el cuadro real comienza, en realidad se inicia el caché y su réplica se une al clúster de caché. Y, tiene la información agregada como parte de ella y hay un conjunto de recopiladores de datos que en realidad se inicia, pero actualmente mi máquina... Los apagué, por eso estamos llegando allí y el caché de prueba comenzó con éxito ese es el evento que debería estar interesado en y después de eso su aplicación. Luego están los ID de eventos a los que puede conectarse y usar cualquier otra herramienta o usar NCache monitoree eso o cualquiera de las herramientas para recibir notificaciones al respecto. Entonces, estos son registros de eventos.

Ahora, dado que estos se publican en Windows, cada vez que se inicia su caché, se detiene y le mostraré que le agrego otro nodo. No recibiría una notificación a través de los registros de eventos y, si detengo el caché, recibiría una notificación a través de los registros de eventos. Si su caché se llena, recibirá una notificación. Si se inicia la transferencia de estado, se producen fallas en la red, si dos servicios interrumpen la conectividad, cada vez tendrá estos eventos actualizados y, de hecho, los tomará desde allí. Entonces, nuevamente 107 se ha unido. La memoria caché se inició correctamente y ahora 108 se ha unido a la memoria caché de prueba y 108 réplica se ha unido a la memoria caché de prueba. Por lo tanto, estos son eventos que se registran nuevamente y luego la ID del evento sigue siendo la misma, pero el mensaje es importante. Entonces, recibes una notificación. Y detendré rápidamente el caché y verá que los registros de eventos se completan nuevamente.

Por lo tanto, la mayor parte de nuestro monitoreo de terceros se refiere a estos. Entonces, ahora que hemos detenido el caché, volveré a hacer una actualización y verás algo de información y estas son advertencias, ¿verdad? Porque su réplica se une y luego el nodo uno o dos ha dejado el caché de prueba. Entonces, esa es una situación alarmante porque lo detuviste o podría ser algo que desaparezca por sí solo. Entonces, en ese caso, serías notificado.

Alertas de correo electrónico

Y luego tenemos otra réplica 108 cayendo y luego la réplica principal 107 se ha caído. Y, luego, esa es otra entrada que debe ignorar y probar la detención del caché con éxito. Entonces, en un escenario normal, cuando lo detuvo, también obtendría este evento seguro. Aunque hay advertencias, pero si baja, vería el nivel de verbosidad, el nivel de error no cambiaría a error. No sería aviso o ya no sería información. Nuestro proceso separado de caché de prueba también se detuvo.

Por lo tanto, estas son las piezas de información que debe buscar al usar los bloqueos de eventos de Windows y si hay algún monitoreo de terceros. Por ejemplo, teníamos un cliente que usaba la dinámica de la aplicación y lo ayudamos a activar estos eventos. Por lo tanto, todo lo que tenían que hacer era activar y almacenar en caché el registro de eventos mediante el ID de evento para que usted se pusiera en contacto con nosotros. Le daremos una lista de todos los eventos que NCache registros y lo tomas desde allí. Use una herramienta de monitoreo de terceros para monitorear y almacenar en caché también. Entonces, cerraré esto.

Alertas de correo electrónico

Ahora, volviendo a nuestro NCache funciones, exhibimos, en realidad insertamos información en los registros de eventos, pero no esperamos allí, también implementamos nuestro propio sistema de alerta y eso se basó en estas funciones, se llama alertas por correo electrónico. Ahora, todo lo que necesita hacer es habilitar la alerta de correo electrónico en un caché. Y también podría hacerlo en un caché en ejecución. Y, puedo poner mis datos aquí, por ejemplo, Ron@alachisoft.com. Es algo que tengo que revisar desde aquí es smtp.gmail.com. Solo estoy usando mi personal... y también proporcionaré el puerto. conservemos esta información. Y, simplemente usaré mi inicio de sesión. Usaré un destinatario.

Me enviaré un correo electrónico a mí mismo y solo diré inicio de caché o parada de caché. El tamaño se llena. Cluster entra en un cerebro dividido, se rompe. Transferencia de estado, que es un proceso cada vez que un nodo se une o deja el otro servidor tiene que redishomenajearlo o activar las copias de seguridad. Entonces, ese es el escenario. Nodo unido ni nodo dejado, ¿verdad? Entonces, podría recibir una notificación y todo lo que necesita hacer es venir aquí y aplicar configuraciones.

configuración de alertas por correo electrónico

En realidad, no haría esto por mi caché. Este caché de aquí. Ya lo hice para el caché de prueba y todos los eventos configurados. Solo diré aplicar configuraciones y te mostraré esto con la ayuda de un ejemplo. Así que empezaré con esto, ¿verdad? Solo comencé 107 y recuperaré los registros de eventos y, si solo los actualizo, hay algunos datos, así que comencé con éxito. 107 se ha unido. La caché de prueba se inició correctamente. Y puede ignorar el mensaje de error.

Ahora, ¿qué pasa con la alerta por correo electrónico? Entonces, para eso, tendré que volver a mi máquina, aquí mismo, y espero que se inicie un correo electrónico. Por favor, ignora este. Por lo tanto, obtendría el mismo evento en forma de alertas por correo electrónico, pero esta vez NCache está consumiendo esos eventos y enviando una alerta por correo electrónico a los destinatarios que se han suscrito. Entonces, podrían ver eso... Primera Alerta, en realidad hay muchas alertas. Entonces, nos 107 unimos al caché de prueba, luego usaré esta ventana, justo aquí. No tienes que abrirlo. Comenzó con éxito. 108 se unieron. En realidad, estos son algunos eventos antiguos, así que permítanme usar 1133, sí, estos son porque estas alertas estaban abiertas, así que estaba haciendo pruebas basadas en eso.

¡De acuerdo! Entonces, concentrémonos en 1133. Entonces, 107 réplica se unió y luego la prueba de caché se inició correctamente. Entonces, regresaré aquí y comenzaré rápidamente con 108 y les mostraré que esto activaría una alerta de correo electrónico y entradas de registro de eventos, una al lado de la otra. Ahora bien, este es nuestro propio SMTP implementado, pero detrás de escena estamos usando los registros de eventos, ¿verdad? Entonces, también puedes hacer eso. Una vez más, solo actualizaré aquí. Hay entradas, ¿verdad? Entonces, 106 y 106 nuevamente se registraron dos veces y si vuelvo aquí y envío un recibo aquí, debería poder recibir dos correos electrónicos más o incluso más porque también tengo transferencia de estado y otros eventos. Si hubiera algunos datos en el caché, también tendría esos eventos. Ahí vas. Entonces, 108 Test Cache comenzó Test Cache se inició con éxito y esto fue para 108, ¿verdad? Entonces, solo hago un envío y recibo una vez más para asegurarme de que no haya más correos electrónicos.

Por lo tanto, puede notificar a los administradores de su sistema en caso de cualquier problema y simulemos un problema. ¿Qué pasa si el nodo dos se cae, verdad? O bien, si hubo una rotura de conexión. Realmente no podemos simular una interrupción de la conexión aquí, pero podemos simular la caída del nodo y lo acabo de hacer. Entonces, en primer lugar, en realidad le mostraría el evento en el registro de eventos. Hay advertencias, ¿verdad? Y, veamos si la alerta de correo electrónico detecta burlas o no. Espero que sea bastante sencillo. Solo estoy destacando algunas de las funciones básicas que puede usar y obtener el monitor de entorno en lo que respecta a la salud. Por lo tanto, podría ver que el nodo se fue y luego se generó el registro de eventos 107, 107. Por lo tanto, podría poner una lista de destinatarios aquí, según sea necesario, o podría ser un grupo, pero asegúrese de especificar un destinatario por línea. ¿Está bien?

Entonces, el otro debe ser support@alachisoft.com o puede ser kal@alachisoft.com. Entonces, entonces podrías tomarlo desde allí. Así de simple es comenzar con las alertas por correo electrónico. NCache herramienta de monitoreo Hemos cubierto los registros de eventos. hemos cubierto NCache Alertas de correo electrónico.

NCache Registros - Demostración

El siguiente es NCache logs eso es algo que es un tema un poco avanzado, pero pasaré el mayor tiempo posible en los logs y podemos continuar desde allí.

Detendré este caché porque el caché de prueba es el que he estado usando y, mientras tanto, mientras se detiene, déjame abrir una aplicación. Lo siento por la estructura de carpetas. Lo copié de otro entorno, así que... ¡Muy bien! Entonces, permítanme abrir mi estudio visual. No lo necesito para esta sección, pero lo mantendré abierto para estar preparado mientras espero que se detenga el caché y mostrarle las capacidades de registro dentro NCache. Abre un sitio web. Esto es terriblemente lento por alguna razón. Lo espero mientras tanto déjame volver aquí. Creo que es porque Visual Studio no debería haber hecho eso. De todos modos, déjame ver si puedo cerrarlo. ¡Está bien! Entonces, volviendo a esto, tenemos el caché de prueba detenido, ¿verdad?

Entonces, le mostraré las capacidades de registro dentro de NCache. Por lo tanto, los registros se mantienen y estos son registros de caché. Puedo deshacerme de estos, al menos de estos. Los cachés que están detenidos, iniciados, ahora podría eliminarlos. Entonces, comenzaré de nuevo, estos son los cachés en ejecución, no elimine sus archivos de registro. Lo acabo de hacer para esta demostración en particular. Comenzaré un nodo aquí y le mostraré los archivos de registro que se crean en el lado del servidor y le daré algunos detalles al respecto. Comprender los archivos de registro necesitaría información avanzada sobre el agrupamiento y sobre el marco de NCache. Entonces, solo hablaré sobre algunos conceptos básicos.

Análisis de registros con la herramienta LogViewer

Ahora que hemos creado un caché, iniciado el caché de prueba y la réplica, lo he iniciado, así que aprovecharé esta oportunidad para abrir los registros en el visor de registros también. Entonces, si va a la papelera, Herramientas, GUI, hay esta herramienta de visualización de registros que viene instalada con NCache. Puede usar cualquier bloc de notas, WordPad, notepad ++, pero esto es algo que realmente puede ayudarlo a ordenarlo con lectura, marca de tiempo, nivel de registro y luego identificar el mensaje también. Entonces, solo abriré. Te lleva al mismo directorio. Abriré el caché de prueba aquí y podrás ver todos los registros que están allí. Entonces, tenemos… y esta es una herramienta muy interesante por cierto. Podrías usar diferentes campos y nodos, ¿verdad? Y luego podría proporcionar un filtro basado en eso. Por lo tanto, aquí se especifica un filtro.

Registros del lado del servidor

Entonces, solo te mostraré algunos detalles básicos. Tenemos parámetros operativos, 107, 7805. Las réplicas siempre serían 7806. Cualquiera que sea el puerto que especifique, el siguiente es para la réplica. Entonces, instala la vista, es el primer servidor. Entonces, 7805 es el único servidor. Entonces, cada vez que se inicia un servidor, se comunica con la capa de agrupación y obtiene la vista. Entonces, se instala usándose a sí mismo como coordinador y verá que 7805 107 está usando su propia vista. El ID de vista es 0 y luego el miembro se unió al evento. Estos son nuevamente registros de eventos que están relacionados. Y luego ve muchos mensajes de información aquí y luego la réplica debe haberse unido aquí. 7805 y se podía ver ahora que se ha unido 107 con 7806. Entonces, la réplica se ha unido.

Entonces, cada servidor se inicia, trata de averiguar qué otros servidores están disponibles. Si no hay servidores disponibles, comenzaría como un primer servidor y luego iniciaría su réplica y crearía un clúster de caché de un nodo. Y luego verá un caché, eventos de transferencia de estado y luego inicializar caché. Comenzó con éxito. Entonces, aquí, antes de este evento, si ve algunos mensajes de error como estos, no se preocupe porque está tratando de conectarse a otros servidores y es posible que esos otros servidores aún no estén allí porque 108 aún no se inició. Por lo tanto, intentó conectarse a él, pero no obtuvo ninguna respuesta y, en este punto, vendré aquí rápidamente y usaré la herramienta de prueba de esfuerzo, una nueva instancia. También le mostraré el evento de conectividad del cliente. Y, por cierto, todos los registros de eventos, todas las ventanas, las alertas de correo electrónico que configuramos siguen intactas, ¿verdad?

Entonces, permítanme cerrarlo y volver y, como dije, también pueden abrirlo a través de Notepad ++. Simplemente abra la misma herramienta con el bloc de notas. Ahora, se abre el mismo archivo de registro, pero esta vez, dado que también iniciamos un cliente, hacia el final, también verá un cuadro de conexión del cliente. Déjame traerlo aquí. Entonces, hay una demostración de la IP de Box, el nombre de la caja, la GUI y una ID de proceso está conectada a la memoria caché. Entonces, un servidor y vería al cliente conectado. Ahora, un escenario podría ser cómo saber si hay algún problema en el caché. Entonces, vería mensajes de error después de este punto, eso es una indicación de su mensaje de error. El mensaje de error antes de esto es solo un descubrimiento. Por lo tanto, son bastante normales hasta que vea muchos de esos mensajes de error. Verá algunos errores, pero esos son solo mensajes de descubrimiento.

Ahora, simplemente iniciaré este caché y le mostraré los registros de este servidor, así como los registros del servidor y le mostraré cómo cambia eso. Ahora, esto se ha iniciado, así que todo lo que tengo que hacer es volver aquí, veamos si se actualiza, no lo hizo, así que volveré aquí y echaré un vistazo al registro de este servidor. Entonces, ahora se ha iniciado 108. Entonces, verías algo más de actividad. ¿Dónde estaba la última entrada? Déjame echar un vistazo a eso. ¡De acuerdo! Entonces, teníamos esto como una entrada de pérdida, ¿verdad? Ahora, ingrese el permiso de 108 y comenzó a unirse. 107 instaló una vista que tiene 107, 107 y 108. Y, ahora 108 réplica también se uniría y luego tendría otra vista que tendría 107, 107 réplica 108, 108 réplica. Y vería que la transferencia estatal comenzó y terminó, por lo que todo salió bien con esto. Entonces, el nuevo servidor se unió y todo esto se registra en los registros de eventos, así como se mostró anteriormente.

Ahora, solo le mostraré los archivos de registro del servidor 2 para que tenga algunos detalles al respecto. Cómo el otro servidor... porque el otro servidor se inició y el servidor uno ya estaba allí. Entonces, le mostraré los archivos de registro que generalmente comenzaron con la fecha de modificación para que tenga el archivo más reciente en la parte superior. espero hacerlo ¿Dónde está la memoria caché de prueba? ¡Ahí tienes! Hay otros cachés ejecutándose en este cuadro también. Creo que la hora no se muestra bien, pero déjame echar un vistazo. ¡Bien! Entonces, de todos modos, usemos esto como ejemplo porque tengo poco tiempo. Entonces, tomaría tiempo. Entonces, 108 comenzó y, en este momento, realmente solicitó. Entonces, debe haber sido como un solo nodo, ¿verdad? Pero, en este caso, en realidad vería el permiso para unirse. Entonces, en realidad no usaría esto. No puedo buscarlo en el archivo de registro. ¡Muy bien!

Sé lo que está pasando. Estoy mirando la carpeta del archivo de registro local, por lo que debe haber archivos de registro, ¿verdad? Entonces, mire la fecha de modificación y este es el archivo de registro real. Me disculpo por eso. ¡Bien! Entonces, ahora 108 comenzó y pudo ver que realmente lo intentó pero falló, por lo que realmente vería algunos mensajes de error aquí. Hubo este error porque no es el único, su réplica no está allí, por lo que no es el primero. Entonces, ves allí 107, ya comenzó, así que le dio la vista y luego comenzaron las transferencias estatales. Estos son algunos cubos de información y luego los miembros se unen al clúster de caché. ¡Muy bien!

Entonces, así de simple es echar un vistazo a los archivos de registro pero, como dije, estos pueden volverse complejos según el caso de uso, según los problemas que esté solucionando y también tenemos los archivos de registro de réplica. Por lo tanto, es bueno que ella realmente comparta los errores con nosotros y que podamos ayudarlo a comprenderlo mejor. Entonces, cada servidor con las líneas de tiempo podría ver los problemas anotados en los archivos de registro. Volveré rápidamente. Me queda algo más de tiempo, así que permítanme mostrarles otro escenario donde... y déjenme ver si puedo abrir la herramienta del monitor.

Registros de la API

Ahora, hay otro tipo de archivo de registro que se encuentra dentro de la herramienta de monitoreo, así que para este caché en particular, usémoslo. Vamos a crear un nuevo tablero.

¡Está bien! si hay un escenario en el que sus servidores tardan más en completar algunas solicitudes o hay una lentitud, ¿cómo abordar eso? Por lo tanto, una forma es mirar los contadores de rendimiento de su aplicación, así como el NCache perf-mon contadores que es la siguiente sección última sección para ser honesto. Pero, este archivo de registro en realidad puede ayudarlo a identificar que tenemos estos registros de API. Entonces, si simplemente abre la herramienta de monitoreo y arrastra y suelta los registros de API, usa las Preferencias, en realidad registra información aquí, así que solo diré habilitar el registro de archivos, encenderlo y luego pensar en ejecutarlo.

perfmon-contadores

Por lo tanto, debe simular la prueba, digamos que su prueba demora 15 minutos y reproduce el problema o en su entorno de producción si hay un momento específico en el que ve lentitud o no está seguro de qué aplicación está causando lentitud, qué llamada es causando lentitud, cuál es el método dentro de la aplicación que está causando la lentitud, en realidad podría identificarlo con la ayuda de los registros de la API. Entonces, todo lo que necesitas hacer es ejecutar esto. Volcaría toda la información y luego la detendría una vez que se reprodujera el problema y luego la revisaría a través de esto, donde verá la marca de tiempo. nodo servidor. cliente desde donde se originó esa solicitud, ID del cliente y el tiempo de ejecución. Entonces, este tiempo de ejecución es el factor más importante aquí. En este punto, está en submilisegundos, pero, ¿qué pasa si simulamos la carga y decimos herramienta de prueba de estrés nuevamente usando el escenario donde prueba caché para / M 1 024, y esto definitivamente usaría un valor que es mayor, verdad? Puedes ver 0.03, ¿verdad? 0.07 así que... Permítanme cerrar otras herramientas de estrés. ¡Sí! Podías ver ahora, el tiempo ha pasado, ¿verdad? 0.02, ¿verdad? Y, en realidad, podría ver cualquier error que se esté registrando en el lado del servidor.

tiempo de registros de API

Entonces, cualquier falla, la falla es algo evidente que se puede registrar en los archivos de registro, pero la lentitud se puede mapear con la ayuda de esta función. Y, si lo vuelvo a llevar aquí, en esta carpeta API logs, hay un archivo de registro que mantiene el historial de los datos. Entonces, los primeros promedios son 0.02, 0.01 y luego, hacia el final, verás algunos valores aumentados, ¿verdad? Eso le da una indicación contra el tiempo que esta llamada en particular es lenta. Necesito verificar el método y luego debes correlacionarlo con eso dentro de tu aplicación. Entonces, creo que eso es algo que se puede usar, lo usamos todo el tiempo para depurar los entornos de nuestros clientes. Verifique la hora, pídales que reproduzcan el problema que tenemos frente a nosotros, habilite los registros y, además, esto también se puede combinar con los registros del lado del cliente. Dentro de la instalación de su cliente, puede especificar los registros, por ejemplo, si voy a la parte del cliente de NCache en la máquina cliente donde está el servidor web, hay estos registros habilitados, ¿verdad?

Registros del lado del cliente

Por lo tanto, cada caché tiene este indicador de habilitar registros de clientes que puede activar. Entonces, esto también crearía un archivo de registro del lado del cliente, un archivo de registro similar al que ha visto. Entonces, creo que eso ayuda en el lado de registro de las cosas. Me tomaré 10 minutos más y luego concluiré con los contadores de rendimiento porque esa es la sección más importante que tenemos.

NCache Supervisión del rendimiento (escenarios)

Cómo hacer el seguimiento del rendimiento con el NCache? Espero que no sea demasiada información. Lo he mantenido básico, pero los escenarios son algo que se alinea con sus casos de uso diario.

Monitoreo en tiempo real a través de PerfMon

Ahora, volviendo a la supervisión del rendimiento, NCache te da dos tipos de contadores. Estos son contadores PerfMon, por lo que podría decir PerfMon y esperar que el monitor de rendimiento interno NCache y permítanme cerrar esto aquí y ejecutar una herramienta de estrés muy rápido para que ahorremos tiempo. Entonces, si abro el contador de rendimiento, tenemos NCache categoría, ¿verdad? Por debajo NCache categoría, tenemos todos los contadores que necesitamos. Los promedios son muy importantes. Esto le da la cantidad promedio de tiempo para agregar, buscar e insertar en el caché. Entonces, usaré todos estos, ¿verdad? Y elija Agregar y elija Aceptar y luego le mostraré estos promedios de rendimiento.

ncache-supervisión del rendimiento

Entonces, verá que el microsegundo promedio para buscar es de 27 microsegundos, el microsegundo promedio para insertar es de 65 alrededor. Pero, ¿y el cliente?

rendimiento-contadores-numeros

Entonces, echemos un vistazo a los contadores del lado del cliente que indican cuánto tiempo lleva completar una operación. Entonces, tu eliges NCache categoría de cliente, elija Caché de prueba para el cliente y luego elija agregar. Entonces, debajo de aquí, verías NCache sección de clientes también y esto es lo más importante porque esto le da la NCache estimación de ejecutantes del lado del cliente. Le da el tamaño del elemento, por lo que es 1024 Le da un promedio de microsegundos por recuperación 718 y ese es el tiempo total y la aplicación tardó dentro de su aplicación para serializar, si la compresión está activada para comprimir, si el cifrado está activado para cifrar y luego enviarlo a través de la cable, se almacenó allí, por lo que se incluye el tiempo del servidor y luego regresó y luego se deserializó. Entonces, ese es el momento de una operación. Para buscar, es solo deserialización. Para inserción, también es esta serialización y en realidad podría ver microsegundos promedio por serialización para inserciones y microsegundos promedio por deserialización para recuperaciones.

ncache-cliente-contadores

Y, también podría habilitar los registros en torno a estos y eso es lo que realmente haría, ahora mismo. Veré si puedo abrir, por alguna razón deberíamos calmarte, pero veamos si puedo hacer eso. Y, en este escenario particular, lo que tengo en mente es, tengo una aplicación web que es... ¡Muy bien! esto está haciendo algo así que... Tengo una aplicación web que esperaba... ¡ESTÁ BIEN! Hay una pregunta. ¿Pueden estos NCache ¿Se puede acceder a los contadores de forma remota? ¡Por supuesto! Accedo a los contadores desde el servidor y desde los clientes todo el tiempo, por lo que si tiene acceso a estos servidores de forma remota, se permite el acceso perf-mon. En realidad puedes hacer eso. Entonces, no hay problema. Por lo tanto, generalmente es un servidor como servidor de monitoreo el que se encarga de todas estas tareas. Debería haber abierto Visual Studio de antemano y generar la aplicación, pero no lo hice, así que eso es lo que está causando el problema. Espero que esto funcione esta vez. ¡Ahí tienes! Creo que no estamos allí en realidad. Entonces, permítanme poner el directorio de mi proyecto... Por favor, tengan paciencia conmigo. Me tomaré un minuto. Esta es una porción muy interesante. Realmente quiero mostrar esto. vamos a ver si esto se recoge. ¡Ahí tienes!

Registro de conjuntos de recopiladores de datos PerfMon

Ahora, esta aplicación está diseñada de tal manera que experimentaré con diferentes tamaños de objetos, ¿verdad? Y, en base a eso, registraré los contadores de rendimiento y le mostraré cómo aumenta el tamaño del objeto y cómo disminuye el rendimiento. Entonces, eso realmente presentaría un caso de uso en su aplicación, cómo recibir una notificación o cómo saber cuándo hay un problema con la aplicación. Entonces, lo que haré es comenzar el registro, ¿verdad? Entonces, solo usaré una herramienta de estrés para verificar si puedo conectarme a mi caché. Me tomaré cinco diez minutos más, así que avísame si estamos bien en el tiempo. Si hay algún problema, siempre podemos. Entonces, creo que estamos bien en eso. Acabo de ejecutarlo para que tengamos... Entonces, esto debería iniciar mi aplicación. ¡Ahí tienes! Y, ahora usaré mi máquina aquí mismo. Y comenzaré el registro de los contadores perf-mon y para eso puede usar el conjunto de recopiladores de usuarios. Para el monitoreo en tiempo real, existen contadores perf-mon, ¿verdad? En el que podría hacer clic aquí y agregarlos en la vida. Pero, eso realmente no ayuda para abordar un problema. Cuando la aplicación funciona lentamente, ¿cómo abordar eso?

Entonces, acabo de crear un conjunto de recopiladores de datos, ¿verdad? Prueba 11, ¿verdad? Creé manualmente, uso contadores de rendimiento y usaré el intervalo de muestreo para que sea de un segundo y agregue NCache contadores de clientes para ser precisos porque esta es mi caja de solicitud. También podrías usar otra cosa. Permítanme agregar NCache contadores, NCache cliente. Permítanme usar la herramienta de estrés una vez más para que se inicie esta caché de prueba. ¡Ahí tienes! Agregue y puedo cerrar la herramienta de estrés ahora, elija Aceptar y mientras tanto, espero... ¡Muy bien! Algo salió mal con esto.

Visual-Studio-Performance-Monitoring

¡De todos modos! Entonces, elegiré rápidamente siguiente en esta navegación y elegiré una ubicación amigable que pueda elegir, por ejemplo, usemos esto y elijamos Aceptar, Siguiente, Guardar y Cerrar. Y así se ha creado la prueba 11. De hecho, podría venir aquí y comenzar el conjunto de recopiladores y, mientras tanto, por alguna razón, mi aplicación web no se ejecutó. Entonces, lo ejecutaré una vez más. Interesante… ¡Está bien! A punto de mostrar lo que pasó. Debería haberlo ejecutado. Eso es lo que hice ayer y funcionó absolutamente bien, así que lo intentaré una vez. Creo que tengo un problema con el modo de canalización, por lo que no se ejecutará con esto, así que lo omitiré. Lo que puedo hacer es mostrarte los datos de esto que usé ayer. Entonces, si vengo aquí, el diseño de esto es de tal manera que tenemos tres tipos de pruebas, ¿verdad? 10 KB, 50 KB, 100 KB y 10 500 KB, por lo que si pasa por el objeto de 10 KB, en realidad simula la carga de obtener e insertar de 10 KB, así que lo ejecuté para 10 KB, 50 KB, 100 KB, 500 KB y entonces voy a registrar los contadores, ¿verdad? Entonces, dentro de E, prueba uno.

¡De acuerdo! ¡Ahí tienes! Entonces, ejecuté esta prueba y realmente quería mostrar los problemas, así que si solo digo control + A, oculto los contadores seleccionados y luego para probar el caché, en realidad también consume todos los demás contadores. Entonces, en primer lugar, verifique el tamaño promedio del elemento, por lo que la primera prueba se ejecutó para 1 kilobyte, 10 kilobytes nuevamente para 10 kilobytes, luego para 50 kilobytes, luego para 400 kilobytes y luego, hacia el final, la ejecuté para 500 kilobytes. Entonces, eso explica el tamaño del artículo.

tamaño del artículo

Ahora veamos la cantidad promedio de tiempo que tomó la recuperación. Entonces, hay un contador llamado promedio de microsegundos por búsqueda. Entonces, puedes ver que se necesitó aumentar durante un período de tiempo, ¿verdad? Por lo tanto, obtenga y luego haga lo mismo para estos porque esto es lo mismo y luego, a medida que agregó, el tamaño del elemento aumentó. La cantidad de tiempo para buscar ese artículo también aumenta junto con él. Pero, ¿qué pasa con el, ya que lo está buscando, por lo que debería haber una sobrecarga de deserialización? Entonces, eso está cubierto aquí. Entonces, la mayor parte del tiempo se dedica a la deserialización de eso, por lo que en realidad podría trazar la deserialización junto con eso. Entonces, estos pasaron la mayor parte del tiempo en la deserialización y es por eso que es lento.

gráfico de deserialización

Ahora, solo miraré los promedios de inserción, microsegundos promedio por inserción y podrían ver que eso también variaría con... ¡Ahí lo tienen! Por lo tanto, hemos insertado algo de tiempo y, a medida que agregó, el tamaño del elemento aumentó y la inserción tomó tiempo. Entonces, en su aplicación, si ve que la aplicación se está ralentizando, ¿verdad? Por lo tanto, registra estos contadores y simplemente verifica si es la serialización, la deserialización, la obtención o la inserción o la eliminación o el tamaño de la cola de solicitudes que en realidad está creciendo. Por lo tanto, cada vez que hay una actividad, hay algunos elementos en el tamaño de la cola de solicitudes y verá que se borrarán cada vez que los procese. Entonces, para las inserciones, echemos un vistazo al microsegundo promedio por serialización, así que esa es la sobrecarga. Permítanme hacerlo rojo y coloreado y podrán ver que es la serialización la que realmente está afectando los promedios.

gráficos de serialización

Por lo tanto, el promedio general de microsegundos por inserción, recuperación, eliminación, en el lado del cliente, le brinda una estimación del rendimiento que exhibe su aplicación y, al mismo tiempo, puede registrar estos contadores y luego echar un vistazo a eso. Desafortunadamente, no pude ejecutar mi aplicación, pero esto es de ayer. Ayer tuve un seminario web donde lo ejecuté con éxito y lo ejecutamos con 10 KB nuevamente 10 KB, 50 KB, 100 KB y 500 kilobyte. Entonces, pudimos ver la diferencia variable entre los rendimientos y esta es la forma de abordar cualquier problema de rendimiento que verifique y almacene en caché los contadores y esto debe combinarse con los contadores de su aplicación, por lo que siempre necesita que los contadores de su aplicación estén seleccionados junto con eso.

Por ejemplo, podría ver los contadores de ASP.NET para una aplicación web, ¿verdad? Aplicaciones ASP.NET. Por lo general, para la memoria .NET CLR también vemos si hay una aplicación de contención de memoria que puede dejar de funcionar. Por lo tanto, podría registrar los contadores del sistema y luego registrar NCache contadores como lo hice yo y luego tomarlo desde allí para completar nuestras secciones de monitoreo de rendimiento.

Conclusión

Estamos unos cinco minutos por encima de nuestro marcador de tiempo normal. Espero que esté bien debido a los problemas. Este es un seminario web práctico, por lo que se espera que vea estos problemas, pero solo para resumirlo, creamos un caché, le mostramos el NCache herramienta de monitoreo, estado, entradas de registro de eventos, alertas por correo electrónico, NCache registros, herramienta de análisis de registros, registros de API del lado del cliente y luego también le mostré los contadores perf-mon que están disponibles en el lado del servidor. Los contadores del lado del servidor están ahí para las estadísticas del lado del servidor y los contadores del lado del cliente están ahí para las estadísticas del lado del cliente. No pasé mucho tiempo explicando esos contadores. Debería haber estado haciendo eso, pero lo haré en nuestro próximo seminario web sobre el mismo tema.

Y, hacia el final, le mostré cómo identificar cualquier problema usando los picos o usando el registro del contador perf-mon con el NCache. Espero que haya sido informativo, fue interesante.

¿Qué hacer a continuación?

 
© Copyright Alachisoft 2002 - Todos los derechos reservados. NCache es una marca registrada de Diyatech Corp.