1c 8 réseau. Le schéma de travail dans la version de fichier

A donné lieu à plusieurs questions sur les modes de fonctionnement du 1C.

Modes de fonctionnement avec infobase :
Version de fichier du travail
Client - version serveur du travail

Mode fichier

La version fichier de l'œuvre est conçue pour travail personnel Un seul utilisateur, mais un fonctionnement en réseau multi-utilisateurs est également disponible. La publication parallèle de documents dans ce mode est impossible. En moyenne, une dizaine d'utilisateurs peuvent travailler simultanément en mode fichier.
Pas besoin d'acheter des clés de serveur.
Dans le mode de fonctionnement fichier, l'intégralité de l'infobase (base de données, configuration) est stockée dans un fichier 1Cv8.1CD.

1Cv8.1CD est une base de données de fichiers

La base de données de fichiers (fichier 1Cv8.1CD) est gérée par le SGBD Fichier, qui fait partie de la plateforme 1C : Enterprise.
Dans le mode de fonctionnement fichier, une imitation du mode de fonctionnement client-serveur se produit, vous devez donc toujours respecter le mécanisme de développement client-serveur.

Si le fichier 1Cv8.1CD est supérieur à 4 Go. Il est temps de penser à passer à une version client-serveur de l'œuvre.

Gros moins mode fichier travail est faible sécurité de l'information.

Le schéma de travail dans la version de fichier

L'application client lourd accède directement à l'infobase et reçoit une réponse. Le client léger accède également à la base de données directement en utilisant son propre protocole. Le client Web accède à l'infobase à partir de en utilisant le Web serveur.

Pour passer du mode fichier au client-serveur il suffit de décharger l'infobase au format dt puis de la charger dans l'infobase créée sur le serveur.

Version client-serveur du travail

La version client-serveur est adaptée pour travailler avec une infobase d'un grand nombre d'utilisateurs. La fiabilité de la base de données est garantie par le SGBD, qui contient des mécanismes d'archivage et de récupération automatiques. La vitesse de travail avec les données est plus élevée qu'en mode fichier.

La version client-serveur fonctionne selon une architecture à trois niveaux :
Utilisateur
Serveur d'applications (cluster de serveurs)
SGBD

Les clients contactent le gestionnaire de cluster, qui transmet la demande de l'utilisateur à un serveur fonctionnel (la demande peut être redirigée vers un serveur plus libre). Ensuite, le serveur contacte le SGBD pour obtenir les données nécessaires.
Le SGBD traite la demande et renvoie un tableau de données au serveur, qui renvoie les données traitées au client. Dans un cluster de serveurs, il est possible de configurer des serveurs de sauvegarde vers lesquels sont transférés les processus en cas d'indisponibilité du serveur en fonctionnement. Cela augmente la fiabilité.

Le client Web interagit (via le protocole http) avec le serveur Web, qui accède au cluster de serveurs. Il est également possible de travailler avec un client léger via le protocole http (exactement de la même manière)

Mode de fonctionnement actuel consultable dans le configurateur et en mode utilisateur en ouvrant Aide -> A propos du programme (ligne "mode")

Une application typique s'exécute toujours en mode client lourd. Une application gérée peut s'exécuter dans des clients lourds et légers. La fonctionnalité du client léger est sévèrement limitée.

Un article sur les applications communes et gérées, les formes communes et gérées de "1C: Enterprise" peut être trouvé ici.

N'hésitez pas à laisser votre commentaire, votre avis m'est cher.

P.S. Charlie Brooker - Boîte à souhaits

L'installation de 1C : Enterprise n'est pas une tâche aussi difficile que cela puisse paraître à première vue. Si vous n'avez jamais fait cela auparavant et que vous ne voulez fondamentalement pas lire le "Guide d'installation et de démarrage" officiel, alors peut-être que ce matériel vous aidera. Les personnes qui ont de l'expérience dans l'installation de 1C peuvent trouver la section "conseils" à la fin de l'article utile - peut-être trouverez-vous quelque chose de nouveau et d'utile pour vous-même. Je voudrais également attirer votre attention sur le fait que dans cet article vous ne trouverez rien sur l'installation de la version SQL de 1C.

Étapes de base

Le processus d'installation et de lancement de 1C: Enterprise sur n'importe quel ordinateur, comme de nombreuses autres opérations, peut être divisé en les étapes principales suivantes :

1. Installation de la plateforme (système) 1C : Entreprise.
2. Installation des configurations.
3. Installation d'une clé de sécurité électronique.
4. Configuration des connexions réseau (pour les versions réseau).

Afin de clarifier ce dont nous parlons, nous utiliserons trois désignations pour représenter le système de programme 1C : Entreprise :

Plate-forme - « engine » et « composants » sont installés par le même installateur et les configurations sont installées par des installateurs distincts.

1. Installation de la plateforme (système) 1C : Entreprise

Avant de procéder à l'installation, assurez-vous que 1C: Enterprise n'a pas encore été installé sur cet ordinateur... Peut-être que la plate-forme déjà configurée est adaptée pour lancer la configuration dont vous avez besoin, alors n'hésitez pas à passer à l'étape 2 "Paramétrage des configurations". Vous ne risquez rien, car peu importe dans quel ordre vous installez les configurations et les plates-formes. Si, après l'installation de la configuration, le programme ne fonctionne toujours pas et que vous n'êtes pas sûr de propres forces, alors la meilleure solution est de contacter des spécialistes pour réinstaller la plateforme 1C : Enterprise.

Donc, devant vous se trouve un kit de distribution 1C - en règle générale, grand ensemble disquettes ou un CD avec le programme d'installation 1C. Les heureux possesseurs d'un CD n'ont qu'à installer son lecteur de CD et attendre démarrage automatique menu des paramètres. Dans celui-ci, vous devez sélectionner un élément appelé "1C: Enterprise 7.7". Si vous ne pouvez toujours pas attendre le démarrage automatique, vous devrez exécuter vous-même le programme "SETUP.EXE" à partir du disque.

