2010-11-08 10 views
3

Si vous exécutez plusieurs bases de données sur le même serveur SQL, se battent-ils tous pour le cache de procédures? Qu'est-ce que j'essaie de comprendre est de savoir comment SQL Server déterminer combien de temps pour conserver sur le cache de procédure? Si d'autres DB consomment de la mémoire, cela affectera-t-il le cache de procédure pour un DB donné sur ce même serveur?Cache de procédure SQL Server

Je constate que sur certaines charges initiales de la page au sein de notre application, il est lent, mais une fois que les requêtes sont mises en cache, il est évidemment rapide. Ne sais pas exactement combien de temps SQL Server conserve le cache de procédure et si d'autres DB auront un impact sur ce laps de temps.

Répondre

4

La mise en cache/compilation arrive de bout en bout

  • IIS déchargera après 20 minutes de non utilisées par défaut.
  • compilation .net CLR
  • compilation SQL
  • chargement des données dans la mémoire

Voilà pourquoi les premiers appels prennent un certain temps

En général des choses reste dans le cache:

  • en cours d'utilisation
  • aucune pression de mémoire
  • encore valides (par exemple les mises à jour des statistiques mises en cache invalidera plans)

Si vous êtes concerné, ajouter plus de RAM. Notez également que chaque base de données aura des modèles de charge différents et que SQL Server jonglera très bien avec la mémoire. Sauf si vous n'avez pas assez de RAM ...

+0

Merci pour l'info – scarpacci

4

De l'documentation:

plans d'exécution restent dans le cache de procédure tant qu'il ya assez de mémoire pour les stocker. Lorsque la pression de mémoire existe, le moteur de base de données utilise une approche basée sur les coûts pour déterminer les plans d'exécution à supprimer du cache de procédure. Pour prendre une décision basée sur les coûts, le moteur de base de données augmente et diminue une variable de coût en cours pour chaque plan d'exécution en fonction des facteurs suivants.

Ce lien pourrait aussi vous intéresser: Most Executed Stored Procedure?

+0

Merci Ponches OMG .... Je vais jeter un oeil – scarpacci

Questions connexes