Pregunta

Tenemos un sistema web interno que se encarga de la mayor parte de nuestro negocio de empresas. Cientos de usuarios lo utilizan durante todo el día, es muy alta prioridad y siempre debe estar en ejecución. Estamos pensando en mudarse a ASP.NET MVC 2; en el momento en que utilizamos los formularios web. La belleza de la utilización de formularios web es que puede liberar de forma instantánea una sola página web en lugar de desplegar toda la aplicación.

Me interesa saber cómo otros están desplegando sus aplicaciones, mientras que todavía haciéndolos accesibles para el usuario. Con la herramienta de implementación en Visual Studio podría causar supuestamente un alto. Estoy buscando un método que es súper rápido.

Si tuviera correcciones de errores de alta prioridad, por ejemplo, sería aconsejable mezclar quizá formularios web con MVC y en lugar de reemplazar a la vista con un formulario web de código subyacente hasta que se haga la próxima versión adecuada que no es un formulario web ?

También he visto otras soluciones en el mismo servidor de tener la misma ejecución de aplicaciones web de lado a lado y, o bien cambiar el directorio raíz en IIS o cambiar el web.config para que apunte a una carpeta diferente, pero el problema con esto es que usted tiene que hacer todo un construir y desplegar incluso si se tratara de un simple corrección de errores.

Editar . Elaborar, ¿Cómo do de desplegar la aplicación sin causar interrupciones para los usuarios

¿Cómo está todo el mundo lo está haciendo?

¿Fue útil?

Solución

Creo que se puede ejecutar la aplicación MVC sin compilar también? y basta con sustituir Cs / puntos de vista y tal en la carrera.

Una desinstalación WebSetup / instalación es muy rápida, pero mata el grupo de aplicaciones .. lo que podría causar un problema. Dependiendo de cómo se construye su sitio.

La forma más suave es de ejecutarlo en dos servidores y almacenar las sesiones en el servidor SQL o estado compartido. A continuación, sólo puede traer S1 hacia abajo y parche => Traer una copia de seguridad de nuevo S1 y S2 traer abajo => parche S2 y luego traerlo de nuevo. Al pensó que esto podría no funcionar si realiza cambios importantes en las partes de la sesión del código.

Otros consejos

tiene varias instancias de su sitio web que se ejecutan en varios servidores. La mejor manera de hacerlo es tener un entorno de producción, un entorno de prueba, y un ambiente de Desarrollos. Puede crear casos de prueba y ejecutar la carga cada vez que tenga una nueva construcción, si se puede obtener a través de todas las pruebas, mover la versión en producción;).

Usted podría tener dos servidores físicos cada uno ejecuta IIS y anfitrión de una copia del sitio. O usted podría funcionar con dos copias del sitio en diferentes puntos finales de IIS en el mismo servidor. De cualquier manera lo cortas que van a necesitar al menos dos copias del sitio de producción.

Yo llamo a esto una A <-> B método de cambio

.

En primer lugar, haga que cada centro de producción en una dirección IP diferente. En DNS de su empresa, añadir un conjunto de entrada a una de las direcciones IP y darle un muy corto TTL. A continuación, puede actualizar el sitio B y pre-test / calentamiento del sitio pulsando la dirección IP. Cuando esté listo para ir, obtener su DNS cambió al nuevo sitio B. Una vez que su TTL ha expirado puede acabar con el sitio A y actualizarlo.

El uso de un estado de sesión compartida ayudará a minimizar la transición de los usuarios entre los sitios.

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