Leader français des logiciels de gestion et expert en infrastructure réseaux

 Accueil >  Services >   Support 
Menu des thèmes

Lettres d'information

Actualités

Serveur HFSQL cache disque Windows et mémoire vive saturée
Note créée le 3/1/2018

Avec les versions 20 et supérieures du serveur HFSQL (anciennement serveur HyperFileSQL ou HyperFile Client/Serveur) et certaines configurations de serveurs Windows, il peut arriver de rencontrer un problème avec la mémoire vive : la mémoire disponible diminue, potentiellement jusqu'à saturation et perte sévère de performances, sans qu'elle apparaisse pour autant attribuée à un processus particulier si l'on s'en réfère au gestionnaire des tâches. Cette mémoire n'est pas libérée à moins de redémarrer la machine ou de forcer sa libération avec un utilitaire spécialisé.
Il s'agit d'un problème de cache disque Windows surexploité par la moteur de base de données HFSQL.

Pour y remédier, on pourra prendre les mesures suivantes :

  • Optimiser la taille des index mis en cache par HFSQL : dans l'idéal, on souhaite que puisse être mise en mémoire l'intégralité des index (fichiers avec l'extension .ndx de la base de données) ; bien sûr, il faut rester cohérent par rapport à la mémoire totale disponible, l'éventuelle concurrence d'autres processus sur la machine et les performances recherchées. La configuration se réalise pour chaque instance HFSQL, depuis le Centre de Contrôle HFSQL, dans Configuration du serveur, onglet Caches, en déplaçant le curseur ou en saisissant la valeur souhaitée. Il est également possible de modifier la valeur NdxCacheSize du fichier HFConf.ini. Sauf dans le cas de la configuration initiale, il est nécessaire de redémarrer le service pour que la modification soit prise en compte.

  • Limiter la taille du cache disque monopolisable par HFSQL. La configuration se réalise pour chaque instance HFSQL, depuis le Centre de Contrôle HFSQL, dans Configuration du serveur, onglet Caches, en positionnant l'option Taille du cache disque à Personnalisée puis en saisissant une valeur comprise entre 200 et 1024Mo ; le choix de la valeur se fait ici aussi en fonction de la mémoire vive disponible, de l'éventuelle concurrence d'autres processus sur la machine et des performances recherchées. Sauf dans le cas de la configuration initiale, il est nécessaire de redémarrer le service pour que la modification soit prise en compte.

057681d1268b92fc9423833e9dfa3fc7.png

Si le problème persiste, il est conseillé de :


L'étape 1, accessible depuis le bouton Evaluer, permet de vérifier que le système est impacté par le phénomène décrit ici, en vidant le cache (bouton Flusher le cache) ou en le sollicitant (bouton Lancer le test) ; dans les deux cas, on doit constater l'impact depuis le gestionnaire des tâches Windows, onglet Performances, graphes Mémoire.

9c79edfb63ead7efcb38241692ed0b1f.png

L'étape 2 permet de fixer une valeur limite à l'utilisation de la mémoire vive par le cache disque Windows, soit jusqu'au prochain redémarrage Windows (bouton Appliquer (session en cours)), soit de façon permanente (bouton Appliquer définitivement, grâce à une tâche planifiée qui s'exécutera à chaque démarrage Windows). On saisira une valeur comprise entre 512Mo et 2Go (utiliser de préférence la liste déroulante) ; le choix de la valeur se fait ici aussi en fonction de la mémoire vive disponible, de l'éventuelle concurrence d'autres processus sur la machine et des performances recherchées.

0193df19b1e5a71f3ee1009235fab836.png

L'étape 3 permet de relire la valeur attribuée pour vérification.

  • Décocher l'option Activer le calcul automatique des diverses statistiques sur les clés […] depuis le Centre de Contrôle HFSL, dans Configuration du serveur, onglet Général.

2dba0f590d7044a8c07e48d661ed14f3.png

  • Programmer des redémarrages Windows plus fréquents.

 

\n