Instalación de Wordpress en dos servidores: equilibrio de carga

14

Tengo que instalar wordpress (One Blog, un dominio, por ejemplo, mycompany.com/blog) en dos servidores que comparten una base de datos en un servidor diferente, estos dos servidores están detrás de un equilibrador de carga y el db estaría en otro servidor. Estamos planeando de esta manera debido al alto tráfico.

He realizado instalaciones de WordPress independientes en un solo servidor, en Windows 2003, 2008 con IIS6, 7, etc.

Solo estoy investigando cómo implementaría esto.

¿Cuáles serían los pasos para lograr esto y al buscar vi algunas publicaciones sobre el directorio wp-content / uploads que se sincronizarían a intervalos regulares?

su ayuda muy apreciada gracias por leer


Lo que hicimos :

a) Tenemos dos servidores web conectados a un clúster san b) creé un directorio de blogs en el san c) Mapeé ese directorio de blogs como un directorio virtual en ambos servidores web d) Wordpress instalado en cualquiera de ellos (como el dominio y el IIS virtual directorios es el mismo para ambos servidores, por ejemplo, www.abc.com) e) La base de datos para este blog se encuentra en dos cuadros de MySQL

como Wordpress está sentado en el san, por lo que no hay conflictos con las cargas ni nada de eso, la URL del blog es www.abc.com/blog y así es como está configurado en ambos.

Espero que ayude a alguien!

rihatum
fuente
1
+1 para el efecto "Nunca pensé en hacer eso".
Richard Slater
1
+1 para "Espero que alguien brinde una respuesta realmente excelente con instrucciones paso a paso sobre la mejor manera de implementar esto y por qué es la mejor manera".
Jed Daniels
acaba de agregar lo que terminamos haciendo - espero que esto ayude
rihatum

Respuestas:

4

Si esos directorios deben ser idénticos, ¿podría colocarlos en otro servidor y montarlos de forma remota a través de NFS?

Matt Simmons
fuente
Tenemos una SAN; entonces instalamos wordpress en la SAN y agregamos ese directorio en IIS como el directorio wordpress / blog. Gracias a todos por los comentarios ;
rihatum
2
Una SAN no es lo mismo que NFS.
Chris
3
Comparta sesiones con Memcache, comparta archivos con NFS o GlusterFS. Comparta el tráfico con HAProxy o Varnish (¡cachés también!) Y comparta bases de datos con replicación circular.
Tom O'Connor
GlusterFS es una sugerencia fascinante, gracias por eso. Estoy explorando eso como una solución a mi escala de Wordpress de cosas estáticas.
Artem Russakovskii
3

Hay tantas maneras de mejorar el rendimiento de WordPress que no requieren un segundo servidor y equilibrio de carga. En dos palabras: "cachear todo".

  • Utilice un cacher de código de operación php (APC). Puede lograr fácilmente tasas de éxito de caché del 90% con WordPress en menos de 64 MB de memoria.

  • Habilitar caché de consultas mysql. Puede alcanzar fácilmente el 65% o> tasas de aciertos de caché con muy poca memoria (depende del sitio, pero nunca demasiado alto).

Más importante:

Wordpress es un sitio pesado de "lectura" (frente a escritura) con la mayoría de las solicitudes limitadas a unos cientos de páginas (publicaciones de blog). Puede aumentar las solicitudes por segundo 10 veces al servir versiones estáticas de sus publicaciones más populares. El mejor complemento para eso es: wp-super-cache. No estoy seguro si ese complemento en particular es compatible con 2k3, pero la idea general de crear automáticamente versiones estáticas de sus páginas y actualizarlas periódicamente para incluir nuevos comentarios, ediciones, etc. será su mejor opción.

Realmente dudo que su sitio esté haciendo suficiente tráfico para requerir dos servidores web / de aplicaciones si se implementan las mejoras comunes anteriores (lo anterior puede manejar fácilmente el efecto slashdot). Sin embargo, dos servidores web agregarían un nivel de tolerancia a fallas. Dado que se puede lograr el rendimiento con un servidor web, se puede lograr la tolerancia a fallas utilizando una configuración activa / pasiva. Esto sería más simple y no requeriría compartir información de la sesión.

CarpeNoctem
fuente
WordPress +1 también tiene complementos de almacenamiento en caché que pueden hacer un muy buen trabajo. No hay ninguna razón para ejecutar WordPress en dos servidores como este con una cantidad decente de caché habilitada.
WheresAlice
44
El equilibrio de carga no se trata solo del rendimiento, sino también de agregar redundancia.
Mike P
Cuando mencionas WP Super Cache, también debes mencionar W3 Total Cache
david
2

Nos encontramos con la misma situación, terminamos instalando un complemento s3 que aloja su directorio de carga de wp para que no tenga que lidiar con la sincronización.

Este es el que utilizamos: http://tantannoodles.com/toolkit/wordpress-s3/

¡Ha estado funcionando muy bien hasta ahora!

shennyg
fuente
1
Aconsejaría no usar un complemento que no se haya actualizado desde 2009; no está mantenido y puede que se arrepienta en el futuro (cambios de S3, seguridad, etc.).
Artem Russakovskii
Para su información, todavía estamos funcionando bien con este complemento.
shennyg
@shennyg: ¿sigues fuerte?
Ben
@Steve wordpress-s3 no se mantiene. Iría con la caché total de w3 , puede sincronizar sus bibliotecas de medios.
shennyg
0

Debe compartir entre servidores las cargas / dir y las sesiones dir, generalmente en / tmp

Cámbielo en php.ini y comparta los archivos fs para sesiones y archivos cargados entre servidores a través de samba, nfs o lo que prefiera.

sntg
fuente
0

En primer lugar, respondí una pregunta muy relacionada aquí que probablemente encuentres útil: replicación SAN + MySQL: ¿es eso lo que quiero para mi clúster Drupal con equilibrio de carga?

La agrupación web puede llegar muy lejos en la madriguera del conejo, por lo que es importante tener en cuenta los objetivos de su negocio y no perderse en el ingenio one-upsmanship. Por ejemplo, planea tener dos servidores web y un servidor de base de datos ... pero ¿qué pasa si el servidor de la base de datos es su cuello de botella? Entonces su segundo servidor web se desperdicia. En hardware moderno con un servidor web y un servidor de base de datos y un wordpress bien configurado, puede manejar un par de cientos de solicitudes por segundo. ¿Estás esperando eso? Si no, probablemente no tenga sentido el equilibrio de carga.

cagenut
fuente
0

las sesiones se comparten mejor a través de memcache que en el sistema de archivos.

Miguel
fuente
-1

En un par de Linux, usaría DRBD. El equivalente de Windows es el Servicio de archivos distribuidos.

http://technet.microsoft.com/en-us/library/cc753479%28WS.10%29.aspx

Terence Johnson
fuente
... excepto que DRBD proporciona un dispositivo de bloque, que apenas es equivalente a un sistema de archivos.
andol
... y luego puedo elegir con qué sistema de archivos formatearlo, lo que proporciona mucho más margen para la indecisión que estar atrapado con NTFS;)
Terence Johnson