fr:wiki:tech:mode_cs

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
fr:wiki:tech:mode_cs [2025/06/24 21:05] – créée - modification externe 127.0.0.1fr:wiki:tech:mode_cs [2025/11/13 00:46] (Version actuelle) – supprimée eneuville
Ligne 1: Ligne 1:
-====== Gestan CS - Le mode Client/Serveur * ====== 
-FIXME Relecture A1 non encore effective pour cette page. En attendant, vous pouvez poser toute question sur le [[https://forum.gestan.fr|forum]]. 
- 
-Gestan fonctionne en mode "Classique" ou en mode "Client/Serveur" (C/S), selon son mode d'accès au données, comme nous allons le voir ci-après. 
- 
-Le mode C/S présente les avantages suivants : 
-  * amélioration des temps de réponse quand il y a un grand nombre d'utilisateurs simultanés sur la base et/ou volumétrie importante; 
-  * protection des données : les fichiers de données ne sont plus visibles directement par les utilisateurs. 
-  * administration des bases facilitée : via les utilitaires du serveur HFSQL. 
-  
-L'installation d'un serveur HFSQL est détaillée dans le tutorial ci-dessous. Si nécessaire, cette installation peut être effectuée pour vous par le service technique Gestan. 
- 
-:LIKE: Le mode C/S est disponible depuis la version 13.0R de Gestan Entreprise, et n'induit aucun coût supplémentaire, 
- 
- 
-===== Principe de fonctionnement ===== 
- 
-{{ :fr:wiki:tech:client_serveur.png?nolink|}}En mode Classique, le programme (Gestan.exe) adresse directement la base de données (les fichiers xxxxx.FIC, .NDX et .MMO). La gestion des accès aux données est assurée exclusivement par le système d'exploitation (lectures, mises à jour, accès concurrents, caches, ...), en l'occurrence Windows, et utilise le système de partage de données de Windows.  
- 
-En mode Client/Serveur, le programme Gestan.exe adresse un **serveur logiciel de données** (le serveur HFSQL), et c’est ce serveur qui interroge la base et renvoie les données demandées. Le partage de fichier Windows n'est plus utilisé : seul le serveur HFSQL se charge, sur le serveur, de l'accès aux données.  
- 
-Techniquement, cela a deux avantages : 
- 
-  * Le premier est de s’extraire de la gestion des accès réseau par Windows, les accès étant gérés par le serveur de données HFSQL. Vous n’avez plus à vous préoccuper de la mise à jour des couches réseau de vos machines sous Windows : la cohérence des machines du parc est en effet une condition importante de bon fonctionnement d’un réseau sous Windows. Si tous les postes ne sont pas à jour, le partage réseau de Windows peut avoir des défaillances et provoquer des problèmes de déphasage des index avec les données (dans ce cas, il suffit de réindexer les données).  
- 
-  * Le second est d’accéder aux données via le protocole TCP/IP, et donc par l’intermédiaire de tout type de connexion, câble réseau, USB, WiFi ou Internet. Dans ce dernier cas, il permet par exemple d’avoir l’exécutable de Gestan (le programme gestan.exe) sur sa machine ou sa clé USB, et les données sur un serveur distant, pourvu qu’il soit accessible par Internet. Il permet aussi de communiquer avec des applications mobiles. 
- 
- 
-===== Installer Gestan en Client/Serveur ===== 
- 
- 
-==== Etape 1 : installer le serveur HFSQL ==== 
- 
-Tout d'abord, installez un Gestan en mode Classique. 
- 
-Puis installez le serveur HFSQL. Il est disponible gratuitement sur le [[https://www.pcsoft.fr/st/telec|site de PCSoft]], pour Windows ou pour Linux (Vous y trouverez même un cluster avec équilibrage de charge, pour les cas d'utilisation avec de très nombreux utilisateurs). 
- 
-Le programme s'installe par défaut dans C:\Program Files\PC SOFT\Serveur HFSQL. 
- 
-Vous pouvez installer le serveur HFSQL sur : 
-  * votre serveur d'entreprise si vous en disposez (solution recommandée) 
-  * toute machine standard de votre réseau d'entreprise (si vous l'éteignez, personne ne pourra plus se connecter à Gestan). 
-  * une machine ancienne installée sous Linux peut être une solution intéressante : coût très faible et bonne efficacité 
-  * un serveur hébergé (vu chez un client : un Gestan C/S fonctionnant sur un serveur d'entrée de gamme d'OVH, coût 5€/mois - Attention cependant à la qualité de la liaison) 
-  * un NAS (attention aux performances de la machine : risque de mauvais temps de réponse, en fonction des performances du NAS) 
- 
-Il n'est pas obligatoire que la  machine  hébergeant  la  partie  « serveur »  de  l'application  fonctionne  sous  un  système  d'exploitation  serveur  (Windows  Server,  Windows  Entreprise Server, Linux Server etc). Un simple PC sous Windows 7, 10, ou 11 ou Linux Desktop suffit. Cependant, les versions serveur des OS sont toujours supérieures et auront un  impact  sur  les  performances globales du logiciel.  
- 
- 
-Vous pourrez trouver de nombreuses videos sur le net, par exemple :  
- 
-{{youtube>GYYHjfJvbw0?widthxheight=560x315|Présentation du serveur HFSQL (version 21, mais les principes sont valables)}} 
- 
-\\ \\  
-{{youtube>baS0uxGIF0c?widthxheight=560x315}} 
- 
- 
-==== Etape 2 : paramétrer le serveur HFSQL ==== 
- 
-=== Les utilisateurs === 
- 
-Au moment de l'installation, vous pourrez déclarer des codes et des mots de passe pour les utilisateurs autorisés à se connecter et/ou administrer le serveur. 
- 
-=== L'emplacement des données === 
- 
-{{:fr:wiki:tech:gestancs_01.png?nolink|}} 
- 
-{{:fr:wiki:tech:gestancs_02.png?nolink|}} 
- 
-Le champ **Répertoire des bases de données** de l'onglet **Configuration** précise l'endroit où sont stockées les bases de données. 
- 
-Par défaut, le répertoire est <nowiki>%%</nowiki>COMMONAPPDATA<nowiki>%%</nowiki>\PC SOFT\Serveur HFSQL [nom du serveur]\BDD, c'est à dire, par exemple C:\ProgramData\PC SOFT\Serveur HFSQL srv1\BDD pour une machine dont le nom windows serait srv1. 
- 
-Il est préférable de désigner un répertoire plus facile d'accès, par exemple C:\BDD-HFSQL, de manière notamment à rendre plus pratiques les sauvegardes. 
- 
-:TIP: Pour arrêter les services HFSQL : Panneau de Configuration -> Outils d'administration -> Services, et arrêter les services Hyper File Server et MantaManager. 
- 
- 
-==== Etape 3 : Importation d'une base de données ==== 
- 
-Il faut maintenant importer votre base "Classique" dans le serveur HFSQL, via le bouton ci-dessous. 
- 
-{{:fr:wiki:tech:serveur_hfsql_01.jpg?nolink|}} 
- 
-{{:fr:wiki:tech:gestancs_04.png?nolink|}} 
- 
-{{:fr:wiki:tech:gestancs_05.png?nolink|}} 
- 
-Le centre de contrôle vous demandera de préciser : 
-  * l'emplacement physique de la base à importer. Indiquez lui le répertoire qui contient les fichiers à importer (fichiers ACTION.FIC, ACTION.NDX, ACTION.MMO et suivants) 
-  * le nom de la base tel qu'il sera connu du serveur HFSQL.  
-  * l'emplacement de l'analyse : indiquez lui le répertoire où se trouve le fichier Gestan.wdd. Vous le trouverez dans C:\Program Files (x86)\GESTAN si vous aviez installé Gestan normalement. 
- 
- 
-// :TIP: Depuis le 01/01/2018, la loi française impose aux éditeurs de logiciels un [[https://manuel.gestan.fr/doku.php?id=fr:wiki:compta:nf525|verrouillage des données]], aussi l'ensemble des fichiers de Gestan est crypté et protégé par mot de passe. Vous n'avez toutefois pas besoin de ces mots de passe pour l'importation : pour rendre optionnel le mot de passe, ne renseignez pas l'emplacement de l'analyse.// 
- 
-==== Etape 3bis - Nettoyage des liaisons ==== 
-{{ :fr:wiki:tags:nouveau_dans_gestan.png?nolink|}} 
- 
-A partir des versions 15.41.00/U03, Gestan comprend un menu spécifique aux installations client/serveur : //Outils -> Administration -> Outils spéciaux -> Nettoyage liaisons//. Cette procédure va nettoyer les liaisons erronées éventuelles de la base de données, qui sont crées de manière aléatoire au moment de l'importation. Il s'agit là d'un très ancien bug du serveur HFSQL, signalé aux services de PCSoft il y a environ une dizaine d'années, mais que leurs services n'ont jamais pris le temps de corriger. 
- 
-Plus de détails : [[http://manuel.gestan.fr/doku.php?id=fr:wiki:admin:nettliaisoncs|nettoyage des liaisons]]. 
- 
- 
-**Vifs remerciements à Yves B., consultant informatique, pour la détection du problème.**  
- 
- 
-==== Etape 4 : Vérifier le pare-feu ==== 
- 
-La connexion HFSQL utilise normalement le port 4900, mais rien ne vous interdit d'utiliser un autre port. Normalement le programme d'installation du serveur HFSQL l'ouvre automatiquement, mais si vous aviez à le vérifier, voici les éléments. 
- 
-Le port de communication (normalement 4900) soit être ouvert en TCP, comme paramétré ci-dessous (vous pouvez restreindre l'exception à votre réseau interne) 
- 
-{{:fr:wiki:tech:gestancs_07.png?nolink|Réglage pare-feu sous Windows 2012}} 
- 
-- Sous Windows 2012 
- 
-{{:fr:wiki:tech:pare_feu_windows.png?nolink|Réglage pare-feu sous Windows 2008 R2}} 
- 
-- Sous Windows Server 2008 R2 
- 
-Pour vérifier que votre port 4900 est ouvert, vous pouvez utiliser telnet (telnet [IP] 4900). 
- 
-==== Etape 5 : Vérifier la box ==== 
- 
-Si vous avez une box internet et un réseau local, il faut probablement ajouter une règle de redirection de ports. 
- 
-Ci-dessous le réglage d'une livebox d'Orange pour un serveur HFSQL qui serait installé sur la machine 192.168.1.100 
- 
-{{:fr:wiki:tech:nat_orange.png?nolink|}} 
- 
-:INFO: Ce paramétrage fonctionne avec une LibeBox V3, il est différent pour la V4. 
- 
- 
-  * [[https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/198972-serveur-hfcs-inaccessible-suite-chgt-livebox-198991/read.awp|Serveur HFCS inaccessible suite à Chgt de Livebox]] (forum PCSoft) 
-  * [[http://doc.pcsoft.fr/fr-FR/?1000017310|Base HFSQL Client/Serveur : Recommandations de sécurité]] (PCSoft) 
-  * [[https://doc.pcsoft.fr/fr-FR/?3044334|HFSQL Client/Serveur : Gestion des ports]] (PCSoft) 
-  * [[http://blogs.pcsoft.fr/post.awp?title=que-fautil-faire-pour-acceder-une-base-hyperfilesql-clientserveur-par-internet,7,232|Que faut-il faire pour accéder à une base HFSQL Client/Serveur par Internet ?]] (PCSoft) 
- 
-Si vous souhaitez que les données Gestan de votre propre serveur puissent être accessibles depuis l'extérieur via Internet (le protocole HTTP), il faut ouvrir votre port 4900 en TCP. Depuis les machines client, il faudra indiquer l'adresse IP de votre serveur.  
- 
-Il faudra ouvrir un port dans le firewall protégeant le serveur. 
- 
-On pourra au choix : 
- 
-  * Placer le serveur dans la DMZ, l'ensemble des ports du serveur sera alors visible depuis Internet. Si le serveur est protégé par son propre Firewall logiciel (ex celui du SP2 de Windows XP, IpTable sous Linux), il faut alors ouvrir le port du serveur HFSQL (qui est par défaut 4900). 
-  * Effectuer un forward de port sur son routeur-firewall. Il faut rajouter une règle dans le routeur qui spécifie que les connexions arrivant sur un port X depuis Internet seront transférées sur la machine hébergeant le serveur HFSQL sur le port 4900 (ou celui précisé dans HFConf.ini) 
- 
-Si le client utilise un firewall, de la même manière, il faut que celui-ci permette aux applications de se connecter via le port utilisé vers l'extérieur 
- 
-==== Etape 6 : Déclaration de la connexion sous Gestan ==== 
- 
-Il faut ensuite indiquer les paramètres de connexion à Gestan. 
- 
-{{:fr:wiki:tech:gestancs_06.png?nolink|}} 
- 
-Pour ce faire, sous Gestan, utilisez le menu outils -> Administration -> Gestion multi-entreprise, puis le bouton **Nouveau**. 
- 
-Décrivez la connexion, tel que détaillé, [[fr:wiki:parametrage:connexions#connexion_en_mode_client_serveur_lan|en mode LAN]] ou [[fr:wiki:parametrage:connexions#connexion_en_mode_client_serveur_wan|en mode WAN]]. 
- 
-Et voilà ! 
- 
-===== Test de débit ===== 
- 
-Les temps de réponse dépendent pour partie de la qualité de votre connexion Internet, dont vous pouvez [[fr:wiki:tech:testinternet|tester le débit]]. 
- 
-===== Migration de Gestan CS vers Gestan classique ===== 
- 
-La migration inverse, c'est à dire passer d'un Gestan C/S à un Gestan Classique, nécessite deux étapes : 
- 
-  * Copiez les fichiers *.fic, *.ndx et *.mmo (c'est à dire tous les fichiers) se trouvant dans le répertoire des données Client/Serveur (voir [[fr:wiki:tech:mode_cs#l'emplacement_des_données|ce lien]]), et collez-les dans un répertoire DATABASE local (par exemple C:\GESTAN\DATABASE).  
-  * Puis, dans Gestan, via le menu "Gestion multi entreprise", déclarez une nouvelle connexion classique, en désignant ce répertoire local comme répertoire de base (ici, C:\GESTAN) 
- 
- 
-===== Sauvegarder une base en C/S ===== 
- 
-**La définition d'une stratégie de sauvegarde robuste est la mission première de tout responsable informatique d'une société.** 
- 
-Sans que cela soit la seule solution, le centre de contrôle dispose d'un outil qui permet d'automatiser les sauvegardes. 
- 
-Pour cela : 
-  * cliquez sur la base à sauvegarder. 
-  * cliquez sur le bouton "Nouvelle sauvegarde" 
-  * déroulez les menus qui s'affichent. Vous pouvez vous dispenser de stocker les index, car ils peuvent être recrées facilement à partir des données. 
-  * sur les options des scénarios de sauvegarde, vous pouvez choisir "sauvegarde mensuelle complète + sauvegarde quotidienne différentielle.  
- 
-:WARNING: Tester le bon fonctionnement des sauvegardes fait partie de la stratégie de sauvegarde ! 
-===== Recommandations concernant le serveur physique ===== 
- 
-//Même si ces informations datent un peu - Merci à [[http://blogs.pcsoft.fr/post.awp?title=comment-dimensionner-configuration-processeur-systeme-ram-necessaire-pour-moteur-hyperfilesql-clientserveur,7,236|Guillaume Bayle - PC Soft]] - elles demeurent intéressantes.// 
- 
-Sur quels points porter son attention pour une configuration correcte en mode Client/Serveur ? (certains points sont aussi valables pour l'optimisation des temps de réponse en mode classique en réseau) 
- 
-=== la RAM === 
- 
-Le plus important est d'avoir une quantité de mémoire suffisante sur le serveur. En effet, lorsque la mémoire vient à manquer le système utilise un fichier d'échange sur disque (swap) qui fait chuter les performances, jusqu'à les dégrader très fortement si le swap est sur le même disque que les données du moteur HyperFileSQL Client/Serveur. 
- 
-De façon générale, **16 Go de RAM** sont un bon point de départ. C'est la mémoire standard sur les configurations serveur actuelles.  
- 
-Pour une évaluation précise de la quantité de RAM nécessaire, elle peut être faite lors de tests "grandeur nature" de l'application, en s'appuyant sur les statistiques d'activité du serveur. Il suffit, dans le centre de contrôle HyperFileSQL, d'aller sur le volet "Logs et statistiques", puis de : 
-- indiquer la période de test, 
-- cliquer sur "Afficher", 
-- utiliser le volet "Paramètres" de la fenêtre "Statistiques d'activité du serveur HyperFileSQL", pour connaître la RAM utilisée, l'utilisation des caches... 
- 
-Vous pouvez ainsi évaluer finement la RAM utilisée par une ou plusieurs connexions, afin d'évaluer la RAM nécessaire suivant le nombre de postes à connecter au serveur lors de la mise en production. 
- 
-Il ne faut pas oublier de prendre en compte la RAM également nécessaire au système (8 Go pour W11, très gourmand), et aux autres applications. 
- 
- 
-=== La vitesse des disques === 
- 
-Des disques rapides (7 400 tours 15 000 si possible) améliorent les temps de réponse, les meilleurs étant les disques SSD. 
- 
-Si possible, séparez le disque des données et le disque du système (surtout son fichier d'échange. Pour déplacer le swap : voir [[http://www.windowsutilities.net/astuces/deplacer-le-fichier-dechange-swap.html|ici]], ou [[http://www.pcastuces.com/pratique/windows/optimiser_fichier_echange/page1.htm|là]].) 
- 
- 
-=== La qualité du processeur === 
- 
-La rapidité du processeur aura une incidence sur la réponse du serveur. Un processeur "Xeon" ou plus sera à privilégier, si les applications exécutent de nombreux traitements sur le serveur (procédures stockées, triggers...) 
- 
-=== La qualité du réseau === 
- 
-Utilisez des routeurs de bonne qualité. En particulier, les fonctions de routage de certaines boxes sont franchement mauvaises. 
- 
-=== Le système d'exploitation === 
- 
-En 32 bits, un processus ne peut pas allouer plus de 2 Go (environ 1,6 Go au maximum dans la pratique). Un processeur en 64 bits permet d'aller au delà de 2Go. N'installez le serveur HFSQL qu'en 64 bits. 
- 
-Le moteur HFSQL est disponible pour Windows et pour Linux, le choix est à effectuer en fonction des habitudes et compétences des équipes en charge de l'administration. 
- 
-Pour Windows toutes les versions peuvent convenir. Une version "serveur" sera cependant à privilégier pour les meilleures performances, et la sécurité du système. 
- 
-Pour Linux les distributions les plus utilisées sont les suivantes : Debian, OpenSuse, Ubuntu, Fedora, et Mandriva. 
- 
- 
-Voir aussi sur le blog de PCSOFT :  
-  * [[https://blogs.pcsoft.fr/fr/augmenter-performances-serveur-hfsql-parametrant-equilibrage-charge/281474976710799/read.awp#content|Augmenter les performances du serveur HFSQL en paramétrant l'équilibrage de charge.]] 
-  * [[https://blogs.pcsoft.fr/fr/category/hfsql-performances/posts.awp|HFSQL et performances]] 
- 
- 
-===== Accéder à des fichiers HFSQL via SAMBA sur Linux ===== 
- 
-Si le serveur HFSQL est installé sous Linux, et si l'accès aux fichiers est géré par SAMBA, un paramétrage spécifique est nécessaire. Dans le fichier smb.conf qui se trouve communément sous /etc/samba, il faut rajouter ou modifier les paramètres suivants dans la section [global] du fichier. 
- 
-<code> 
- 
-[global] 
-locking = yes 
-strict locking = yes 
-share modes = yes 
-oplocks = no 
-kernel oplocks = no 
-blocking locks = no 
-fake oplocks = no 
-level2 oplocks = no 
-</code> 
- 
-Ensuite, il est nécessaire de redémarrer le service Samba pour prendre en compte le nouveau paramétrage. 
- 
------------------ 
-{{:wiki:tags:voir_aussi.gif?nolink |}}**Autres articles "Technique"** 
- 
-<nspages fr:wiki:tech -nbCol=2 -textPages="" -h1 -r -simpleLineBreak > 
  
  • fr/wiki/tech/mode_cs.1750791940.txt.gz
  • Dernière modification : 2025/06/24 21:05
  • de 127.0.0.1