FlexiCapture peut traiter de quelques centaines à plusieurs millions de pages par jour et prendre en charge jusqu’à plusieurs milliers d’opérateurs. Estimez à l’avance la charge du système, puis sélectionnez l’architecture et le matériel serveur adaptés.
Le système peut faire l’objet d’une mise à l’échelle de deux façons :
- En ajoutant des clients de numérisation, des clients de vérification et des Processing Stations
- En augmentant la puissance des machines hébergeant les serveurs d’applications, de traitement, de licence et de base de données, ainsi que le FileStorage
- En répartissant ces rôles serveur sur plusieurs machines
Utilisez ces chiffres pour sélectionner une configuration préliminaire des composants serveur de FlexiCapture.
La surveillance du système et la détection des goulots d’étranglement vous indiquent si le matériel actuel répond toujours à vos performances cibles et à quel moment il est temps de procéder à une mise à l’échelle du système.
Demo est une configuration type pour les démonstrations ou les projets pilotes, non recommandée pour les projets en environnement de production. Tous les composants du système sont installés sur une machine virtuelle ou déployés sur un PC.
Vous pouvez utiliser MS SQL Express comme serveur de base de données et l’installer sur la même machine que les serveurs FlexiCapture. Au lieu d’un FileStorage distinct, vous pouvez stocker les fichiers directement dans la base de données. Les opérateurs et les Processing Stations peuvent également être installés sur cette machine.
Dans les projets commerciaux, n’installez jamais la Processing Station sur un ordinateur qui héberge les serveurs FlexiCapture ou le serveur de base de données. La station consomme toutes les ressources disponibles et les performances du serveur se dégradent.
Medium est une configuration type pour les projets commerciaux. Chaque composant serveur est installé sur une machine dédiée, ce qui permet de faire évoluer chacun indépendamment.
Recommandations de déploiement
Séparer le serveur d’applications
Installez le serveur d’applications sur une machine dédiée. Son évolutivité est différente de celle des serveurs Database, Processing et Licensing.
Vous pouvez installer le serveur d’applications, le Processing Server et le Licensing Server sur un même ordinateur. Cette configuration assure la redondance des serveurs, mais pas l’évolutivité du serveur d’applications.
Choisir une technologie de mise en cluster
Le serveur d’applications ainsi que les serveurs Processing et Licensing utilisent des technologies de mise en cluster différentes :
- Le serveur d’applications est un service Web dans IIS ; sa scalabilité et sa fiabilité sont assurées par une mise en cluster reposant sur la technologie Microsoft Network Load Balancing. Tous les nœuds du cluster sont des nœuds homologues fonctionnant en mode actif-actif et peuvent être arrêtés à tout moment.
- Processing Server et Licensing Server sont des services Windows ; leur fiabilité est assurée par la création d’un cluster actif-passif basé sur la technologie Microsoft Failover Cluster.
Microsoft interdit l’utilisation conjointe de ces deux technologies sur le même ordinateur.
Si vous avez besoin de fiabilité, mais pas de scalabilité, mettez le serveur d’applications en cluster dans IIS, qui prend également en charge Microsoft Failover Cluster.
Licensing Server et Processing Server peuvent partager la même machine.
Installer le serveur de base de données
Installez le serveur de base de données sur une machine dédiée, car il consomme une part importante des ressources de l’hôte. Si vous l’installez avec d’autres serveurs FlexiCapture, limitez son utilisation du CPU et de la RAM. Placez également les fichiers de base de données sur un disque dur physiquement distinct afin de ne pas dégrader les performances du serveur voisin.
Choisir le matériel FileStorage
Pour de faibles charges, vous pouvez utiliser des disques durs rapides sur la machine du serveur d’applications pour le FileStorage. Utilisez des disques SATA2 de 15 000 tr/min ou plus, configurés au minimum en RAID1 pour la redondance, ou en RAID10 pour de meilleures performances.
Les disques durs locaux deviennent un goulot d’étranglement à mesure que le volume de pages augmente, en particulier pour les images en niveaux de gris ou en couleur. Vous ne pouvez pas non plus augmenter leur capacité à la volée, car l’ajout de disques nécessite l’arrêt du System.
Pour des volumes plus importants, utilisez un stockage externe, tel qu’un NAS ou un SAN. Le serveur d’applications doit disposer d’un accès en lecture-écriture à ce stockage à 1 Gb/s via un réseau local, SCSI, Fibre Channel ou une interface similaire. Le stockage externe s’adapte facilement.
Le schéma suivant présente une configuration réseau FlexiCapture type dans un environnement d’entreprise.
Connectez directement le serveur d’applications à FileStorage et au serveur de base de données pour garantir une communication rapide et fiable.
- CPU : 8 cœurs physiques, 2,4 GHz ou plus
- 16 Go de RAM
- HDD : 100 Go
- 2 cartes réseau, 1 Gb/s : l’une pour la connexion au LAN et l’autre au serveur de base de données
- FileStorage : si un SAN est utilisé, connectez-le via SCSI, Fibre Channel ou InfiniBand
- OS : Windows 2012 ou version ultérieure
Le serveur d’applications est le point central de toutes les communications FlexiCapture. Il gère deux types de trafic :
- Transferts de données binaires volumineuses
- Petites requêtes de service SOAP/JSON nécessitant une réponse rapide
Le serveur d’applications dépend de quatre ressources critiques :
- Une interface réseau rapide pour se connecter aux clients
- Une connexion rapide et stable à FileStorage et au serveur de base de données
- Un CPU multicœur rapide :
- Plus sa vitesse est élevée, plus chaque requête est traitée rapidement
- Plus il y a de cœurs physiques, plus les requêtes sont traitées simultanément
- Une quantité de RAM suffisante, d’au moins 2 Go par cœur physique
Pour exploiter pleinement le CPU, configurez pour le pool d’applications FlexiCapture Web Services deux fois plus de processus de travail IIS que de cœurs physiques. Par exemple, 16 processus de travail IIS pour un processeur à 8 cœurs.
Si l’une de ces ressources devient un goulot d’étranglement, procédez à une mise à l’échelle du serveur d’applications :
- Avec Microsoft Network Load Balancing, qui regroupe plusieurs ordinateurs jouant le rôle de serveur d’applications. Pour plus d’informations, consultez Configuration de basculement.
- Au niveau matériel, en connectant différentes plages de clients à différentes machines jouant le rôle de serveur d’applications. Par exemple, une machine peut prendre en charge tout le traitement automatique, tandis qu’une autre est accessible aux clients externes.
Dans tous les cas, toutes les machines jouant le rôle de serveur d’applications doivent être connectées de façon équivalente à la même base de données et au même FileStorage.
Processing Server et Licensing Server
- Processeur 4 cœurs, 2,4 GHz ou plus
- 8 Go de RAM
- Disque dur : 100 Go
- Carte réseau : 1 Gb/s pour la connexion au réseau local
- SE : Windows 2012 ou version ultérieure
Une connexion réseau stable est essentielle pour ces serveurs. Sans elle, le traitement des documents s’arrête. Pour assurer la redondance, utilisez Microsoft Failover Cluster. Pour plus d’informations, consultez la Configuration du basculement.
Le Licensing Server conserve en mémoire une copie de la licence de chaque client simultané. Ses besoins en RAM augmentent donc avec le nombre d’opérateurs de numérisation et de vérification travaillant simultanément. Les tests montrent que 2 Go de RAM suffisent pour gérer les licences d’un maximum de 1000 clients.
Utilisez le Licensing Server 64 bits pour les projets comptant de nombreux clients simultanés. Pour prendre en charge plus de clients qu’un serveur ne peut en gérer, ajoutez un second Licensing Server.
Serveur de base de données
Versions prises en charge :
- MS SQL Server 2014 ou version ultérieure, édition Standard ou Enterprise
- Oracle 12c Enterprise Edition
ABBYY FlexiCapture prend en charge MS SQL Server et Oracle installés sur n’importe quelle plateforme. Les deux éditeurs publient leurs propres recommandations concernant les paramètres optimaux, la scalabilité et la tolérance aux pannes.
Configuration matérielle du serveur de base de données
Pour MS SQL Server :
- CPU : 8 cœurs physiques, 3,4 GHz ou plus
- 16 GB de RAM ou plus
- HDD : 400 GB
- OS : Windows 2012 ou version ultérieure
Pour Oracle, utilisez Oracle Exadata Database Machine X2-2, Quarter Rack.
Paramètres de MS SQL Server
- Ajoutez autant de RAM que possible au serveur de base de données afin que la plupart des fichiers de la base de données soient conservés en RAM et lus plus rapidement
- Utilisez un disque dur rapide, de préférence un SSD, pour la partie de la base de données qui reste sur disque
- Évitez les modes de base de données entraînant des délais de transaction, tels que la mise en miroir
- Définissez le modèle de récupération de la base de données sur Simple
- Stockez la base de données et son journal sur des disques distincts
- Mettez régulièrement à jour les index des tableaux fréquemment modifiés (Document, Page, Batch, Task et EventLog). Sinon, un index peut devenir plus volumineux que les données du tableau auquel il appartient
- NAS ou SAN, connectés via LAN, SCSI, Fibre Channel ou InfiniBand
- Vitesse de lecture/écriture : à partir de 100 MB/s, selon votre charge de travail
- Capacité : à partir de 5 TB, selon votre charge de travail
Dimensionnez ces deux valeurs pour votre propre projet. Pour plus d’informations, voir Dimensionnement de FileStorage.
L’indexation de recherche et l’analyse antivirus du contenu de FileStorage peuvent réduire les performances ou bloquer l’accès aux fichiers en cours de traitement dans le Système.
Utilisez une technologie de stockage tolérante aux pannes, par exemple RAID 10.
Dimensionnement de FileStorage
Deux facteurs déterminent la vitesse de lecture/écriture et la capacité nécessaires. Dimensionnez-les tous les deux.
Débit de pages et mode couleur
La vitesse de lecture/écriture dépend du nombre moyen et maximal de pages traitées par heure et sur 24 heures, ainsi que de leur mode couleur. Estimez le flux d’entrée en octets par seconde à partir de la taille habituelle des fichiers des pages numérisées en couleur, en niveaux de gris et en noir et blanc. Pour plus d’informations, consultez Mesures de performances.
Les images constituent la majeure partie des données transférées au sein du System. Analysez le workflow de traitement et définissez deux valeurs :
- R, le nombre d’étapes lors desquelles les images de page sont téléchargées depuis le serveur d’applications
- W, le nombre d’étapes lors desquelles les images de page sont téléversées vers le serveur d’applications
Calculez ensuite les deux vitesses.
Par exemple, un client traite 10 000 pages en niveaux de gris par heure dans un workflow en quatre étapes. Seules les étapes qui transfèrent des images de page vers ou depuis le serveur d’applications sont prises en compte dans R et W.
Avec une taille moyenne de fichier A4 en niveaux de gris de 3 Mo :
- Flux d’entrée = 10 000 images de page en niveaux de gris/heure = 2,8 images en niveaux de gris/s = 8,4 Mo/s
- Vitesse d’écriture requise = 1 × 8,4 Mo/s = 8,4 Mo/s
- Vitesse de lecture requise = 3 × 8,4 Mo/s = 25,2 Mo/s
Pour évaluer les performances du disque dur, vous pouvez utiliser l’outil CrystalDiskMark, distribué sous licence MIT.
Durée de stockage des documents dans le Système
La capacité dépend de la durée pendant laquelle les images restent dans le Système avant d’être supprimées.
Par exemple, un client traite 100 000 images en niveaux de gris en 24 heures. Conformément au Service-Level Agreement, le temps de traitement est de 2 jours par document. Les documents traités sont ensuite stockés pendant 2 semaines, car le système ERP du client effectue des contrôles supplémentaires. S’il détecte des écarts, les documents sont modifiés dans FlexiCapture puis téléversés de nouveau vers le système ERP.
Les images sont donc stockées pendant 2 + 14 = 16 jours. Avec une taille moyenne de 3 MB pour un fichier A4 en niveaux de gris, le Système accumule 16 × 100 000 × 3 MB = 4,8 TB de données.
Utilisez la configuration Large pour plus de 300 000 pages couleur par tranche de 24 heures. Elle peut traiter jusqu’à 3 millions de pages en noir et blanc ou jusqu’à 1 million de pages couleur en 24 heures.
Toutes les recommandations pour Medium s’appliquent à Large, mais à cette échelle, vous devez toutes les suivre. Calculez la charge de chaque composant du système et choisissez un matériel suffisamment puissant pour la supporter sans dépenses excessives. Testez la connexion Internet et le connecteur back-end afin de confirmer qu’ils peuvent maintenir les performances visées.
Prévoyez dès le départ un réseau de 10 Gb/s et un FileStorage à haut débit.
Le diagramme suivant présente une architecture réseau possible pour la configuration Large.
Il n’existe pas d’exigences système standard à cette échelle. Examinez plutôt une configuration testée et ses performances mesurées. Pour plus d’informations, consultez Résultats des tests sur Huawei FusionCube 6000.
Pour les volumes dépassant la configuration Large, combinez plusieurs installations FlexiCapture indépendantes sous un même point d’administration et de supervision. Il s’agit de la configuration xLarge.