Herramientas

Introduccion al Web cluster de Bitrix24

Anthony Villar
22 de Febrero de 2016
Última actualización: 26 de Diciembre de 2018
El módulo Web Cluster está disponible en la versión Bitrix24 BizPace Enterprise.

El Web Cluster resuelve los problemas siguientes:

Escalabilidad del sitio en el aumento de las cargas de trabajo
A medida que su intranet madura, el crecimiento en popularidad y tráfico aumenta, al igual que los recursos que requieren más: CPU, memoria y espacio en disco.
El Cluster de Bitrix proporciona una solución flexible con capacidad de ampliación de los recursos específicos en tiempo real (la base de datos o servidor web), el que requiera ser ampliado, simplemente añadiendo nuevas máquinas al clúster.
Características cláves de la tecnología:
  • Máquinas (nodos) en el cluster pueden tener una configuración completamente diferente a: una máquina virtual, VPS, servidores dedicados, instancias en la nube, etc .;
  • los nodos se pueden distribuir de cualquier manera necesaria, incluso ubicándose en centros de datos independientes;
  • añadir nodos aumenta el rendimiento del sitio proporcionalmente a la capacidad del nuevo recurso.

Copia de seguridad de los nodos del sistema, la tolerancia a fallos y continuidad del servicio
La segunda cuestión importante es asegurar la tolerancia a fallos del sistema y minimizar el tiempo de inactividad en el caso de fallo del servidor o el mantenimiento de rutina.
Si su intranet está en un solo servidor y el servidor quedara fuera de línea, o cuando hay una emergencia en un centro de datos, la interrupción en el servicio puede conllevar a muchas circunstancias desagradables.
La agrupación de todos los componentes de la intranet (servidores web y bases de datos) con el cluster de Bitrix minimiza el tiempo de inactividad. Dependiendo de cómo se maneje el equilibrio de carga en todo el clúster, ya sea el tiempo de inactividad se puede reducir en gran medida, o en algunos casos eliminarlo por completo.
Cómo funciona: cuando un nodo se cae, el grupo reconoce que el recurso no está en línea, ya sea una base de datos, servidor web o servidor de memcached, y la carga sobre el sistema automáticamente se distribuye entre los nodos restantes.
Momento de la creación de páginas puede aumentar en consonancia durante los períodos de carga máxima, pero el servicio no será interrumpido. Si no hay capacidad de reserva adecuada en el clúster, el rendimiento durante las horas pico no continuará sin cambio perceptible.
Después de que el servidor(es) se diagnostica y los problemas se corrigen, se puede volver a trabajar en el clúster para maximizar el rendimiento de la intranet.

Copia de seguridad en tiempo real
La redundancia del sistema puede ser obtenida usando el web clúster web; todos los datos se pueden copiar en tiempo real.
La necesidad de una copia de seguridad periódica de datos es evidente. Pero también es esencial para recuperarse rápidamente en el caso de un “apagon” del sistema.
De acuerdo con un estudio realizado por el Instituto de Investigación Estratégica, 93% de las firmas comerciales que experimentó un fallo del sistema principal y no restauraron los datos de una copia de seguridad dentro de los 10 días de paralización, se han declarado en quiebra dentro de un año, con alrededor del 50% de los cierres inmediatos.

Así, otro factor crítico en relación con las copias de seguridad es la frecuencia con la que se hacen. Si las copias de seguridad no se realizan a menudo, al menos sólo una vez por semana, entonces la cantidad de datos que se encuentra en riesgo puede ser muy importante - pensar en esa pérdida como el 2% de la producción del año.

El Cluster Bitrix permite la conexión de un nodo como un servidor de copia de seguridad. Esto no tiene por qué ser un servidor muy caro e incluso podría ser un VPS. En el entorno de clúster web, este nodo puede ser designado para el uso exclusivo a efectos de copia de seguridad.

Con un nodo dedicado, los datos (archivos y bases de datos) serán respaldados constantemente - en tiempo real. Desde la recuperación por un apagado, la cual llevará a cabo la restauración con los datos actuales, para todos los efectos prácticos, se restauran todos los datos que estuvieron hasta el momento de la falla. La manera más rápida de recuperar el sistema es simplemente configurando/acoplando el servidor de copia de seguridad como un servidor de producción.