Par exemple, vous pouvez le faire comme ceci - dans le menu "Démarrer", sélectionnez "Exécuter", puis tapez la commande "D: \ SETUP.EXE" dans la boîte de dialogue et cliquez sur "OK". Ensuite, vous devez accepter avec audace la proposition d'installation "par défaut". Lorsque le programme vous pose des questions sur le "Nom" et "Organisation", ne vous inquiétez pas - écrivez ce que vous voulez, cela n'affectera pas le travail ultérieur du programme.

Si votre kit de distribution 1C se trouve sur des disquettes, alors vous devez transpirer un peu. Tout d'abord, vous devez trier un tas de disquettes en deux piles - "1C: Kit de distribution de plate-forme d'entreprise" et "Kit de distribution de configuration". Ensuite, vous devez insérer une disquette portant le numéro un du kit de distribution de la plate-forme dans le lecteur de disquette et exécuter le programme "SETUP.EXE". Pendant le processus d'installation, le programme vous demandera de manière ennuyeuse d'insérer alternativement les disquettes appropriées dans le lecteur de disque.

2. Paramétrage des configurations

Pour un kit de distribution sur CD-ROM, l'installation des configurations est lancée depuis le menu d'installation en sélectionnant l'élément approprié, par exemple, « 1C : Comptabilité 7.7 Configuration type ». Si vous avez des disquettes, vous devrez insérer la disquette n°1, cette fois depuis la pile "configuration", et exécuter le programme "SETUP.EXE". Vous attendez une procédure désagréable de réinstallation alternative des disquettes dans le lecteur à la demande du programme.

Une fois lancé, l'installateur de configuration pose à l'utilisateur les questions suivantes :

Choix d'installation - Configuration nouvelle ou mise à jour ? La réponse est choisie en fonction de la situation. Par défaut, nous considérons une nouvelle installation.
"Sélection du répertoire d'installation" - nous vous recommandons de ne pas être d'accord avec le répertoire "par défaut" gentiment suggéré, mais de choisir un chemin plus simple, par exemple "c: \ 1C Base".

3. Installation d'une clé de sécurité électronique

D'habitude, produits logiciels 1C sont protégés contre la réplication illégale avec les clés électroniques HASP. Cette clé doit être insérée dans le connecteur du port parallèle lorsque l'ordinateur est éteint. Si vous possédez une imprimante, le câble de celle-ci doit être inséré dans la fente appropriée de la clé de sécurité connectée au port parallèle. N'hésitez pas ensuite à allumer l'ordinateur et à sélectionner "Installer le pilote de protection" dans le menu 1C : Entreprise ("Démarrer" - "Programmes" - "1C : Entreprise").

Ça y est, l'installation pour les utilisateurs des versions locales est terminée. Vous pouvez exécuter 1C: Enterprise ("Démarrer" - "Programmes" - "1C: Enterprise" - "1C: Enterprise"). Dans la fenêtre de lancement, sélectionnez l'infobase à laquelle vous vous trouvez ce moment souhaitez vous connecter, puis cliquez sur le bouton « OK ». Attention! Lors du premier lancement de l'infobase, le processus de construction des fichiers d'index auxiliaires a lieu et 1C démarre un peu plus longtemps que d'habitude. Faites également attention au fait que si vous avez installé une version réseau de 1C: Enterprise, la case à cocher « exclusif » doit être cochée au premier démarrage.

S'il existe une liste d'utilisateurs pour l'infobase qui sont autorisés à travailler avec elle, la boîte de dialogue "Autorisation d'accès" apparaîtra avant de démarrer le programme. Sélectionnez un utilisateur, entrez un mot de passe (si attribué) et cliquez sur le bouton "OK". Ne vous inquiétez pas! Lors du démarrage des bases de données de démonstration, tous les utilisateurs n'ont pas de mot de passe - sélectionnez simplement un utilisateur et cliquez sur "OK".

4. Configuration des connexions réseau (pour les versions réseau)

La configuration de la version réseau de 1C vous obligera à effectuer une série d'étapes dans l'ordre indiqué ci-dessous.

Choix système opérateur

Il est préférable d'installer les versions réseau de 1C sur les systèmes d'exploitation serveur. Si le nombre estimé d'utilisateurs est supérieur à trois, il est recommandé d'installer 1C sur un système d'exploitation réseau (Novell Netware ou Windows 2000 Server).

Configurations, infobases

Les configurations et les infobases doivent se trouver dans un dossier sur le serveur en libre accès. Il est conseillé de connecter ce dossier pour les utilisateurs en tant que lecteur réseau (bien entendu, la lettre désignant un lecteur réseau doit être la même pour tous les utilisateurs).

Visibilité des clés de sécurité

Pour que la clé de sécurité électronique soit « visible » pour les autres utilisateurs du réseau, sur l'ordinateur où elle est installée, vous devez exécuter le « Serveur de protection » (Démarrer - Programmes - 1C : Entreprise - Serveur de protection)

Choisir une option d'installation de la plate-forme 1C: Enterprise

Selon l'ensemble de livraison, plusieurs options d'installation du système 1C : Enterprise sont autorisées :

Installation locale - installation administrative - installation réseau

L'installation locale peut être effectuée pour n'importe quel ensemble de livraison et est la seule option possible pour les versions mono-utilisateur de 1C : Enterprise. Lorsque vous effectuez une installation locale, vous devez effectuer toutes les étapes déjà répertoriées ci-dessus.

Une installation administrative n'est pas à proprement parler une installation en soi, mais une préparation à l'installation. Son essence est que sur le serveur réseau local un répertoire est créé dans lequel tous les fichiers nécessaires sont transférés de la distribution 1C: Enterprise afin qu'en exécutant SETUP.EXE à partir de ce répertoire, vous puissiez effectuer la procédure d'installation locale ou réseau. Cela n'apporte aucune modification au menu, au répertoire système et registre Windowsà la fois pour le serveur et pour l'ordinateur exécutant le programme d'installation.

Une installation réseau ne peut être effectuée qu'en exécutant le programme SETUP.EXE à partir du répertoire créé lors de l'installation administrative. Une installation réseau diffère d'une installation locale principalement en ce que lors de l'installation réseau, 1C : Les fichiers de programme d'entreprise ne sont pas copiés sur l'ordinateur de l'utilisateur et les éléments de menu pour le lancement des programmes sont configurés de manière à ce qu'au démarrage fichiers exécutables(.EXE, .DLL) sont extraits du même répertoire du serveur de réseau local à partir duquel le programme SETUP.EXE a été lancé pour effectuer l'installation réseau.

