Fragmentación en WordPress: ¿qué plugin multi-DB utilizar?

12 oct 2010, 18:29:54
Vistas: 10K
Votos: 8

Tengo una instalación WordPress Multisite que aloja tantos blogs que necesito fragmentar (shard) la base de datos. Veo que hay tres plugins disponibles para distribuir WordPress en múltiples bases de datos:

Estoy tratando de decidir cuál usar, pero no he encontrado mucha información que los compare.

¿Alguien tiene experiencia implementando alguna de estas tres herramientas? O mejor aún, ¿experiencia con más de una y un resumen de por qué cambiaron?

Gracias, Bethany

3
Comentarios

Abeja, por favor selecciona una respuesta como "la respuesta" :)

hakre hakre
10 ene 2011 14:35:28

Como soy nuevo en esta configuración de "Base de Datos", supongo que tendré que probar primero la más fácil, ya que seré el único trabajando en los 24 sitios y la velocidad es un problema. ¡Les agradezco mucho a todos! Realmente no pensé que obtendría respuestas, y mucho menos tan rápido. Gracias. Espero que esto funcione, deséenme suerte :) Fe

User User
10 ene 2011 10:33:22

@Fe: ¿Eres la misma persona que "Abeja", quien hizo la pregunta? ¿Hay alguna razón por la que no puedas usar ese inicio de sesión? Este no es el mismo sistema que un foro, por lo que no deberías escribir una nota de agradecimiento en una respuesta, sino usar el sistema de votación (una vez que tengas suficiente "reputación" para hacerlo).

Jan Fabry Jan Fabry
10 ene 2011 12:45:07
Todas las respuestas a la pregunta 3
1

Personalmente, no uso ninguno de ellos. En su lugar, utilizo un clúster NDB. NDB es el motor de replicación maestro-maestro integrado en MySQL.

La única limitación práctica de NDB es la falta de índices de texto completo. Pero siempre puedes usar la API de Yahoo o Google para búsquedas dentro de tu sitio. Considero que vale la pena por la redundancia adicional, especialmente cuando se tiene en cuenta que ningún servidor termina siendo un cuello de botella para escrituras en la base de datos.

Si lo que necesitas es replicación maestro-esclavo con un cuello de botella para escrituras, HyperDB es desarrollado por Automattic, por lo que es la opción más segura entre los plugins que mencionaste. Dicho esto, ten en cuenta que parte del código de HyperDB en realidad se ha incorporado a WordPress desde la versión 3.0 y la fusión con WPMU. (Revisa el archivo wp-db.php en wp-includes, notarás que gran parte puede manejar múltiples servidores de base de datos de forma nativa).

14 oct 2010 02:58:43
Comentarios

Para agregar a este enfoque (para resolver el problema en la capa de la base de datos): También puedes hacer proxy de servidores MySQL. Y hay más beneficios al reemplazar la clase WPDB con una que haga uso de mysqli o incluso mysqlnd para obtener más rendimiento en el lado de PHP.

hakre hakre
10 ene 2011 14:32:53
1

Yo optaría por HyperDB.

Está desarrollado por los desarrolladores principales de WordPress y está basado en el código utilizado en Wordpress.com.

http://wordpress.org/support/topic/shardb-or-hyperdb

SharDB podría ser un poco más fácil de configurar pero probablemente tenga menos características que HyperDB. Diría que eches un vistazo a ambos y determines cuál se ajusta mejor a tus necesidades.

12 oct 2010 19:56:18
Comentarios

¡Hola, muchas gracias por la información! HyperDB ciertamente es flexible y está lleno de funciones... posiblemente más de lo que necesito.

Bee Bee
13 oct 2010 06:03:05
2

Matt habló en nuestra empresa hace unos meses. Recomendó una configuración de base de datos maestro-esclavo con muchos esclavos de solo lectura. Su razonamiento fue que las escrituras eran costosas y las lecturas—mucho más numerosas—no lo eran, por lo que era mejor tener más capacidad de lectura. Lo mismo para los servidores de aplicaciones: usar hardware económico para resolver el problema y olvidarse de supercache.

15 oct 2010 03:02:16
Comentarios

Esta parece una gran opción, pero ¿puedes explicar un poco más sobre cómo podrías lograrlo? (es decir, cómo configurar WP para que las escrituras vayan al servidor maestro y las lecturas a uno de los esclavos) ¿Hay algún plugin que pueda ayudar con esto? ¿O es una configuración a nivel de base de datos/alguna otra herramienta?

rinogo rinogo
11 ago 2015 05:30:22

¿Quizás esto? "HyperDB te permite dividir las escrituras y lecturas de la base de datos y asignar cada una a un array de servidores."(https://codex.wordpress.org/HyperDB#Replication)

rinogo rinogo
11 ago 2015 05:33:03