Saltar al contenido principal

Requisitos técnicos

Descripción general

Passwork no requiere muchos recursos. La cantidad de RAM, espacio en disco y potencia de CPU, así como el número necesario de servidores, dependen de la cantidad de usuarios activos, el volumen de datos almacenados y los requisitos de tolerancia a fallos del sistema.

Passwork consta de dos elementos:

  1. Servidor de aplicaciones (servidor web y PHP);
  2. Base de datos;

El servidor de aplicaciones y la base de datos pueden ejecutarse en el mismo servidor o en diferentes servidores virtuales o físicos si:

  • por razones de seguridad, es necesario separar el servidor de aplicaciones y la base de datos en diferentes servidores;
  • es necesario almacenar datos simultáneamente en múltiples servidores;
  • se requiere una solución tolerante a fallos.

Recomendaciones adicionales

  • La métrica IOPS es muy importante para el rendimiento de la base de datos, por lo que recomendamos usar unidades SSD.
  • Para Linux con menos de 4 GB de RAM, se recomienda habilitar un archivo swap de 4 GB.

Opciones de instalación de Passwork

1. Instalación en servidor único

Esta opción es adecuada para ediciones de hasta 500 usuarios sin requisitos especiales de almacenamiento de datos:

Número de usuariosRAMCPUHDD/SSD
hasta 504 GB o más4100 GB
hasta 1006 GB o más8150 GB
hasta 50012 GB o más8200 GB

2. Instalación en servidores separados

En este caso, la base de datos y el servidor de aplicaciones se encuentran en diferentes servidores.

Requisitos del servidor de aplicaciones:

Número de usuariosRAMCPUHDD/SSD
hasta 504 GB o más4100 GB
hasta 1006 GB o más8100 GB
hasta 50012 GB o más8100 GB
hasta 100016 GB o más8100 GB
hasta 10 00032 GB o más16100 GB

Requisitos del servidor de base de datos:

Número de usuariosRAMCPUHDD/SSD
hasta 502-4 GB4100 GB
hasta 1004 GB4150 GB
hasta 5008-16 GB8200 GB
hasta 100016 GB8200 GB
hasta 10 00016-32 GB16200 GB

3. Múltiples servidores de base de datos

La base de datos MongoDB puede operar en modo tolerante a fallos. Se asignan tres roles principales de servidor en un conjunto de réplicas:

  1. Primary — servidor principal;
  2. Secondary — servidor secundario en modo de sincronización;
  3. Arbiter — un servidor que no almacena datos pero participa en la selección del nodo principal en caso de fallo del servidor.
info

Recomendamos usar instancias completas, ya que el mecanismo de balanceo integrado de MongoDB funciona sin un árbitro también.

Posibles opciones de implementación

  1. Tres o más servidores: tres servidores de base de datos completos (el primario se selecciona mediante votación). En este caso, el árbitro puede usarse como servidor adicional, por ejemplo, cuando se necesita una conmutación predecible del nodo primario;
  2. Tres servidores: dos servidores de base de datos completos, uno de los cuales se selecciona como primario, el segundo como secundario (SECONDARY) y el tercero actúa como árbitro. El nodo primario cambia automáticamente si el servidor primario actual falla. El árbitro ayuda a ahorrar recursos ya que es menos exigente.
peligro

El número mínimo de miembros del conjunto de réplicas es tres. De lo contrario, si un nodo falla, el conjunto de réplicas cambiará al modo «solo lectura» y Passwork no estará disponible.

Requisitos técnicos para Arbiter

  • RAM — 4 GB, CPU — 4 núcleos, HDD/SSD — 100 GB;
  • Conexión de red de alta velocidad con los demás servidores de base de datos.

4. Múltiples servidores de aplicaciones

Puede utilizar múltiples servidores de aplicaciones en un clúster que consiste en:

  • varios servidores PHP-FPM (escalado horizontal);
  • un balanceador de carga de tráfico.

Esto permite:

  1. Redireccionamiento automático de solicitudes a otros servidores si uno falla.
  2. Rendimiento acelerado de la aplicación con un gran número de usuarios (10 000 o más).

Copias de seguridad y almacenamiento de registros

Las recomendaciones de volumen de disco a continuación no incluyen copias de seguridad ni registros. Recomendamos almacenar las copias de seguridad de la base de datos en servidores separados o almacenamiento especializado.

Una copia de seguridad archivada de la base de datos ocupa aproximadamente el 10% del tamaño de la base de datos.

Puede estimar el tamaño real de la base de datos (excluyendo archivos adjuntos) utilizando la siguiente tabla:

Número de usuariosNúmero de contraseñasTiempo de usoTamaño de la base de datosArchivo de copia de seguridad
hasta 10010001 año0,1 GB10 MB
hasta 10010002 años0,5 GB50 MB
hasta 10010003 años1 GB0,1 GB
hasta 100050001 año1 GB0,1 GB
hasta 100050002 años5 GB0,5 GB
hasta 100050003 años10 GB0,5 GB
hasta 10 00010 0001 año10 GB0,5 GB
hasta 10 00010 0002 años50 GB1 GB
hasta 10 00010 0003 años100 GB2 GB
info

El lado del cliente de Passwork se muestra y funciona correctamente en los siguientes navegadores web y versiones mínimas.

Navegador webVersión mínima
Google Chrome110 y superior
Microsoft Edge110 y superior
Mozilla Firefox115 y superior
Safari16.0 y superior
Opera96 y superior