Alors, quelle est l'option d'installation préférée ? (Il est clair que cette question ne s'applique qu'aux versions réseau de 1C : Enterprise). L'installation locale est la plus option simple... Dans ce cas, sur chaque ordinateur sur lequel vous envisagez d'utiliser 1C : Enterprise, vous devez effectuer la procédure d'installation locale. Dans le cas le plus simple, l'installation s'effectue directement depuis le kit de distribution. Mais l'installation locale peut également être effectuée à partir du répertoire sur le serveur, dans lequel l'installation administrative a été précédemment effectuée.

Lors de l'installation locale, 1C: Enterprise est lancé le plus rapidement (les fichiers programmes sont chargés à partir de disque local ordinateur, et non à partir d'un disque de serveur distant) et le réseau est un peu moins chargé, mais en même temps, l'espace disque est consommé sur chacun des ordinateurs des utilisateurs pour les mêmes fichiers de programme 1C: Enterprise.

L'inconvénient le plus sérieux d'une installation locale est la complexité de l'administration, surtout lorsque le système 1C : Enterprise est utilisé sur de nombreux ordinateurs du réseau local. Le fait est que des éditions mises à jour (versions) apparaissent périodiquement, qui, dans le cas de l'utilisation d'une installation locale, doivent être réinstallées sur chaque ordinateur sur lequel 1C: Enterprise est utilisé. Il n'est pas non plus recommandé d'utiliser différentes versions 1C: Enterprise lorsque vous travaillez avec la même infobase.

Dans les cas où un nombre important d'ordinateurs sont utilisés au sein du même réseau local pour fonctionner avec le système 1C : Enterprise et que le réseau n'est pas trop surchargé, il est recommandé d'utiliser l'installation réseau 1C. Comme déjà indiqué, pour effectuer une installation réseau de 1C : Enterprise, vous devez d'abord effectuer une installation administrative sur le disque du serveur. Et ce n'est qu'alors que la procédure d'installation du réseau peut être effectuée sur les ordinateurs des utilisateurs. Cela complique quelque peu le processus d'installation dans son ensemble, mais permet de profiter de certains avantages, dont le principal est de simplifier la procédure de mise à jour des versions 1C: Enterprise. Dans ce cas, la mise à jour de la version 1C : Enterprise se réduit à l'installation administrative d'une nouvelle version 1C : Enterprise sur le serveur par rapport à l'existant. Ainsi, les versions mises à jour des fichiers programmes 1C : Enterprise seront lancées sur les postes des utilisateurs (dans le cas d'une installation en réseau, les fichiers programmes sont lancés depuis le disque du serveur).

La procédure d'installation réseau consiste à copier une partie du 1C : Enterprise inclus dans le kit de distribution dans le répertoire système Windows sur les ordinateurs des utilisateurs. fichiers système, qui peut également être mis à jour de temps en temps (bien que beaucoup moins souvent que 1C : fichiers de programme d'entreprise). Par conséquent, pour assurer la fiabilité et éviter les incohérences dans les versions des fichiers système, après la mise à jour de la version 1C : Enterprise sur le serveur, il est recommandé de répéter la procédure d'installation réseau sur les ordinateurs des utilisateurs.

Comment installer plusieurs composants 1C : Enterprise sur un seul ordinateur ? Il arrive souvent que deux composants différents de 1C Enterprise doivent être installés sur un même ordinateur (par exemple, « Comptabilité, version réseau » et « Comptabilité opérationnelle, 3 postes de travail »). Si vous les placez dans des répertoires différents, l'utilisateur sera confus quant à la plate-forme et à la configuration à exécuter. En général, il n'est pas économique de conserver deux versions pratiquement identiques du système 1C sur une même machine. Une option d'installation plus rationnelle est la suivante : installez le composant de comptabilité (à partir de différentes options - local, 3 utilisateurs, réseau - une version plus grande est sélectionnée); dans le répertoire BIN, recherchez deux fichiers avec l'extension PLS et renommez-les en fonction de leurs noms d'origine (le "nom d'origine" est stocké dans les propriétés du fichier). Par conséquent, vous installerez les trois composants de 1C : Enterprise. Il ne reste plus qu'à fournir les clés électroniques des composants achetés et vous pouvez travailler.

On se pose souvent des questions sur ce qui ralentit 1c, notamment lors du passage à la version 1c 8.3, grâce à nos confrères d'Interface LLC, on vous dit en détail :

Dans nos publications précédentes, nous avons déjà évoqué l'impact des performances du sous-système disque sur la vitesse de fonctionnement du 1C, cependant, cette étude concernait l'utilisation locale de l'application sur un PC séparé ou serveur Principal... Dans le même temps, la plupart des petites implémentations impliquent de travailler avec une base de fichiers sur un réseau, où l'un des PC de l'utilisateur est utilisé comme serveur, ou un serveur de fichiers dédié basé sur un ordinateur conventionnel, souvent aussi peu coûteux.

Une petite étude des ressources en russe sur 1C a montré que ce problème est soigneusement évité ; en cas de problème, il est généralement conseillé de passer en mode client-serveur ou terminal. Il est également devenu presque généralement admis que les configurations sur une application gérée sont beaucoup plus lentes que les configurations normales. En règle générale, les arguments sont "de fer": "ici Comptabilité 2.0 vient de voler, et la" troïka " bouge à peine ", bien sûr, pour la vérité dans ces mots, alors essayons de la comprendre.

La consommation des ressources en un coup d'œil

Avant de commencer cette recherche, nous nous sommes fixé deux tâches : savoir si les configurations basées sur une application managée sont réellement plus lentes que d'habitude et quelles ressources ont un impact primordial sur les performances.

Pour les tests, nous avons pris deux machines virtuelles sous Contrôle de Windows Server 2012 R2 et Windows 8.1, respectivement, leur donnant 2 cœurs de l'hôte Core i5-4670 et 2 Go mémoire vive, ce qui équivaut à peu près à une machine de bureau moyenne. Le serveur a été placé sur une matrice RAID 0 de deux WD Se et le client sur une matrice similaire de disques à usage général.

