Recomendado: colección de errores de ASP La recopilación de errores de ASP es útil para los principiantes, y quizás los expertos lo olviden. ASP Error Collection Microsoft VBScript Language*Error (0x800a03e9)-> Memoria insuficiente Microsoft VBSCRIPT Language*Error (0x800a03ea)-> Speech*Error Microsoft VBScript Language*Error (0x800a03ea)-> Error*Microsoft VBScript Language*
Las solicitudes ASP se inicializan mediante objetos WAM. El objeto WAM luego lo envía a ASP-Runtime. ASP-Runtime responde creando un objeto de página interno.Un objeto WAM es un objeto de hilo libre. Cuando llama a una extensión ISAPI como ASP.DLL, utiliza hilos del modelo MTA asignados por el grupo de subprocesos mantenido por IIS-Runtime.
Un problema difícil que enfrenta al crear una extensión ISAPI es cómo lidiar con la concurrencia y la sincronización del hilo causada por este grupo de hilos MTA. ASP-Runtime simplifica el problema cambiando cada solicitud ASP a una sola unidad roscada (STA) antes de ejecutar el script ASP. ASP-Runtime gestiona un grupo de hilos de ayuda de Helper independiente (en el fondo, ASP en realidad lo hace usando un grupo de hilos COM). Los diseñadores de ASP crearon este esquema de agrupación de hilos para proporcionar un equilibrio optimizado entre la concurrencia y la utilización de recursos al tiempo que eliminan la necesidad de que los programadores logren la sincronización.
¿Cómo cambia ASP-Runtime cada solicitud de un hilo MTA a un hilo STA? El mecanismo de programación ASP-Runtime coloca cada solicitud en una cola de solicitud central. Los subprocesos STA en el grupo de subprocesos administrados por el ASP monitorean la cola y procesan las solicitudes de una manera en primer lugar. Tenga en cuenta que el tamaño de este grupo de hilos cambia dinámicamente. ASP-Runtime genera hilos adicionales durante las comunicaciones máximas y libera hilos cuando hay menos comunicación.
El cambio a hilo STA resuelve efectivamente el problema de concurrencia, pero esto también tiene un impacto significativo en el rendimiento. La DLL extendida ISAPI procesada en un escuadrón de hilo MTA separado proporciona tiempos de respuesta más rápidos.
IIS proporciona un método para establecer el tamaño máximo del grupo de subprocesos STA y la cola de solicitud. El tamaño del grupo de roscas está controlado por la clave primaria AspProcesSorthreadmax en la metadatabase IIS. La configuración predeterminada para esta clave principal es 25 por proceso por procesador (comentario: es mejor encontrar la documentación relevante de Microsoft para probar este número. Algunas personas dicen que este número es 10 por CPU). Es decir, en una computadora de cuatro procesadores, cada proceso que procesa ASP puede tener hasta 100 hilos auxiliares. A menos que se hayan considerado problemas relacionados con la sintonización de grupos de subprocesos, se deben evitar cambiar este valor clave. Tenga en cuenta que no puede usar Internet Server Manager para cambiar esta configuración. Debe modificarse utilizando scripts de administración o aplicaciones VB.
IIS establece una capacidad máxima para la cola de solicitud de ASP. Por defecto, ASP-Runtime permite que una cola mantenga hasta 3000 solicitudes (un documento de Microsoft diferente establece que esta cola solo puede tener 500 solicitudes). Una vez superado, la solicitud de ASP de entrada posterior se negará y el mensaje de error se devuelve como servidor demasiado ocupado.
La clave primaria ASPPROCSORTHEATMAX y la clave primaria AsprequestqueUemax se pueden programar utilizando objetos de administración de IIS y ADSI. Por ejemplo, en un proyecto EXE estándar, consulte la biblioteca de tipo DS Active y escriba el siguiente código:
Dim mywebserver como activa.iads
Establezca myWebServer = getoject (iis: // localhost/w3svc)
Mywebserver.put aspprocessorthreadmax, 30
Mywebserver.put asprequestqueuemax, 1500
Mywebserver.setinfo
Aquí hay un breve resumen de cómo funciona el grupo de subprocesos ASP en II instalado de forma predeterminada en una sola computadora de procesador. Este grupo de subprocesos tiene 25 hilos STA Helper disponibles para cada procesador. Cuando llega una solicitud, se coloca en la cola de solicitud. ASP-RUNTIME Programas un hilo STA inactivo desde el grupo de subprocesos, si hay uno disponible (tenga en cuenta que este esquema permite que cualquier hilo en el grupo de subprocesos procese la solicitud). Si no hay hilos de ayuda gratuita, la solicitud se agregará a la cola. Mientras la cola no alcance la capacidad máxima predeterminada, se procesarán todas las solicitudes.
Programación Aplicación distribuida con Visual Basic 6.0 de Ted Pattison
Compartir: características técnicas y métodos de uso de ASP Hace unos años, el único canal en la industria para el lanzamiento de la página de inicio dinámica fue el modelo CGI (interfaz común de GA Teway). Aunque las soluciones técnicas posteriores como ISAPI, NSAPI y JDBC han mejorado en comparación con CGI, estas soluciones aún se miden a partir de la realidad técnica de la red empresarial (intranet).