Reduciendo el costo de tráfico, un sistema simple CDN
Los propietarios de las intranets que incorporan una gran cantidad de contenido "pesado" (audio, vídeo, fotos) deben resolver otro problema serio: cómo equilibrar el rendimiento de la intranet entre una diversidad geográfica en una “piscina de Vusers” con el costo de mantenimiento. Los web cluster pueden ser distribuidos a través de los centros de datos en diferentes ciudades o países. Las herramientas adicionales, tales como GeoIP, pueden determinar automáticamente la ubicación del visitante y redirigir las peticiones de los visitantes al nodo más adecuado en el clúster.

Las siguientes tecnologías están presentes en el módulo Cluster Bitrix:

Sharding vertical de la base de datos

Sharding vertical es la separación de la base de datos de una aplicación web en dos o más bases de datos que sirven como módulos o conjuntos de módulos del producto en particular. Este método no afecta a la estructura lógica de la aplicación web.


Los siguientes módulos de productos pueden ser servidos por servidores independientes:
· Analisis de la web (Web Analytics)
· Buscar

La replicación MySQL
Replicar una base de datos MySQL es el proceso de crear y mantener copias actualizadas de la misma. La aplicación no funciona con una, sino con múltiples bases de datos: una base de datos se utiliza para la escritura y el resto se utiliza para la lectura. Esto se aplica sólo a MySQL, no a otros tipos de bases de datos soportados por Bitrix.





Esto reduce la carga en la base de datos primaria, es producido porque la lectura de los datos esta en bases de datos adicionales (esclavas), y la base de datos principal está disponible exclusivamente para la escritura.
Las bases de datos esclavas sólo se pueden utilizar para crear una copia de la base de datos primaria en tiempo real, de lo contrario, la lectura desde las bases de datos esclavas no están permitidas. la replicación maestro-maestro si es compatible.

Distribución de datos Cache
Un servidor memcached es un servidor que le permite guardar la memoria caché no en archivos, sino en la memoria operativa.
El uso de múltiples servidores memcached habilitados mejora la fiabilidad del sistema a través de una mayor estabilidad del almacenamiento en caché del subsistema en el caso de que un servidor se desconecte. El almacenamiento de cache de las aplicaciones web centralizadas es también más eficiente y permite una escalabilidad ilimitada mediante la adición de servidores-memcached adicionales, lo cual también es compatible.



El caché creado por los nodos 1, 2 y/u otros nodos pueden ser utilizados como una única caché que sirve en todo el clúster, por lo que cualquier nodo del clúster puede acceder a ellos. Mientras más nodos, mayor es el efecto de la caché centralizada.

La continuidad de las sesiones web entre servidores web (almacenamiento de sesiones en la base de datos)
Cuando se utiliza un único servidor Web, el almacenamiento de sesiones en el sistema de archivos del servidor es el más conveniente. Sin embargo, cuando se trabaja con varios servidores web, pueden darse situaciones que requieren consulta de un usuario (por ejemplo, autorización directa) producida por un servidor, y la siguiente consulta se produce en otro servidor, en el que no está autorizado el visitante. Esta situación podría causar una serie de inconvenientes para los visitantes. Si las sesiones se almacenan en el sistema de archivos en lugar de la base de datos, las estadísticas y análisis de comportamiento de los usuarios estarían basadas en datos incorrectos.

Clustering del Servidor Web
El servidor web se dice que está en un Clúster cuando los archivos del proyecto web se encuentran en diferentes nodos de un clúster.
El uso de múltiples servidores web para una intranet significa que toda solicitud de cualquier usuario puede ser manejada por cualquiera de los nodos del clúster. Para lograr esto, cada servidor web debe contener el mismo contenido (archivos). Por ejemplo, una imagen que se carga a través de la interfaz administrativa en un servidor web debe estar disponible para volver o retornar al usuario a través de otro servidor web.
Al implementar un clúster de servidores web, la sincronización del contenido en cada nodo y el equilibrio de carga entre los nodos se deben configurar.
Gratis. Ilimitado. Online.
Bitrix24 es un lugar donde todos pueden comunicarse, colaborar entre tareas y proyectos, administrar clientes y mucho más.