Comme bases expérimentales, nous avons choisi plusieurs configurations de Comptabilité 2.0, version 2.0.64.12 qui a ensuite été mis à jour pour 3.0.38.52 , toutes les configurations ont été exécutées sur la plate-forme 8.3.5.1443 .

La première chose qui attire l'attention est la taille accrue de la base d'informations de la troïka, qui s'est considérablement agrandie, ainsi que l'appétit beaucoup plus grand pour la RAM :

On est déjà prêt à entendre l'habituel : "pourquoi ont-ils ajouté une telle chose à ce trio", mais ne nous précipitons pas. Contrairement aux utilisateurs des versions client-serveur, qui nécessitent un administrateur plus ou moins qualifié, les utilisateurs version de fichier pense rarement à l'entretien des bases. Aussi, l'entretien (lecture - mise à jour) de ces bases employés de cabinets spécialisés y pense rarement.

Pendant ce temps, la base d'informations 1C est un SGBD à part entière de son propre format, qui nécessite également une maintenance et pour cela il existe même un outil appelé Tester et réparer l'infobase... Peut-être que le nom a joué une blague cruelle, qui, pour ainsi dire, implique qu'il s'agit d'un outil de dépannage des problèmes, mais les faibles performances sont également un problème, et la restructuration et la réindexation, ainsi que la compression de table, sont bien connues de toute base de données d'administrateur de SGBD. outils d'optimisation. Vérifiez-le?

Après avoir appliqué les actions sélectionnées, la base a considérablement "perdu du poids", devenant encore moins que les "deux", que personne n'a jamais optimisés, et la consommation de RAM a également légèrement diminué.

Par la suite, après avoir chargé de nouveaux classificateurs et ouvrages de référence, créer des index, etc. la taille de la base augmentera, en général, les bases des "trois" sont plus grandes que les bases des "deux". Cependant, ce n'est pas plus important, si la deuxième version se contentait de 150 à 200 Mo de RAM, la nouvelle édition a déjà besoin d'un demi-gigaoctet et cette valeur doit être prise en compte lors de la planification des ressources nécessaires pour travailler avec le programme.

Rapporter

La bande passante du réseau est l'un des paramètres les plus importants pour les applications réseau, en particulier en tant que 1C en mode fichier, déplaçant des quantités importantes de données sur le réseau. La plupart des réseaux des petites entreprises sont construits sur la base d'équipements 100 Mbit/s peu coûteux, nous avons donc commencé les tests avec une comparaison des indicateurs de performance 1C dans les réseaux 100 Mbit/s et 1 Gbit/s.

Que se passe-t-il lorsque la base de données de fichiers 1C est lancée sur le réseau ? Le client télécharge une assez grande quantité d'informations dans des dossiers temporaires, surtout s'il s'agit du premier démarrage à froid. A 100 Mbit/s, on va, comme prévu, foncer dans la largeur du canal et le téléchargement peut prendre un temps considérable, dans notre cas environ 40 secondes (le prix d'une division de carte est de 4 secondes).

Le deuxième lancement est plus rapide, car certaines données sont stockées dans le cache et y sont jusqu'au redémarrage. La transition vers un réseau gigabit peut accélérer considérablement le chargement du programme, à la fois "à froid" et "à chaud", et le rapport des valeurs est observé dans ce cas. Par conséquent, nous avons décidé d'exprimer le résultat en valeurs relatives, en prenant la plus grande valeur de chaque mesure à 100 % :

Comme vous pouvez le voir sur les graphiques, Accounting 2.0 se charge deux fois plus vite à n'importe quelle vitesse de réseau, passer de 100 Mbps à 1 Gbps vous permet de quadrupler vos temps de téléchargement. Différences entre les bases optimisées et non optimisées de la "troïka" dans ce mode invisible.

Nous avons également testé l'effet de la vitesse du réseau sur le travail en service intensif, par exemple, dans le repostage de groupe. Le résultat est également exprimé en termes relatifs :

Ici c'est plus intéressant, la base optimisée de la "troïka" en 100 Mbit/s du réseau fonctionne à la même vitesse que la "deux", et la non optimisée affiche le double du pire résultat. Au gigabit, les ratios sont préservés, le "trois" non optimisé est également deux fois plus lent que le "deux", et l'optimisé est un tiers derrière. Aussi, le passage à 1 Gbit/s permet de réduire le temps de trois fois pour l'édition 2.0 et de deux fois pour la 3.0.

Afin d'évaluer l'impact de la vitesse du réseau sur le travail quotidien, nous avons utilisé Mesure du rendement en effectuant une séquence d'actions prédéfinies dans chaque base.

En fait, pour les tâches quotidiennes, la bande passante du réseau n'est pas un goulot d'étranglement, un "triple" non optimisé n'est que 20% plus lent que deux, et après optimisation, il s'avère être à peu près le même plus rapide - les avantages de travailler en mode client léger se reflètent. La transition vers 1 Gbps ne donne aucun avantage à la base optimisée, et la base non optimisée et les deux commencent à fonctionner plus rapidement, montrant peu de différence entre elles.

D'après les tests effectués, il apparaît clairement que le réseau n'est pas un goulot d'étranglement pour les nouvelles configurations et que l'application gérée est encore plus rapide que d'habitude. Vous pouvez également recommander de passer à 1 Gbit/s si les tâches lourdes et la vitesse de téléchargement des bases de données sont critiques pour vous, dans d'autres cas les nouvelles configurations vous permettent de travailler efficacement même dans des réseaux 100 Mbit/s lents.

Alors pourquoi 1C ralentit-il ? On comprendra plus loin.

Sous-système de disque serveur et SSD

Dans l'article précédent, nous avons obtenu une augmentation des performances du 1C en plaçant les bases sur le SSD. Performances éventuellement insuffisantes du sous-système de disque du serveur ? Nous avons mesuré les performances d'un serveur de disque lors d'un groupe exécuté dans deux bases de données à la fois et avons obtenu un résultat plutôt optimiste.

