Esta página será de gran beneficio para aquellos usuarios que tengan su sitio web alojados en un servidor compartido. Cuando tiene poco o ningun control sobre la configuración de su servidor, puede ser extremadamente difícil preparalo para cargas inesperadas, tal como un vínculo de Slashdot.
Los pasos a continuación describen el mecanismo interno de drupal para el control de congestión, el auto-regulador, y le guiará en su configuración.
Nota: si tiene control completo sobre el servidor que aloja su sitio web, primero debería ajustar correctamente el sistema operativo, la base de datos, el servidor web y PHP.
administrar > configuracióny seleccione
Habilitadodebajo de las palabras
Soporte de caché:, luego haga clic en “Guardar configuración”.
administrar > configuración > módulos. Seleccione la marca en la columna de estatus, y haga clic en
Guardar configuración.
administrar > configuración > módulos > estadísticasen su sitio, y haga clic sobre
Habilitadodebajo de las palabras
Habilitar registro de acceso:. Si usted es el único utilizando este registro, y desea mantener su base de datos lo más pequeña posible, puede ajustar el tiempo que se mantiene el guardado el registro a 1 hora aproximadamente. Al finalizar, haga clic en
Guardar configuración.
administrar > configuración > módulosy coloque una marca de verificación en la columna estado, y haga clic en
Guardar configuración.
Estado de regulación: Con el fin de ajustar apropiadamente el auto-regulador en su sitio, necesitamos conocer la cantidad de tráfico que su sitio tiene. El módulo de regulación provee un bloque para este propósito. Diríjase a la página de administración de bloques en
administrar > configuración > bloques, y habilite el bloque
Estado de regulación. Para este caso, no seleccione
personalizadoo
regular, pero puede ajustar libremente el
pesoy la “región” según sus preferencias. Ahora haga clic en
Guardar bloques.
estado de regulación: No es deseable que los usuarios de su sitio vean el bloque
Estado de regulaciónque acaba de habilitar. Este bloque está diseñado como una herramienta administrativa. Si usted es el único administrador del sitio, y adminístra el sitio como uid=1, entonces no necesita establecer ningun permiso—por defecto, uid=1 tiene todos los permisos. Por otra parte, si tiene múltiples administradores o administra su sitio con una cuenta diferente, necesitará conceder a su grupo administrativo el permiso
acceder al bloque de regulación.
Vaya a la página de administración de permisos en su sitio en administrar > cuentas > permisos
y ubique el permiso accesar lista de usuarios
. Coloque una marca de verificación en la columna del rol apropiado y haga clic en Guardar permisos
. Es importante tener en cuenta que todos los usuarios en ese rol verán el bloque estado de regulación
, debido a que se puede crear una sobre carga al desplegar este bloque ya que cada vez que se muestra se realiza una consulta a la base de datos.
Estado del regulador. Todo lo que este dice en este momento es
Regulación: deshabilitada, indicando que actualmente la regulación no está activada.
administrar > configuración > módulos > regulador. Puede encontrar rápidamente esta página haciendo clic en la palabra
deshabilitadoen el bloque
Estado del regulador. En la página administrativa, haga clic en
habilitadodebajo de las palabras
Habilitar auto-regulador, y haga clic en
Guardar configuración.
Estado del regulador: Ahora debe notar que hay más información desplegada en el bloque
Estado del regulador. Lo único que nos interesa en este momento es la sección del fondo que debe decir algo como
Este sitio ha servido 13 páginas en el minuto pasado. Esto significa exactamente lo que dice: durante los pasados 60 segundos, su sitio apoyado en Drupal ha servido 13 páginas a los visitantes del sitio. Esto incluye todas las páginas que han sido vistas por usted mismo, usuarios registrados, invitados o anónimos, clientes RSS, máquinas de búsqueda, y cron.
Para ajustar correctamente el auto-regulador, deberá monitorear este bloque cuidadosamente para conocer realmente la ocupación promedio de su servidor. En particular, deberá conocer la ocupación promedio de su sitio en la hora más activa de cada día. En nuestro ejemplo, asumiremos que su sitio está sirviendo entre 10-12 páginas por minuto cuando está ocupado. Esta información deberá ser usada para ajustar nuestro regulador.
administrar > configuración > módulos > regulador. (Una forma rápida de acceder a este es haciendo clic sobre la palabra
habilitadoen el bloque
Estado del Regulador). Ahora ajustaremos las dos opciones en la sección
Ajustes del auto-regulador.
La primera opción es el multiplicador del Auto-regulador
. Generalmente es una buena idea establecer el multiplicador a un número cercano al número de páginas que su sitio sirve en promedio cuando está ocupado. En nuestro ejemplo era 12, así que el multiplicador del auto-regulador será establecido a 12 (0,12,24,36,48,60)
. Cada uno de los números en los paréntesis es un nivel de regulación
, con 0 siendo el nivel 0, 12 siendo el nivel 1, y así sucesivamente hasta 60 que es el nivel 5. Cada uno de estos números es un múltiplo del número 12 que fue el que seleccionamos. Cuando nuestro sitio comienza a servir 12 páginas por minuto, el nivel del auto-regulador pasa al nivel 1. Si el sitio se ocupa el doble de lo normal y comienza a servir 24 páginas por minuto, el regulador pasará a nivel 2. Esto continúa hasta que el sitio esté sirviendo más de 5 veces lo normal, donde el nivel del auto-regulador se encontrará en 5.
La segunda opción es el Limitador de probabilidades del auto-regulador
. Esta opción de configuración de nombre fantástico es usada para minimizar la sobrecarga generada por el auto-regulador. Como verá, para calcular el nivel actual de regulación este módulo debe realizar una consulta a la base de datos. Como se sabe, uno de los puntos críticos de un servidor compartido es la base de datos, así que las consultas a estas son consideradas costosas
. Entonces, ajustamos el limitador de probabilidades
para que realice la consulta extra a la base de datos solo en un porcentaje de páginas vistas. Si se coloca este valor al 10%, se estará realizando la consulta por aproximadamente 1 de cada 10 páginas mostradas en su sitio Drupal. Este valor no deber mayor al 10%, incluso para sitios muy ocupados, probablemente deberá colocarlo en un porcentaje mucho menor. Hay que ser cuidadoso con esto, ya que mientras menor sea el porcentaje, más demorará el auto-regulador en detectar una sobrecarga.
10.
Demasiadas conexiones –Too many connections-. Al deshabilitar automáticamente los bloques, el costo de generar las páginas en su sitio requerirá menos consultas a la base de datos y su sitio será capaz de mantenerse estable aun con un gran número de entradas.
Para regular los bloques diríjase a la página de administración de bloques en administrar > configuración > bloques
. Ahora, para cada bloque que debe estar deshabilitado cuando su sitio esté sobrecargado, haga clic en la casilla de verificación Regulación
. Es recomendable que seleccione la mayoría de los bloques excepto talvez Navegación
e Ingreso de usuarios
. Cuando cuenta con un servidor web con pocos recursos, probablemente deseará agregar el Ingreso de usuarios
de tal forma que no puedan ingresar más usuarios durante las sobrecargas, ya que cada página que sea vista por un usuario deberá ser generada dinámicamente a diferencia de las que ven los invitados que provienen del caché.
Ahora, cuando el sitio tenga una gran sobrecarga, todos los bloques que tengan habilitada la regulación serán deshabilitados automáticamente. Durante todo el tiempo que demore la sobrecarga los bloques permanecerán deshabilitados, optimizando la página y ayudando a prevenir errores de la base de datos. Cuando comience a descender la carga, los bloques se restaurarán automáticamente.
Para regular módulos, diríjase a la página de administración en su sitio en administrar > configuración > módulos
. Ahora, para cada módulo que debe ser desactivado cuando se alcance la carga máxima seleccione la casilla regular
. Decidir qué módulos regular puede ser más difícil que decidir los bloques a desactivar. Se recomienda que experimente en su entorno de desarrollo, deshabilitando módulos y observe cómo esto afecta a su sitio. Mientras menos potente sea el servidor web, más módulos deberá desactivar. Generalizando, regular módulos tendrá un mayor efecto que regular bloques.
Ahora, cuando su sitio esté sobrecargado, todos los módulos que tengan habilitada la regulación serán automáticamente deshabilitados. Todos los aspectos del módulo serán deshabilitados incluyendo los vínculos, páginas y/o bloques el módulo genere. Durante todo el tiempo que demore la sobrecarga los bloques permanecerán deshabilitados, optimizando la página y ayudando a prevenir errores de la base de datos. Cuando comience a descender la carga, los bloques se restaurarán automáticamente.
Estado del reguladorpara asegurarse de que su sitio esté configurado correctamente. En particular, mire el campo
Nivel actual, y asegúrese de que bajo la carga promedio no pase del nivel 2. Si esto sucede, entonces probablemente deba regresar y ajustar el multiplicador a un valor más alto como se describió anteriormente. Por otra parte, si su sitio siempre muestra un
Nivel Actualde 0, probablemente deberá ajustar el multiplicador a un valor menor.
Tambien debe tener en cuenta que con el tiempo la popularidad de su sitio puede cambiar, de tal manera que lo que era una carga normal hace unos meses puede ser una carga muy alta o muy baja en el mes actual.
multiplicador del auto-reguladora un valor mas bajo de tal manera que se pueda detectar más rápidamente una sobrecarga.
limitador de probabilidades del auto-reguladora un porcentaje más alto de tal manera que se pueda detectar más rápidamente una sobrecarga. No se recomienda subir este valor sobre el 10% ya que puede tener un impacto negativo en la funcionalidad del sitio.
reguladorpara todos los bloques, excepto aquellos que son esenciales.
reguladorpara todos los módulos, excepto aquellos que son esenciales. (este es posiblemente el consejo más importante)
throttle_status().