FlexiCapture puede procesar desde varios cientos hasta millones de páginas al día y admitir hasta varios miles de operadores. Estime de antemano la carga del sistema y, a continuación, seleccione la arquitectura y el hardware de servidor adecuados.
El sistema escala de las siguientes maneras:
- Añadiendo clientes de digitalización, clientes de verificación y estaciones de procesamiento
- Aumentando la capacidad de las máquinas que alojan los servidores de aplicaciones, procesamiento, licencias y base de datos, así como FileStorage
- Distribuyendo esos roles de servidor entre varias máquinas
Utilice estas cifras para seleccionar una configuración preliminar de los componentes de servidor de FlexiCapture.
La supervisión del sistema y detección de cuellos de botella le muestra si el hardware actual sigue cumpliendo el rendimiento objetivo y cuándo es el momento de escalar.
Demo es una configuración típica para demostraciones o proyectos piloto, no recomendada para proyectos en producción a gran escala. Todos los componentes del sistema se instalan en una máquina virtual o se implementan en un PC.
Puede usar MS SQL Express como servidor de base de datos e instalarlo en la misma máquina que los servidores de FlexiCapture. En lugar de usar un FileStorage independiente, los archivos pueden almacenarse directamente en la base de datos. Los operadores y las estaciones de procesamiento también pueden compartir esa máquina.
En proyectos comerciales, nunca instale la estación de procesamiento en un equipo que aloje servidores de FlexiCapture o el servidor de base de datos. La estación consume todos los recursos disponibles y el rendimiento del servidor disminuye.
Medium es una configuración típica para proyectos comerciales. Cada componente del servidor se instala en una máquina dedicada, por lo que puede escalarse de forma independiente.
Directrices de implementación
Separe el Servidor de aplicaciones
Instale el Servidor de aplicaciones en un equipo dedicado. Su escalabilidad difiere de la de los servidores de base de datos, Processing y Licensing.
Puede instalar el Servidor de aplicaciones, el Processing Server y el Licensing Server en un mismo equipo. Esto proporciona redundancia de servidores, pero no escalabilidad del Servidor de aplicaciones.
Elija una tecnología de agrupación en clústeres
El Servidor de aplicaciones y Processing Server y Licensing Server utilizan distintas tecnologías de agrupación en clústeres:
- El Servidor de aplicaciones es un servicio web en IIS; su escalabilidad y fiabilidad se consiguen mediante un clúster que utiliza la tecnología Microsoft Network Load Balancing. Todos los nodos del clúster son equivalentes, se ejecutan en modo activo-activo y pueden apagarse en cualquier momento.
- Processing Server y Licensing Server son servicios de Windows; su fiabilidad se consigue creando un clúster activo-pasivo basado en la tecnología Microsoft Failover Cluster.
Microsoft prohíbe el uso conjunto de estas tecnologías en el mismo equipo.
Si necesita fiabilidad, pero no escalabilidad, cree un clúster del Servidor de aplicaciones dentro de IIS, que también admite Microsoft Failover Cluster.
Licensing Server y Processing Server pueden compartir una misma máquina.
Ubique el servidor de base de datos
Instale el servidor de base de datos en un equipo dedicado, ya que consume una parte considerable de los recursos del host. Si lo instala junto con otros servidores de FlexiCapture, limite su uso de CPU y RAM. Asimismo, coloque los archivos de la base de datos en un HDD físicamente independiente para que no afecte al rendimiento de los servidores colindantes.
Elegir el hardware de FileStorage
Para cargas pequeñas, puede usar discos HDD rápidos en el Servidor de aplicaciones como FileStorage. Use discos SATA2 de 15.000 RPM o más rápidos, configurados al menos en RAID1 para redundancia o en RAID10 para mejorar el rendimiento.
Los HDD locales se convierten en un cuello de botella a medida que aumenta el volumen de páginas, especialmente en el caso de imágenes en escala de grises o en color. Además, no se pueden ampliar sobre la marcha, ya que añadir discos implica detener el Sistema.
Para cargas mayores, use almacenamiento externo, como NAS o SAN. El Servidor de aplicaciones necesita acceso de lectura y escritura a dicho almacenamiento a 1 Gb/s a través de LAN, SCSI, Fibre Channel o una interfaz similar. El almacenamiento externo se amplía sin problemas.
El siguiente diagrama muestra una configuración de red típica de FlexiCapture en un entorno empresarial.
Conecte el Servidor de aplicaciones directamente a FileStorage y al servidor de base de datos para lograr una comunicación rápida y fiable.
- CPU: 8 núcleos físicos, 2,4 GHz o superior
- 16 GB de RAM
- HDD: 100 GB
- 2 NIC, 1 Gb/s: una para conectarse a la LAN y otra al servidor de base de datos
- FileStorage: si se utiliza una SAN, conéctela mediante SCSI, Fibre Channel o InfiniBand
- SO: Windows 2012 o posterior
El Servidor de aplicaciones es el centro de todas las comunicaciones de FlexiCapture. Gestiona dos tipos de tráfico:
- Transferencias de grandes volúmenes de datos binarios
- Pequeñas solicitudes de servicio SOAP/JSON que requieren una respuesta rápida
El Servidor de aplicaciones depende de cuatro recursos críticos:
- Una interfaz de red rápida para conectarse a los clientes
- Una conexión rápida y estable con FileStorage y el servidor de base de datos
- Una CPU rápida multinúcleo:
- Cuanto mayor sea la velocidad, más rápido se procesará cada solicitud
- Cuantos más núcleos físicos haya, más solicitudes se procesarán simultáneamente
- RAM suficiente: al menos 2 GB por núcleo físico
Para aprovechar al máximo la CPU, configure el grupo de aplicaciones de FlexiCapture Web Services con el doble de procesos de trabajo de IIS que núcleos físicos. Por ejemplo, 16 procesos de trabajo de IIS para un procesador de 8 núcleos.
Si alguno de estos recursos genera un cuello de botella, amplíe el Servidor de aplicaciones:
- Con Microsoft Network Load Balancing, que agrupa varios equipos con el rol de Servidor de aplicaciones. Para obtener más información, consulte Configuración de conmutación por error.
- A nivel de hardware, conectando distintos grupos de clientes a diferentes equipos con el rol de Servidor de aplicaciones. Por ejemplo, un equipo puede encargarse de todo el procesamiento automático, mientras que otro puede atender a clientes externos.
En cualquier caso, todos los equipos con el rol de Servidor de aplicaciones deben estar conectados de la misma manera a la misma base de datos y a FileStorage.
Processing Server y Licensing Server
- CPU de 4 núcleos, 2,4 GHz o superior
- 8 GB de RAM
- HDD: 100 GB
- NIC: 1 Gb/s para conectarse a la LAN
- SO: Windows 2012 o posterior
Una conexión de red estable es esencial para los servidores. Sin ella, el procesamiento de documentos se detiene. Para garantizar la redundancia, use Microsoft Failover Cluster. Para obtener más información, consulte Configuración de conmutación por error.
El Licensing Server mantiene en memoria una copia de la licencia de cada cliente concurrente. Por lo tanto, sus requisitos de RAM aumentan con el número de operadores de digitalización y verificación que trabajan al mismo tiempo. Las pruebas muestran que 2 GB de RAM son suficientes para gestionar licencias para hasta 1000 clientes.
Use el Licensing Server de 64 bits para proyectos con muchos clientes concurrentes. Para atender a más clientes de los que puede gestionar un solo servidor, agregue un segundo Licensing Server.
Servidor de base de datos
Versiones compatibles:
- MS SQL Server 2014 o superior, Standard o Enterprise Edition
- Oracle 12c Enterprise Edition
ABBYY FlexiCapture es compatible con MS SQL Server y Oracle instalados en cualquier plataforma. Ambos proveedores publican sus propias recomendaciones sobre la configuración óptima, el escalado y la tolerancia a fallos.
Hardware del servidor de base de datos
Para MS SQL Server:
- CPU: 8 núcleos físicos, 3,4 GHz o superior
- 16 GB de RAM o más
- HDD: 400 GB
- SO: Windows 2012 o posterior
Para Oracle, use un Oracle Exadata Database Machine X2-2, Quarter Rack.
Configuración de MS SQL Server
- Añada tanta RAM como sea posible al servidor de base de datos, de modo que la mayoría de los archivos de la base de datos se almacenen en la RAM y se lean más rápido
- Use un HDD rápido, preferiblemente un SSD, para la parte de la base de datos que permanece en disco
- Evite los modos de base de datos que introducen retrasos en las transacciones, como la replicación
- Establezca el modelo de recuperación de la base de datos en Simple
- Almacene la base de datos y su registro en discos separados
- Actualice periódicamente los índices de las tablas que cambian con frecuencia (Document, Page, Batch, Task y EventLog). De lo contrario, un índice puede llegar a ocupar más espacio que los datos de su tabla
- NAS o SAN, conectados mediante LAN, SCSI, Fibre Channel o InfiniBand
- Velocidad de lectura y escritura: desde 100 MB/s, según su carga de trabajo
- Capacidad: desde 5 TB, según su carga de trabajo
Dimensione ambas magnitudes para su propio proyecto. Para obtener más información, consulte Dimensionamiento de FileStorage.
La indexación de búsqueda y el análisis antivirus del contenido de FileStorage pueden reducir el rendimiento o bloquear el acceso a archivos que se están procesando en el Sistema.
Use una tecnología de almacenamiento tolerante a fallos, por ejemplo RAID 10.
Dimensionamiento de FileStorage
Dos factores determinan la velocidad de lectura y escritura y la capacidad necesarias. Dimensione ambos aspectos.
Rendimiento de páginas y modo de color
La velocidad de lectura y escritura depende de la cantidad media y máxima de páginas procesadas por hora y cada 24 horas, así como de su modo de color. Estime el flujo de entrada en bytes por segundo a partir de los tamaños de archivo habituales de las páginas escaneadas en color, escala de grises y blanco y negro. Para obtener más información, consulte Métricas de rendimiento.
Las imágenes constituyen la mayor parte de los datos transferidos dentro del System. Analice el flujo de trabajo de procesamiento y defina dos valores:
- R, el número de etapas en las que se descargan imágenes de páginas desde el Servidor de aplicaciones
- W, el número de etapas en las que se cargan imágenes de páginas al Servidor de aplicaciones
A continuación, calcule las dos velocidades.
Por ejemplo, un cliente procesa 10.000 páginas en escala de grises por hora mediante un flujo de trabajo de cuatro etapas. Solo cuentan para R y W las etapas que transfieren imágenes de página hacia o desde el Servidor de aplicaciones.
Con un tamaño medio de archivo A4 en escala de grises de 3 MB:
- Flujo de entrada = 10.000 imágenes de página en escala de grises/hora = 2,8 imágenes en escala de grises/s = 8,4 MB/s
- Velocidad de escritura requerida = 1 × 8,4 MB/s = 8,4 MB/s
- Velocidad de lectura requerida = 3 × 8,4 MB/s = 25,2 MB/s
Para evaluar el rendimiento del disco duro, puede utilizar la herramienta CrystalDiskMark, distribuida bajo la licencia MIT.
Tiempo de permanencia de los documentos en el Sistema
La capacidad depende del tiempo que las imágenes permanecen en el Sistema antes de eliminarse.
Por ejemplo, un cliente procesa 100.000 imágenes en escala de grises en 24 horas. Según el Acuerdo de Nivel de Servicio, el tiempo de procesamiento es de 2 días por documento. Los documentos procesados se almacenan durante 2 semanas porque el sistema ERP del cliente realiza verificaciones adicionales. Si detecta alguna discrepancia, los documentos se editan en FlexiCapture y se cargan de nuevo en el sistema ERP.
Por lo tanto, las imágenes se almacenan durante 2 + 14 = 16 días. Con un tamaño promedio de archivo de 3 MB para una imagen A4 en escala de grises, el Sistema acumula 16 × 100.000 × 3 MB = 4,8 TB de datos.
Use la configuración Large para más de 300.000 páginas en color cada 24 horas. Su capacidad es de hasta 3 millones de páginas en blanco y negro o hasta 1 millón de páginas en color en 24 horas.
Todas las recomendaciones para Medium también se aplican a Large, pero a esta escala debe seguirlas todas. Calcule la carga de cada parte del sistema y elija hardware lo suficientemente potente para soportarla sin gastar de más. Pruebe la conexión a Internet y el conector de backend para confirmar que pueden mantener el rendimiento objetivo.
Desde el principio, planifique una red de 10 Gb/s y un FileStorage de alto rendimiento.
El siguiente diagrama muestra una posible arquitectura de red para la configuración Large.
No existen requisitos típicos del sistema a esta escala. En su lugar, revise una configuración probada y su rendimiento medido. Para obtener más información, consulte Resultados de pruebas en Huawei FusionCube 6000.
Para volúmenes superiores a los de la configuración Large, combine varias instalaciones independientes de FlexiCapture bajo un único punto de administración y monitorización. Esta es la configuración xLarge.