Malgré le nombre relativement important d'opérations d'entrée-sortie par seconde (IOPS) - 913, la longueur de la file d'attente n'a pas dépassé 1,84, ce qui est un très bon résultat pour une baie à deux disques. Sur cette base, on peut supposer qu'un miroir à partir de disques ordinaires sera suffisant pour le fonctionnement normal de 8 à 10 clients réseau en modes lourds.

Alors faut-il un SSD sur un serveur ? La meilleure façon de répondre à cette question sera les tests que nous avons menés en utilisant une méthodologie similaire, connexion réseau partout 1 Gbps, le résultat est également exprimé en valeurs relatives.

Commençons par la vitesse de chargement de la base de données.

Cela peut paraître surprenant pour quelqu'un, mais cela n'affecte pas la vitesse de chargement de la base de données SSD sur le serveur. Le principal facteur limitant ici, comme le montre le test précédent, est la bande passante du réseau et les performances du client.

Passons au repostage :

Nous avons déjà noté ci-dessus que les performances du disque sont tout à fait suffisantes même pour travailler en modes lourds, par conséquent, la vitesse du SSD n'est pas non plus affectée, à l'exception de la base non optimisée, qui a rattrapé celle optimisée sur le SSD. En fait, cela confirme une fois de plus que les opérations d'optimisation ordonnent les informations dans la base de données, réduisant le nombre d'opérations d'entrée/sortie aléatoires et augmentant la vitesse d'accès à celle-ci.

Pour les tâches quotidiennes, l'image est la même :

Seule la base non optimisée bénéficie du SSD. Vous pouvez bien entendu acheter un SSD, mais il vaudrait bien mieux penser à une maintenance ponctuelle des bases. N'oubliez pas non plus de défragmenter la section infobase sur le serveur.

Sous-système de disque client et SSD

Nous avons analysé l'influence du SSD sur la vitesse d'un 1C installé localement dans l'article précédent, une grande partie de ce qui précède est également vrai pour le travail en mode réseau. En effet, 1C utilise activement les ressources disque, y compris pour les tâches d'arrière-plan et de routine. Dans la figure ci-dessous, vous pouvez voir comment Accounting 3.0 accède assez activement au disque dans les 40 secondes environ après le chargement.

Mais en même temps, il faut savoir que pour poste de travail là où le travail actif est effectué avec une ou deux bases d'informations de ressources, les performances d'un disque dur conventionnel de série sont largement suffisantes. L'achat d'un SSD peut accélérer certains processus, mais vous ne remarquerez pas une accélération radicale dans le travail quotidien, puisque, par exemple, les téléchargements seront limités par la bande passante du réseau.

Ralentir Disque dur est capable de ralentir certaines opérations, mais à lui seul, il ne peut pas ralentir le programme.

RAM

Malgré le fait que la RAM soit désormais incroyablement bon marché, de nombreux postes de travail continuent de fonctionner avec la quantité de mémoire installée au moment de l'achat. C'est là que les premiers problèmes guettent. En partant déjà du fait que le "trois" moyen nécessite environ 500 Mo de mémoire, on peut supposer que la quantité totale de RAM dans 1 Go ne sera pas suffisante pour fonctionner avec le programme.

Nous avons réduit la mémoire système à 1 Go et lancé deux infobases.

À première vue, tout n'est pas si mal, le programme a calmé ses appétits et s'est complètement enraciné dans la mémoire disponible, mais n'oublions pas que le besoin de données opérationnelles n'a pas changé, alors où est-il passé ? Vidé sur disque, cache, swap, etc., l'essence de cette opération est que les données qui ne sont pas nécessaires pour le moment sont envoyées de la RAM rapide, dont la quantité n'est pas suffisante, vers le disque lent.

Où ça mène ? Voyons comment les ressources système sont utilisées dans les opérations lourdes, par exemple, nous allons démarrer un groupe republiant dans deux bases de données à la fois. D'abord sur un système avec 2 Go de RAM :

Comme vous pouvez le voir, le système utilise activement le réseau pour recevoir les données et le processeur pour leur traitement, l'activité du disque est insignifiante, en cours de traitement, elle augmente occasionnellement, mais n'est pas un facteur limitant.

Réduisons maintenant la mémoire à 1 Go :

La situation change radicalement, la charge principale tombe maintenant sur le disque dur, le processeur et le réseau sont inactifs, attendant que le système lise les données nécessaires du disque en mémoire et y envoie des données inutiles.

Dans le même temps, même le travail subjectif avec deux bases de données ouvertes sur un système doté de 1 Go de mémoire s'est avéré extrêmement inconfortable, les répertoires et les magazines ont été ouverts avec un retard important et un accès disque actif. Par exemple, l'ouverture du magazine Ventes de biens et services a pris environ 20 secondes et s'est accompagnée d'une activité élevée du disque pendant tout ce temps (mis en évidence par une ligne rouge).

Pour évaluer objectivement l'impact de la RAM sur les performances des configurations basées sur une application managée, nous avons effectué trois mesures : la vitesse de téléchargement de la première base de données, la vitesse de téléchargement de la deuxième base de données et le rechargement groupé dans l'une des bases de données. Les deux bases de données sont complètement identiques et créées en copiant la base de données optimisée. Le résultat est exprimé en unités relatives.

Le résultat parle de lui-même, si le temps de chargement augmente d'environ un tiers, ce qui est encore tout à fait supportable, alors le temps d'exécution des opérations dans la base de données augmente de trois fois, il n'est pas nécessaire de parler de travail confortable dans de telles conditions. D'ailleurs, c'est le cas lorsque l'achat d'un SSD peut améliorer la situation, mais il est beaucoup plus facile (et moins cher) de traiter la cause, et non les conséquences, et d'acheter simplement le bon montant mémoire vive.

Le manque de RAM est la principale raison pour laquelle travailler avec de nouvelles configurations 1C s'avère inconfortable. Les configurations avec 2 Go de mémoire embarquée doivent être considérées comme le minimum approprié. Dans le même temps, gardez à l'esprit que dans notre cas, des conditions de « serre » ont été créées : un système propre, seuls 1C et le gestionnaire de tâches étaient en cours d'exécution. Dans la vraie vie, un navigateur, une suite bureautique est généralement ouvert sur un ordinateur de travail, un antivirus est en cours d'exécution, etc., etc., partez donc du besoin de 500 Mo par base de données, plus une marge, de sorte que lors d'opérations lourdes, vous ne faites pas face à un manque de mémoire et à une forte baisse de productivité.

