Cache de bases

Pour réduire les retards occasionnés lorsque des utilisateurs, serveurs ou programmes API ouvrent et ferment des bases sur un serveur, un cache de bases est disponible sur chaque serveur. Lorsqu'aucun utilisateur ou processus n'utilise la base de données au moment de sa fermeture, Domino® la place dans la mémoire cache pour pouvoir la fermer rapidement. La base reste dans cette mémoire jusqu'à sa prochaine ouverture ou pendant 15 à 20 minutes, si elle n'est pas ouverte dans cet intervalle. Les bases de données enregistrées dans le cache s'ouvrent rapidement.

Cette mémoire est disponible pour le premier processus démarré sur une machine, puis pour tous les processus engendrés par la suite. Si vous exécutez Domino® Administrator et le serveur Domino® sur un même ordinateur (configuration non recommandée), démarrez le serveur avant de lancer Domino® Administrator. Si vous démarrez Domino® Administrator en premier, la mémoire cache lui sera attribuée et le serveur Domino® ne pourra pas l'utiliser.

Par défaut, la mémoire cache peut contenir simultanément un nombre de bases égal à la plus élevée des valeurs ci-dessous :

  • La valeur du paramètre NSF_Buffer_Pool_Size dans le fichier NOTES.INI est divisée par 300K
  • 25

Pour modifier cette limite, ajoutez le paramètre NSF_DbCache_Maxentries au fichier NOTES.INI ou augmentez la mémoire physique. L'augmentation de la taille du cache améliore les performances du système, mais requiert plus de mémoire. Le cache peut contenir simultanément 25 bases minimum et 10 000 bases maximum.

Le nombre de bases permis dans le cache correspond en fait à 1,5 fois le nombre maximum de bases permis. Cette mémoire tampon permet à Domino® de réenregistrer la base dans le cache lorsqu'un utilisateur la ferme après l'avoir ouverte depuis le cache.

Les bases sont retirées du cache par une unité d'exécution qui effectue les opérations d'écriture, de désallocation de mémoire, ainsi que les opérations nécessaires pour fermer les bases. Ce processus a lieu dans un intervalle de 15 à 20 minutes. Dans l'absolu, les bases sont retirés du cache à temps pour permettre d'y ajouter de nouvelles bases sans dépasser le nombre maximum autorisé. Toutefois, si ce nombre est dépassé, voici ce qui se produit :

  • Si le nombre de bases dans le cache est inférieur au nombre maximum autorisé multiplié par 1,5, une base est ajoutée au cache lorsqu'elle est fermée et l'unité d'exécution réduit le nombre de bases dans le cache jusqu'à atteindre le nombre maximum autorisé. Cette opération affecte le fonctionnement du sous-système d'E/S du serveur et augmente les conflits entre les ressources du cache.
  • Si le nombre de bases dans le cache est supérieur ou égal au nombre maximum autorisé multiplié par 1,5, Domino® ne place pas une nouvelle base dans le cache lorsqu'elle est fermée. La méthode plus lente de fermeture de la base de données est utilisée. Ensuite, lorsqu'un utilisateur ou un processus ouvre la base de données, Domino® lit la base à partir du disque et non du cache, ce qui ralentit son ouverture.