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 NO te pido que me invites a un café... Te pido algo más fácil y mucho mejor

Escrito por un humano, no por una IA