CPU

Sans exagération, le processeur central peut être qualifié de cœur d'ordinateur, puisque c'est lui qui, en définitive, effectue le traitement de tous les calculs. Pour évaluer son rôle, nous avons mené une autre série de tests, les mêmes que pour la RAM, réduisant le nombre de machine virtuelle cœurs de deux à un, avec le test exécuté deux fois avec 1 Go et 2 Go de mémoire.

Le résultat s'est avéré assez intéressant et inattendu, plus processeur puissant assez efficacement assumé la charge dans des conditions de manque de moyens, le reste du temps sans apporter de bénéfices tangibles. 1C Enterprise peut difficilement être qualifié d'application qui utilise activement les ressources du processeur, mais plutôt peu exigeante. Et dans des conditions difficiles, le processeur supporte non pas tant la charge de calculer les données de l'application elle-même, mais les frais généraux de maintenance : opérations d'E/S supplémentaires, etc.

conclusions

Alors pourquoi 1C ralentit-il ? Tout d'abord, il s'agit d'un manque de RAM, la charge principale dans ce cas repose sur le disque dur et le processeur. Et s'ils ne brillent pas par leurs performances, comme c'est généralement le cas dans les configurations de bureau, alors nous obtenons la situation décrite au début de l'article - "deux" a bien fonctionné, mais "trois" ralentit sans vergogne.

En second lieu se trouvent les performances du réseau, un canal lent à 100 Mbit/s peut devenir un véritable goulot d'étranglement, mais en même temps, le mode client léger est capable de maintenir un niveau de travail assez confortable même sur des canaux lents.

Ensuite, vous devez faire attention au disque, l'achat d'un SSD ne sera probablement pas un bon investissement, mais le remplacement du disque par un disque plus moderne ne sera pas superflu. Différence entre les générations disques durs peut être évalué par le matériel suivant : Un aperçu de deux disques Western Digital Blue 500 Go et 1 To bon marché.

Et enfin le processeur. Un modèle plus rapide, bien sûr, ne sera pas superflu, mais il ne sert à rien d'augmenter ses performances, à moins que ce PC ne soit utilisé pour des opérations lourdes : traitement de groupe, rapports lourds, clôture du mois, etc.

Nous espérons que ce matériel vous aidera à comprendre rapidement la question « pourquoi 1C ralentit » et à la résoudre le plus efficacement possible et sans frais supplémentaires.

Problème

Sur les forums, la même question est sans cesse posée : pourquoi 1C + MSSQL est-il plus lent à traiter les requêtes que les requêtes de fichiers ?

Ensuite, il y a généralement un « flot » de plusieurs dizaines de pages.

Il existe deux "tendances" populaires dans ces forums - certains disent que cela est normal pour la version client-serveur, la version du fichier devrait toujours fonctionner plus rapidement, d'autres disent que 1C ne fonctionne pas bien avec subd.

À la suite de "batailles et clarification des relations" sur les forums, les gens sont en désaccord sur leurs opinions.

Nous proposons de diviser la question en plusieurs :

1. La version du fichier fonctionne-t-elle plus rapidement dans les opérations de « monopole », lorsque son activité ne dépend pas des autres utilisateurs de la base de données ?

Par "monopole", nous entendons un utilisateur actif (travaillant) dans une infobase.

2. La version du fichier fonctionne-t-elle plus rapidement en mode multi-utilisateurs, lorsque les utilisateurs se disputent activement les ressources (par exemple, lors de la vente de marchandises, ils se tournent vers des soldes de stock en grande quantité) ?

3. Quelle est l'importance de la différence de vitesse entre la version du fichier et l'option client-serveur d'un point de vue commercial ?

Qu'est-ce que c'est vraiment

Tableau 1. Comparaison des versions fichier et client-serveur de 1C

Fichier 1C Client-Serveur 1C
Taille maximale d'une table 4 Go ~ des centaines de téraoctets
Taille en pratique lorsqu'il y a des "freins" en 1C lorsque le volume de la base de données est atteint ~ 16Gb ~ 500-1500 Go
Le nombre d'utilisateurs avec un travail confortable 1C 3-10 (interférer davantage avec les serrures de table) 300-700 personnes (alors vous devez généralement acheter du matériel plus puissant et optimiser à nouveau le code)
Des fonctions qui grugent des ressources qui auraient pu être dépensées pour de meilleures performances Non

intégrité des données transactionnelles, opérations de journalisation pour une analyse plus approfondie, fonctions pour augmenter le parallélisme du travail des utilisateurs

Bénéfices supplémentaires simplicité (car il y a peu de fonctions) service de données (par ex. sauvegarde) sans arrêter les utilisateurs
Zone de blocage minimale Au niveau de la table (nécessite moins de ressources) Au niveau record (plus de ressources requises)
Coût de possession (conditionnel) Petit Bien plus qu'un fichier
La présence d'une couche intermédiaire entre le client 1C et subd Non Serveur 1C

Réponse à la première question : La version du fichier fonctionne-t-elle plus rapidement dans les opérations "exclusives", lorsque son activité ne dépend pas des autres utilisateurs de la base de données - avec une probabilité de 99% la version du fichier est plus rapide(à condition que ses capacités ne soient pas limitées au matériel défectueux et que les capacités maximales de la version du fichier ne soient pas atteintes) !.

