JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

TRUCO: Poner una aplicación Web en modo producción de manera rápida

Cuando ponemos una de nuestras aplicaciones Web en producción siempre tenemos que estar pendientes de ciertos detalles para asegurarnos de que se ejecuta con el mejor rendimiento. De hecho, si asististe el año pasado a mi charla compartida del Developer Day en Madrid (con Isabel Gómez de Microsoft) sobre rendimiento de ASP.NET, probablemente recuerdes que insistimos mucho en cosas tontas pero habituales, como por ejemplo que no te olvides de desconectar el modo activo de depuración de tu página.

Bueno, para poder evitar preocuparnos de muchas de estas cosas podemos tomar un atajo. Se trata de un ajuste poco conocido que se hace dentro del ámbito de la máquina (servidor) y que consiste en modificar el archivo machine.config (ubicado en C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG) de la siguiente manera:

<configuration>
    <system.web>
          <deployment retail=”true”/>
    </system.web>
</configuration>

El ajustar retail=true dentro del nodo deployment conseguirá que todas las aplicaciones Web del servidor se ejecuten en lo que se llama "modo comercial". Esto significa que se hará caso omiso de lo que indiquen los parámetros específicos de la aplicación y se deshabilitará la depuración de las aplicaciones, el  mostrar las trazas dentro de las páginas y además tampoco se mostrarán errores detallados a los usuarios remotos. Es decir, lomismo que si hubiésemos establecido en web.config:

· debug=false
· trace=false
· enableCustomErrors=RemoteOnly

Pero todo de golpe con un sólo ajuste.

Esto es especialmente útil para gente que deba gestionar servidores compartidos (hosting) donde se quiera asegurar de que la gente no puede ejecutar sus aplicaciones en depuración, o en nuestros servidores de producción para evitar que los programadores se despisten y no cambien estos ajustes. Si bien hay que tener en cuenta que ello nos puede perjudicar si realmente, al final, necesitamos depurar una aplicación que esté en producción, algo que en condiciones normales no deberíamos hacer.

¿Este post te ha ayudado?, ¿has aprendido algo nuevo? Pues ¡ayúdame a ayudar a otros! No te costará nada y puedes conseguir premio. Es muy importante. Pulsa para saber más...
José Manuel Alarcón
Banner

Comentarios (2) -

Ey que buen apunte! Precisamente ando liado últimamente con varios proyectos asp.net y al pasar del entorno de pruebas al de producción, suelo olvidarme de hacer los cambios en el web.config.

Gracias.

Responder

Hola Espinete:

Me refiero únicamente a esos tres que indico en el post. Aunque pongas, por ejemplo, debug=true la aplicaicón no entraría en modo de depuración.

Saludos

JM

Responder

Agregar comentario