Pregunta

En mi trabajo diario tenemos servidores web con carga equilibrada que se comunican con servidores de aplicaciones con carga equilibrada a través de servicios web (y últimamente WCF).En un momento dado, contamos con entre 4 y 6 equipos diferentes que tienen la capacidad de agregar nuevos sitios web o servicios o consumir servicios existentes.Probablemente tengamos entre 20 y 30 aplicaciones web diferentes y los servicios correspondientes.

Desafortunadamente, dado que no tenemos un control centralizado sobre esto debido a prioridades en competencia, estructuras organizativas, cronogramas de proyectos, categorías financieras, etc., es un gran desastre.Tenemos una variedad de servicios que se reutilizan, pero muchos de ellos son específicos de un front-end.

Lo ideal sería que tuviéramos un mejor control sobre esta situación y estamos tratando de controlarla, pero eso está llevando un tiempo.Una cosa que nos gustaría hacer es saber más sobre todas las interrelaciones entre los sitios web y los servidores de aplicaciones.

He utilizado Reflector para encontrar dependencias entre ensamblajes, pero me gustaría poder ver los patrones de tráfico entre servicios.

¿Cuáles son las opciones para intentar trazar relaciones de servicios web?En su mayor parte, estamos hablando principalmente de servicios internos (web a aplicación, aplicación a aplicación, lote a aplicación, etc.).Desde lo alto de mi cabeza, puedo pensar en dos formas de abordarlo:

  • Analice los ensamblajes en busca de referencias web.El inconveniente aquí es que no todo es una referencia web y no estoy seguro de cómo se enumeran las conexiones WCF.Sin embargo, esto sería al menos un comienzo para encontrar el 80% de las conexiones.¿Alguien conoce alguna herramienta que pueda realizar ese análisis?Como dije, he usado Reflector para referencias de ensamblaje pero no puedo encontrar nada para referencias web.
  • Posiblemente acceder a IIS y monitorear pasivamente el tráfico que entra y sale y de alguna manera descubrir a qué se llama y desde dónde.Estamos analizando herramientas empresariales que podrían ayudar, pero pasaría algún tiempo antes de que se implementen (y costarán mucho).Pero, ¿hay algo que pueda ayudar de forma rápida y económica?Una herramienta en particular (AmberPoint) puede acceder a IIS en los servidores y monitorear el tráfico entrante y saliente, agrega un poco de salsa especial y comienza a construir un mapa del tráfico.Muy bonito, pero cuesta un dineral.

Lo sé, lo sé, ¿cómo diablos te metiste en este lío en primer lugar?Me supera, simplemente tratar de ayudarnos a controlarlo y salir de él.

Gracias Matt

¿Fue útil?

Solución

Necesitas un registro de servicios (UDDI??)...Si tuviera un medio para catalogar estos servicios y sus consumidores, facilitaría mucho este trabajo de descubrimiento de dependencias.Sin embargo, esa no es una solución fácil.Se necesita tiempo y documentación para implementar un catálogo.

Creo que la solución más rápida sería consultar los registros de IIS y encontrar las URL de origen que se originan en sus propios servidores.Al menos podrá rastrear de qué servidores provienen sus consumidores.

Además, si ya cuenta con algún tipo de mecanismo de autenticación, puede rastrear quién está utilizando un servicio en particular basándose en el inicio de sesión.

Tienes razón sobre AmberPoint.Existen otras herramientas que catalogan el tráfico de servicios y brindan informes que muestran lo que sucede con sus servicios.Systinet, SOA Software y Actional también tienen productos similares a Amberpoint, pero creo que Amberpoint tiene una versión gratuita.

Otros consejos

La forma más sencilla es revisar los registros, pero si eso no incluye la referencia, es posible que también desee monitorear lo que sale de su web al servidor de aplicaciones.Puede utilizar herramientas como Wireshark o Microsoft Network Monitor para ver este tráfico.

La otra "solución" y la uso de manera flexible es vincular un servidor web específico al servidor de aplicaciones y luego ejecutar un paquete y ver qué afecta al servidor de aplicaciones.Probablemente podría hacer esto en un entorno de prueba para aprender los efectos en los usuarios del sitio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top