Ne vous contentez pas de nous croire sur parole - vérifiez par vous-même. Prendre ( Description détaillée ici) et voyez par vous-même (vérifiez d'abord dans la version du fichier, puis dans la version client-serveur).

Si vous ne croyez pas au test, testez l'opération appropriée pour la vérification à votre avis également dans les versions fichier et client-serveur. Nous recommandons de se baser par exemple sur la « clôture du mois » sur les bases de données jusqu'à 4 gigaoctets (sinon, la taille limite peut être atteinte sur la version du fichier).

Il est clair que si clôturer le mois en version fichier n'est pas possible pour vous, alors cela ne sert à rien de discuter des avantages de la version fichier pour vous, êtes-vous d'accord ?

Une autre question intermédiaire se pose :

Dans quelle mesure la version du fichier est-elle plus rapide que la version client-serveur en nombre ?

La réponse à cette question est beaucoup plus intéressante et pratique. Notre test et pratique montrent:

  1. en moyenne des opérations statistiques sur des volumes de données comparables presque 2 fois plus rapides
  2. en moyenne des opérations statistiques lorsque la quantité de données commence à dépasser la quantité de RAM disponible et en augmentant l'intensité du pompage - jusqu'à 3 à 4 fois plus rapide - ce n'est qu'un exemple de clôture de mois

Cependant, il est important de comprendre ce qu'est l'opération "moyenne". Il s'avère que les opérations qui opèrent sur des données en RAM dans la version client-serveur ne perdent pas, et parfois même surpassent la version fichier !

Cependant, de telles opérations sont rares. La charge principale est constituée d'opérations qui accèdent réellement au sous-système de disque pour la lecture et, surtout, pour l'écriture des données.

De plus, même un rapport inoffensif pendant la construction peut également écrire des données, par exemple, dans la base de données tempdb du service dans les cas où MS SQL Server est utilisé.

Lors de l'exécution d'une requête dans la version fichier, il n'y a pas de médiateur de données sous la forme d'un serveur 1C, c'est-à-dire un segment de moins de la demande. Il est logique que si, par exemple, pour effectuer un "travail sans intermédiaires", c'est toujours plus rapide que "travailler avec des intermédiaires". pour bloquer le "superflu" comme le fait la version du fichier. Il est plus facile de verrouiller l'ensemble de la table, car il s'agit d'un enregistrement contenant des informations sur le verrou, et les verrous sur des milliers de lignes représentent un ordre de grandeur plus d'enregistrements supplémentaires, mais plus important encore, il s'agit de beaucoup plus de ressources gaspillées (processeur, mémoire, et parfois de l'espace pour le disque).

En d'autres termes, la version client-serveur nécessite plus de ressources que la version fichier pour le même travail en terme de volume.

D'où la conséquence - sur le même ordinateur, vous pouvez faire plus de travail dans la version fichier en MODE MONOPOLY qu'en client-serveur (dans le même mode exclusif).

En conséquence, il semble que l'option client-serveur puisse faire moins de travail, nécessite plus de ressources, mais où est le « profit », pourquoi est-il utilisé presque partout ?

La deuxième question de notre article va nous aider à répondre : la version fichier fonctionne-t-elle plus rapidement en mode multi-utilisateurs, lorsque les utilisateurs se disputent activement les ressources (par exemple, lors de la vente de marchandises, ils se tournent vers des soldes de stock en grande quantité) ?

Dans le tableau numéro 1, nous voyons des inconvénients aussi importants de la version de fichier que la petite taille des bases de données - dans la plupart des entreprises, les bases de données 1C occupent des dizaines à des centaines de gigaoctets. Mais plus important encore, la version du fichier impose des verrous redondants (inutiles), ce qui réduit considérablement la possibilité de travail en parallèle des utilisateurs.

Ainsi, par exemple, une entreprise emploie 100 utilisateurs 1C. Un jour, pour un compte pair, supposons que chaque utilisateur entre 10 documents de manière égale tout au long de la journée, et chaque partie tabulaire contient 10 lignes.

Nous obtenons une arithmétique simple - 100 x 10 x 10 = 10 000 lignes sont entrées dans Système d'Information au cours de la journée.

Pour faciliter la compréhension, convenons que chaque utilisateur travaille avec des données uniques et que les autres utilisateurs ne se chevauchent ni dans la partie tabulaire du document ni dans la composition des détails.

Dans une version client-serveur, cela fonctionnera. Les documents seront affichés en parallèle.

Connaissant la redondance des verrous de version de fichier, calculons ce qui se passera si en même temps 100 utilisateurs de la version de fichier entrent le premier document dans le système ce jour-là, mais appuient simultanément sur le bouton.

Nous savons que la durée d'expiration du verrouillage par défaut est de 20 secondes. Théoriquement, nous pouvons supposer qu'à part le premier, tous les utilisateurs suivants s'attendront les uns les autres pendant 20 secondes, puis conserveront leurs documents. L'attente totale est de 100 utilisateurs x 1 document x 20 secondes = 2000 secondes d'attente. Vous pensez qu'il s'agit d'une demi-heure d'indisponibilité de l'utilisateur.

En pratique, c'est encore plus triste, les gens ne sont pas des robots, ils ne voient pas quand le système est verrouillé ou la probabilité qu'un document soit transmis sera élevée, alors ils déclarent simplement qu'il n'est pas possible d'entrer des données dans le système en raison aux verrous constants. Ou, plus simplement, en pratique, en mode fichier, l'entreprise va "se lever".

Mais même si nous imaginons qu'un programmeur extraordinaire est venu dans l'entreprise et a écrit le programme de manière à ce que les tentatives soient effectuées en permanence automatiquement, cette demi-heure d'arrêt n'ira nulle part.

De plus, si vous essayez 2, 3 documents ruineront l'image et en une journée, même avec un code idéal, la version du fichier "accumulera" 100 utilisateurs x 10 documents x 20 secondes = 20 000 secondes ~ 5 heures et demie de temps d'arrêt .

5 heures - ce handicap de l'option client-serveur. Peu importe à quelle vitesse ils seront entrés dans chaque flux dans la version client-serveur. Il est plus important qu'ils soient entrés, et dans la version de fichier à ce moment, il y a des attentes sur les verrous redondants.

Étant donné qu'en plus des verrous redondants, il existe encore des verrous nécessaires, nous allons reformuler le concept de performance.

D'un point de vue commercial, la productivité est la quantité de travail effectuée par jour par les 100 utilisateurs, pas seulement un monopole. Par conséquent, il est plus important pour les entreprises de savoir combien de données seront saisies dans le système au total par tous les utilisateurs. Évaluant la productivité du travail d'équipe, la version du fichier est des dizaines de centaines de fois inférieure à la version client-serveur.

