Pregunta

¿Cuánto tráfico puede manejar un servidor web?¿Cuál es la mejor manera de ver si hemos superado eso?

Tengo una aplicación ASP.Net que tiene unos cientos de usuarios.Algunos aspectos requieren un uso intensivo del procesador, pero hasta ahora lo hemos hecho bien con un solo servidor para ejecutar tanto SqlServer como el sitio.Ejecuta Windows Server 2003, 3,4 GHz con 3,5 GB de RAM.

Pero últimamente he empezado a notar ralentizaciones en varios momentos y me preguntaba cuál es la mejor manera de determinar si el servidor está sobrecargado por el uso de la aplicación o si necesito hacer algo para arreglar la aplicación (no lo hago). Realmente quiero pasar mucho tiempo buscando pequeñas optimizaciones si espero demasiado de lo que viene).

¿Fue útil?

Solución

Lo que necesitas es algo de información sobre Planificación de capacidad..

La planificación de la capacidad es el proceso de planificar el crecimiento y pronosticar los períodos de uso máximo para cumplir con los requisitos de capacidad del sistema y las aplicaciones.Implica pruebas de rendimiento exhaustivas para establecer la utilización de recursos de la aplicación y el rendimiento de las transacciones bajo carga.Primero, mide la cantidad de visitantes que el sitio recibe actualmente y cuánta demanda coloca cada usuario en el servidor, y luego calcula los recursos informáticos (CPU, RAM, espacio en disco y ancho de banda de la red) que son necesarios para soportar la situación actual y futura. niveles de uso.

Otros consejos

Si tiene acceso a algunas herramientas de creación de perfiles (como las de la edición Team Suite de Visual Studio), puede intentar configurar un servidor de prueba y ejecutar algunas solicitudes sintéticas en él y ver si hay alguna parte específica del código que tarda excesivamente. correr.Probablemente deberías comprobar algunos gráficos de uso de CPU y memoria a lo largo del tiempo antes de hacer esto, para ver si puede ser eso.(Un número similar al "promedio de carga" de UNIX podría ser una métrica útil, no sé si Windows tiene algo parecido.Básicamente, el número promedio de subprocesos que necesitan tiempo de CPU para cada intervalo de tiempo).

Comprueba también lo obvio: que no te estés quedando sin ancho de banda.

Medir, medir, medir.Rico Mariani siempre dice esto y tiene razón.

Medir requerimientos/seg, RAM, CPU, sesiones, etc.

Es posible que se le ocurra una estrategia de almacenamiento en caché (almacenamiento en caché de resultados, almacenamiento en caché de datos, dependencias de almacenamiento en caché, etc.).

Vea también cómo le está yendo a su SQL Server...Los índices son un buen lugar para comenzar, pero no lo único que hay que mirar.

En ese hardware, una aplicación .NET debería poder atender entre 200 y 400 solicitudes por segundo.Si solo tiene unos pocos cientos de usuarios, dudo que vea incluso 2 solicitudes por segundo, por lo que creo que tiene mucha capacidad en ese cuadro, incluso con el servidor SQL en ejecución.

Sin conocer todos los detalles, diría No, no verá ninguna mejora en el rendimiento al agregar servidores.

Por cierto, si no estás usando el Caché de salida, empezaría por ahí.

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