¿Tiene alguna estrategia efectiva para lanzar una v2 de un sitio WP?

12

Mi equipo y yo estamos trabajando con un cliente que tiene un sitio de WordPress existente con un poco de contenido y un tema personalizado que crearon. Es un blog grupal, lo que significa que tiene varios bloggers de todo el mundo que están agregando & editando contenido todo el tiempo.

Nuestro trabajo es crear un tema completamente nuevo, con muchas características nuevas. Algunas de estas funciones requerirán nuevos widgets personalizados, complementos y campos de base de datos.

Actualmente estamos trabajando con nuestras propias máquinas de desarrollo e integrándolas en un único servidor de desarrollo. Todo el código está versionado en SVN. Nuestro DBA designado está fusionando manualmente cualquier cambio de base de datos en la base de datos dev en este momento, aunque esperamos que pueda automatizar eso pronto.

Acabamos de hablar sobre nuestro proceso de lanzamiento de producción. Significado: una vez que hayamos terminado, ¿cómo vamos a llevar todo nuestro código personalizado al servidor de producción (en vivo) sin problemas y con la menor interrupción posible?

Tenemos algunos planes en mente, pero me encantaría saber cómo otros han abordado este problema también. ¿Se deben seguir algunas prácticas recomendadas o se deben evitar los errores conocidos?

    
pregunta Mike Lee 12.08.2010 - 03:09

3 respuestas

4

Si sigue los consejos de SethMerrick, puede reducir considerablemente el tiempo de conmutación reduciendo el TTL en los registros DNS correspondientes a aproximadamente 5 minutos, aproximadamente, varias horas (dependiendo de cuál sea el TTL actual) antes de cambiar la dirección IP.

Al hacer esto, le está diciendo a los servidores DNS remotos que solo almacenen en caché la dirección durante 5 minutos. Una vez que cambie la IP, puede aumentar el TTL a lo que fuera antes. Para minimizar aún más el efecto, realice la conmutación durante un período de poco tráfico.

    
respondido por el Aaron Terry 12.08.2010 - 06:18
2

No estoy seguro de si esto es aplicable, pero acabo de pasar por un proceso similar de migración y actualización simultánea de un sitio de alto tráfico.

La estrategia básica era trabajar en un servidor de prueba, luego, cuando todo estuviera listo, hacer un volcado de mysql en el servidor en vivo, importarlo al servidor de transferencia, hacer cualquier limpieza requerida, luego apuntar los registros DNS al servidor de transferencia , causando que el servidor de pruebas se convierta en el nuevo servidor en vivo.

El bit difícil es luego combinar todos los datos que se acumulan durante la propagación de DNS en el servidor de pruebas (que ahora es el servidor en vivo). En otras palabras, si transcurren 30 horas entre el momento en que realiza su volcado de MySQL / actualice el DNS y cuando se complete la propagación del DNS, deberá combinar de manera selectiva 30 horas de registros del sitio anterior al nuevo.

No es un proceso ininterrumpido, pero cuando tuvimos una semana en el camino, todos los problemas se habían solucionado.

    
respondido por el SethMerrick 12.08.2010 - 04:40
2

@Mike Lee: Gran pregunta y uno de los santos griales de WordPress (o cualquiera de los CMS de código abierto de uso general con los que estoy familiarizado, como Drupal, Joomla, et al.)

Si bien no está destinado a tratar su caso de uso, eche un vistazo a mi respuesta a una pregunta relacionada que describe un plugin de nivel beta que acabo de poner a disposición a través de WordPress Answers Exchange llamado WP Migrate Webhosts (sí, Apesto cuando se trata de nombres creativos.)

Pero también quiero resolver el caso de uso que describe con un complemento y actualmente estoy pensando en cómo lograrlo. Estoy pensando que la forma de abordarlo es dejar de resolverlo de forma genérica y, en cambio, abordar los patrones conocidos que existen en WordPress y luego permitir que cualquier otra persona " enganche " mi plugin para casos de uso especiales. También creo que un enfoque es serializar los datos y las estructuras en WordPress como datos en un archivo PHP para que un futuro complemento pueda aplicar esos cambios como deltas al igual que un sistema de control de código fuente aplica los deltas para llegar a la versión actual de la fuente. código.

Entonces, si bien no estoy respondiendo o resolviendo su problema por completo, espero darle una buena idea para pensar y también espero que usted u otra persona quieran colaborar en una posible solución.

    
respondido por el MikeSchinkel 12.08.2010 - 07:48

Lea otras preguntas en las etiquetas