Et encore une fois, nous vous exhortons à ne pas nous croire sur parole. Prenez 1C : Test de charge standard http://v8.1c.ru/expert/etp.htm ou développez votre propre test collectif et constatez par vous-même la fiabilité de nos déclarations.

Si vous avez des questions sur le test ou ses résultats, vous pouvez en discuter sur le forum.

Vous pouvez également acheter 1C: KIP, faites attention aux fonctionnalités.

Répondons maintenant à la troisième question : Quelle est l'importance de la différence de vitesse entre la version du fichier et l'option client-serveur d'un point de vue commercial ?

La version fichier est légèrement en avance sur la version client-serveur en mode exclusif et perd très sensiblement en mode multi-utilisateurs.

Mais vous devez comprendre que l'entreprise a d'autres tâches qui sont presque toujours plus prioritaires, à savoir la tolérance aux pannes, le fonctionnement ininterrompu, la fiabilité et la stabilité. L'exécution d'un serveur dans un cluster de basculement nécessite une surcharge de mise en miroir des données supplémentaire. Ainsi, il doit toujours y avoir un équilibre entre les différents objectifs : performance, fiabilité, sécurité, etc.

La version du fichier n'a pas de mécanismes de contrôle d'intégrité des données. Par exemple, si une panne de réseau se produit lors de la transmission de données ou si le voyant s'éteint, alors dans la version fichier, quelque chose aura le temps d'être enregistré et ce qui ne le sera pas. L'intégrité des données sera détruite. Dans la version client-serveur, dans de tels cas, une transaction incomplète sera simplement annulée et les données incomplètes n'entreront pas dans le système, l'intégrité des données sera préservée.

Celles. non seulement plus le nombre d'utilisateurs dans le système est élevé, plus la version du fichier sera perdue pour la version client-serveur, de même les procédures de récupération de données en cas d'échec transforment la version du fichier en une option absolument perdante.

Et maintenant, nous devons poser la "bonne question":

4. Pourquoi la question s'est-elle posée d'estimer la différence de vitesse des versions fichier et client-serveur ?

La même correspondance et les mêmes inondations sur les forums commencent par le fait que le questionneur a des problèmes de performances dans la version client-serveur.

Mais au lieu d'examiner les raisons qui ont provoqué le problème dans la version client-serveur, il découvre qu'il n'y a pas un tel problème dans la version fichier. Il n'est pas inquiet que le problème puisse être dans le "intermédiaire", qui est absent dans la version de fichier.

La bonne réponse est que peu importe à quel point le fichier ou la version client-serveur est plus rapide, mais ce qui cause exactement le ralentissement dans chaque cas SPÉCIFIQUE est important. Le mot PERFORMANCE est dangereux, car en fait il doit être écrit sous la forme d'une liste d'opérations dans le système, qui forment ensemble cette performance. Chaque opération doit être envisagée, en commençant par celle qui contribue le plus au ralentissement.

En général, nous le faisons de manière professionnelle et le faisons avec succès depuis de nombreuses années.

Nous sommes prêts à examiner une opération spécifique qui fonctionne lentement gratuitement, pour estimer le coût de sa solution. Si les conditions et le prix vous conviennent, alors nous accélérons l'opération, et si elle atteint les conditions que vous avez spécifiées, alors seulement dans ce cas vous payez pour notre travail.

Avec la croissance de l'organisation et avec l'augmentation du nombre d'utilisateurs de la base d'information 1C Enterprise au niveau local réseau informatique la charge sur le stockage principal de l'infobase - le serveur - augmente. Par conséquent, tôt ou tard, une question peut se poser devant le chef et l'informaticien de l'entreprise : comment fournir un système rapide, sûr et efficace avec les coûts financiers les plus bas ?

Tout d'abord, vous devez choisir une méthode d'organisation d'un complexe informatique automatisé d'entreprise sur la plate-forme 1C Enterprise 8. La plate-forme 1C prend en charge deux options de travail: fichier et client-serveur. Dans les deux cas, toutes les solutions appliquées fonctionnent exactement de la même manière.

Version de fichier de l'opération 1C conçu pour un ou plusieurs utilisateurs sur un réseau local. De plus, toutes les données de l'infobase (configuration, base de données, informations administratives) se trouvent dans un seul fichier - base de fichiers données développées spécifiquement pour les solutions appliquées 1C Enterprise 8.

Avantages du mode fichier

  • Optimal pour un petit nombre d'utilisateurs (jusqu'à 5)
  • Facile à installer et à utiliser le système
  • Pour travailler avec l'infobase, aucun logiciel supplémentaire n'est requis, à l'exception du système d'exploitation et de 1C Enterprise 8
  • Réduction du risque de violation de l'intégrité des données en cas de panne de l'ordinateur et du réseau local.
  • Création simple sauvegardes en copiant simplement le fichier de l'infobase.

Le travail dans la version du fichier est possible à la fois directement, directement avec le fichier de base de données, et via un serveur Web si les connexions client sont utilisées via le protocole HTTP ou HTTPS.

Version client-serveur du fonctionnement 1C destiné à être utilisé dans les services, les groupes de travail ou à l'échelle de l'entreprise. Il est implémenté sur la base d'une architecture client-serveur à trois niveaux :

Application cliente - Cluster de serveurs 1C Enterprise - Serveur de base de données

Dans la version client-serveur, l'infobase est stockée dans l'un des SGBD pris en charge : Microsoft SQL Server, PostgreSQL, IBM DB2, Oracle Database. Il est accessible par l'application cliente selon les besoins via le cluster de serveurs 1C Enterprise.

Dans le système 1C Enterprise 8, il existe trois applications clientes ou client(programme exécuté par l'utilisateur) avec différentes capacités : client lourd, client léger, client Web.

Gros client vous permet de mettre en œuvre toutes les capacités de 1C Enterprise 8 en termes de développement, d'administration et d'exécution de code d'application. Cependant, il ne prend pas en charge le travail avec les infobases via Internet, il nécessite pré-installation sur l'ordinateur de l'utilisateur et dispose d'un kit de distribution assez impressionnant.

2022 wisemotors.ru. Comment ça fonctionne. Fer. Exploitation minière. Crypto-monnaie.