Configurer la mémoire disponible pour les applications du serveur de rapportsConfigure Available Memory for Report Server Applications

Bien que Reporting ServicesReporting Services puisse utiliser toute la mémoire disponible, vous pouvez substituer le comportement par défaut en configurant une limite supérieure pour la quantité totale des ressources de mémoire allouées aux applications serveur Reporting ServicesReporting Services .Although Reporting ServicesReporting Services can use all available memory, you can override default behavior by configuring an upper limit on the total amount of memory resources that are allocated to Reporting ServicesReporting Services server applications. Vous pouvez également définir des seuils qui obligent le serveur de rapports à modifier son mode de traitement des requêtes et leur classement par ordre de priorité, selon que la sollicitation de la mémoire est faible, moyenne ou élevée.You can also set thresholds that cause the report server to change how it prioritizes and processes requests depending on whether it is under low, medium, or heavy memory pressure. Face à de faibles niveaux de sollicitation de la mémoire, le serveur de rapports répond en donnant une priorité légèrement supérieure au traitement de rapport interactif ou à la demande.At low levels of memory pressure, the report server responds by giving a slightly higher priority to interactive or on-demand report processing. Face à des niveaux élevés de sollicitation de la mémoire, le serveur de rapports utilise plusieurs techniques pour rester opérationnel en utilisant les ressources limitées dont il dispose.At high levels of memory pressure, the report server uses multiple techniques to remain operational using the limited resources available to it.

Cette rubrique décrit les paramètres de configuration que vous pouvez spécifier, ainsi que la façon dont le serveur répond quand la sollicitation de la mémoire devient un facteur de traitement des requêtes.This topic describes the configuration settings that you can specify and how the server responds when memory pressure becomes a factor in processing requests.

Stratégies de gestion de la mémoireMemory Management Policies

Reporting ServicesReporting Services répond aux limitations des ressources système en ajustant la quantité de mémoire allouée en fonction des applications et des types de requêtes de traitement. responds to system resource constraints by adjusting the amount of memory that is allocated to specific applications and types of processing requests. Les applications qui s'exécutent dans le service Report Server et qui sont soumises à la gestion de la mémoire sont les suivantes :Applications that run in the Report Server service and that are subject to memory management include:

  • Gestionnaire de rapports, une application Web frontale pour le serveur de rapports ;Report Manager, a Web front-end application for the report server.

  • service Web Report Server, pour les requêtes de traitement de rapport interactif et à la demande ;Report Server Web service, used for interactive report processing and on-demand requests.

  • application de traitement en arrière-plan, pour le traitement de rapport planifié, la remise d'abonnement et la maintenance de base de données.A background processing application, used for scheduled report processing, subscription delivery, and database maintenance.

    Les stratégies de gestion de la mémoire s'appliquent à l'ensemble du service Report Server, et non aux applications individuelles qui s'exécutent au sein du processus.Memory management policies apply to the Report Server service as a whole, and not to individual applications that run within the process.

    S'il n'y a aucune sollicitation de la mémoire sur le système, chaque application serveur demande de la mémoire au démarrage, avant de recevoir des requêtes, afin d'offrir des performances optimales lorsque les requêtes sont finalement reçues.If there is no memory pressure on the system, each server application requests some memory at startup, in advance of receiving requests, to deliver optimum performance when requests are eventually received. Face à l'accroissement de la sollicitation de la mémoire, le serveur de rapports ajuste son modèle de processus, comme indiqué dans le tableau suivant.As memory pressure builds, the report server adjusts its process model as described in the following table.

Sollicitation de la mémoireMemory pressure Réponse du serveurServer response
FaibleLow Les requêtes actives continuent d'être traitées.Current requests continue to process. Les nouvelles requêtes sont presque toujours acceptées.New requests are almost always accepted. Les requêtes adressées à l'application de traitement en arrière-plan reçoivent une priorité plus faible que les requêtes adressées au service Web Report Server.Requests that are directed to the background processing application are given a lower priority than requests directed to the Report Server Web service.
MoyenneMedium Les requêtes actives continuent d'être traitées.Current requests continue to process. Les nouvelles requêtes peuvent éventuellement être acceptées.New requests might be accepted. Les requêtes adressées à l'application de traitement en arrière-plan reçoivent une priorité plus faible que les requêtes adressées au service Web Report Server.Requests that are directed to the background processing application are given a lower priority than requests directed to the Report Server Web service. Les allocations de mémoire pour les trois applications serveur sont réduites ; la réduction est relativement plus importante pour le traitement en arrière-plan, ce qui permet d'offrir davantage de mémoire aux requêtes du service Web.Memory allocations for all three server applications are reduced, with relatively larger reductions to background processing to make more memory available for Web service requests.
ÉlevéeHigh L'allocation de mémoire est davantage réduite.Memory allocation is further reduced. Les applications serveur qui requièrent plus de mémoire sont refusées.Server applications that request more memory are denied. Les requêtes actuelles sont ralenties et mettent plus de temps à s'exécuter.Current requests are slowed down and take longer to complete. Les nouvelles requêtes ne sont pas acceptées.New requests are not accepted. Le serveur de rapports place les fichiers de données en mémoire sur disque.The report server swaps in-memory data files to disk.

Si les contraintes de mémoire deviennent très importantes et s'il n'y a pas de mémoire disponible pour gérer les nouvelles requêtes, le serveur de rapports retourne l'erreur HTTP 503 relative à l'indisponibilité du serveur pendant que les requêtes actives finissent de s'exécuter.If memory constraints become severe and there is no memory available to handle new requests, the report server will return an HTTP 503 server unavailable error while current requests are completing. Dans certains cas, les domaines d'application peuvent être recyclés pour réduire immédiatement la sollicitation de la mémoire.In some cases, the application domains might be recycled to immediately reduce memory pressure.

Bien que vous ne puissiez pas personnaliser les réponses du serveur de rapports aux différents scénarios de sollicitation de la mémoire, vous pouvez spécifier des paramètres de configuration qui définissent les limites séparant les réponses aux sollicitations élevée, moyenne et faible de la mémoire.Although you cannot customize the report server responses to different memory pressure scenarios, you can specify configuration settings that define the boundaries that separate high, medium, and low memory pressure responses.

Quand personnaliser les paramètres de gestion de la mémoireWhen to Customize Memory Management Settings

Les paramètres par défaut spécifient des plages inégales pour une sollicitation faible, moyenne et élevée de la mémoire.The default settings specify unequal ranges for low, medium, and high memory pressure. Par défaut, la zone correspondant à une faible sollicitation de la mémoire est plus importante que les zones correspondant aux sollicitations moyenne et élevée de la mémoire.By default, the low memory pressure zone is larger than the zones for medium and high memory pressure. Cette configuration est optimale pour les charges de traitement qui sont distribuées de manière égale, ou qui s'accroissent ou se réduisent de façon incrémentielle.This configuration is optimum for processing loads that are evenly distributed or that grow or decline incrementally. Dans ce scénario, la transition entre les zones est graduelle ; par ailleurs, le serveur de rapports a le temps d'ajuster sa réponse.In this scenario, the transition between zones is gradual and the report server has time to adjust its response.

La modification des paramètres par défaut est utile si le modèle de charge inclut des pics.Modifying the default settings is useful if the load pattern includes spikes. Lorsqu'il y a des pics soudains dans la charge de traitement, le serveur de rapports peut passer très rapidement de l'absence de sollicitation de la mémoire aux échecs d'allocation de mémoire.When there are sudden spikes in the processing load, the report server might go from no memory pressure to memory allocation failures very quickly. Cela peut se produire si plusieurs instances simultanées d'un rapport utilisant beaucoup de mémoire démarrent en même temps.This might occur if you have multiple concurrent instances of a memory-intensive report that start at the same time. Pour gérer ce type de charge de traitement, le serveur de rapports doit pouvoir répondre le plus rapidement possible à une sollicitation moyenne ou élevée de la mémoire, afin d'entraîner un ralentissement du traitement.To handle this type of processing load, you want the report server to move into a medium or high memory pressure response as soon as possible so that it can slow down processing. Cela permet l'exécution d'un plus grand nombre de requêtes.This allows more requests to complete. Pour ce faire, vous devez baisser la valeur de MemorySafetyMargin afin que la zone de réponse à une faible sollicitation de la mémoire soit plus petite que les autres zones.To do this, you should lower the value for MemorySafetyMargin to make the low memory pressure zone smaller relative to the other zones. Ainsi, les réponses aux sollicitations moyenne et élevée de la mémoire se produiront plus tôt.Doing so will cause responses for medium and high memory pressure to occur earlier.

Paramètres de configuration pour la gestion de la mémoireConfiguration Settings for Memory Management

Les paramètres de configuration qui contrôlent l’allocation de mémoire pour le serveur de rapports sont WorkingSetMaximum, WorkingSetMinimum, MemorySafetyMarginet MemoryThreshold.Configuration settings that control memory allocation for the report server include WorkingSetMaximum, WorkingSetMinimum, MemorySafetyMargin, and MemoryThreshold.

  • WorkingSetMaximum et WorkingSetMinimum définissent la plage de mémoire disponible.WorkingSetMaximum and WorkingSetMinimum define the range of available memory. Vous pouvez configurer ces paramètres pour définir une plage de mémoire disponible pour les applications du serveur de rapports.You can configure these settings to set a range of available memory for the report server applications. Cela peut être utile si vous hébergez plusieurs applications sur le même ordinateur et si vous réalisez que le serveur de rapports utilise une quantité disproportionnée de ressources système par rapport aux autres applications du même ordinateur.This can be useful if you are hosting multiple applications on the same computer and you determine that the report server is using a disproportionate amount of system resources relative to other applications on the same computer.

  • MemorySafetyMargin et MemoryThreshold définissent les limites des niveaux faible, moyen et élevé de sollicitation de la mémoire.MemorySafetyMargin and MemoryThreshold set the boundaries for low, medium, and high levels of memory pressure. Pour chaque état, Reporting ServicesReporting Services entreprend une action corrective visant à garantir une gestion appropriée du traitement des rapports et des autres requêtes en fonction de la quantité de mémoire disponible sur l’ordinateur.For each state, Reporting ServicesReporting Services takes corrective action to ensure report processing and other requests are handled appropriately relative to the amount of memory that is available on the computer. Vous pouvez spécifier les paramètres de configuration qui déterminent la limite entre les niveaux faible, moyen et élevé de sollicitation de la mémoire.You can specify configuration settings that determine the delineation between low, high, and medium pressure levels.

    Bien que vous puissiez modifier les paramètres de configuration, cela n'améliorera pas les performances de traitement des rapports.Although you can change the configuration settings, doing so will not improve report processing performance. La modification des paramètres de configuration n'est utile que si les requêtes sont supprimées avant la fin de leur exécution.Changing the configuration settings is useful only if requests are getting dropped before they complete. La meilleure méthode pour améliorer les performances du serveur est de déployer le serveur de rapports ou des applications individuelles du serveur de rapports sur des ordinateurs dédiés.The best way to improve server performance is to deploy the report server or individual report server applications on dedicated computers.

    L'illustration suivante montre comment les paramètres sont utilisés conjointement pour distinguer les niveaux faible, moyen et élevé de sollicitation de la mémoire :The following illustration shows how the settings are used together to distinguish between low, medium, and high levels of memory pressure:

    Paramètres de configuration de l’état de la mémoireConfiguration settings for memory state

    Le tableau suivant décrit les paramètres WorkingSetMaximum, WorkingSetMinimum, MemorySafetyMarginet MemoryThreshold .The following table describes WorkingSetMaximum, WorkingSetMinimum, MemorySafetyMargin, and MemoryThreshold settings. Les paramètres de configuration sont spécifiés dans le fichier RSReportServer.config.Configuration settings are specified in the RSReportServer.config file.

ÉlémentElement DescriptionDescription
WorkingSetMaximumWorkingSetMaximum Spécifie un seuil de mémoire au-delà duquel aucune nouvelle requête d'allocation de mémoire n'est accordée aux applications du serveur de rapports.Specifies a memory threshold after which no new memory allocations requests are granted to report server applications.

Par défaut, le serveur de rapports affecte à WorkingSetMaximum la quantité de mémoire disponible sur l’ordinateur.By default, the report server sets WorkingSetMaximum to the amount of available memory on the computer. Cette valeur est détectée lorsque le service démarre.This value is detected when the service starts.

Ce paramètre n'apparaît pas dans le fichier RSReportServer.config à moins que vous ne l'ajoutiez manuellement.This setting does not appear in the RSReportServer.config file unless you add it manually. Si vous souhaitez que le serveur de rapports utilise moins de mémoire, vous pouvez modifier le fichier RSReportServer.config en ajoutant l'élément et la valeur.If you want the report server to use less memory, you can modify the RSReportServer.config file and add the element and value. La plage de valeurs valides s'étend de 0 à un entier maximal.Valid values range from 0 to maximum integer. Cette valeur est exprimée en kilo-octets.This value is expressed in kilobytes.

Quand la valeur de WorkingSetMaximum est atteinte, le serveur de rapports n’accepte plus de nouvelle requête.When the value for WorkingSetMaximum is reached, the report server does not accept new requests. La fin de l'exécution des requêtes en cours de traitement est autorisée.Requests that are currently in progress are allowed to complete. Les nouvelles requêtes sont acceptées uniquement si l’utilisation de la mémoire affiche une valeur inférieure à celle spécifiée pour l’option WorkingSetMaximum.New requests are accepted only when memory use falls below the value specified through WorkingSetMaximum.

Si les requêtes existantes continuent de consommer de la mémoire supplémentaire une fois la valeur de WorkingSetMaximum atteinte, tous les domaines d’application du serveur de rapports sont recyclés.If existing requests continue to consume additional memory after the WorkingSetMaximum value has been reached, all report server application domains will be recycled. Pour plus d'informations, consultez Application Domains for Report Server Applications.For more information, see Application Domains for Report Server Applications.
WorkingSetMinimumWorkingSetMinimum Spécifie une limite inférieure pour l'utilisation des ressources ; le serveur de rapports ne libère pas de mémoire si la quantité totale de mémoire utilisée est inférieure à cette limite.Specifies a lower limit for resource consumption; the report server will not release memory if overall memory use is below this limit.

Par défaut, la valeur est calculée au démarrage du service.By default, the value is calculated at service startup. La requête d’allocation de mémoire initiale doit représenter 60 pour cent de WorkingSetMaximum.The calculation is that the initial memory allocation request is for 60 percent of WorkingSetMaximum.

Ce paramètre n'apparaît pas dans le fichier RSReportServer.config à moins que vous ne l'ajoutiez manuellement.This setting does not appear in the RSReportServer.config file unless you add it manually. Si vous souhaitez personnaliser cette valeur, vous devez ajouter l’élément WorkingSetMinimum au fichier RSReportServer.config.If you want to customize this value, you must add the WorkingSetMinimum element to the RSReportServer.config file. La plage de valeurs valides s'étend de 0 à un entier maximal.Valid values range from 0 to maximum integer. Cette valeur est exprimée en kilo-octets.This value is expressed in kilobytes..
MemoryThresholdMemoryThreshold Spécifie un pourcentage de WorkingSetMaximum qui définit la limite entre les scénarios correspondant à une sollicitation élevée et moyenne.Specifies a percentage of WorkingSetMaximum that defines the boundary between high and medium pressure scenarios. Si l'utilisation de la mémoire du serveur de rapports atteint cette valeur, ce dernier ralentit le traitement des requêtes et modifie la quantité de mémoire allouée aux différentes applications serveur.If report server memory use reaches this value, the report server slows down request processing and changes the amount of memory allocated to different server applications. La valeur par défaut est 90.The default value is 90. Elle doit être supérieure à la valeur définie pour MemorySafetyMargin.This value should be greater than the value set for MemorySafetyMargin.
MemorySafetyMarginMemorySafetyMargin Spécifie un pourcentage de WorkingSetMaximum qui définit la limite entre les scénarios correspondant à une sollicitation moyenne et basse.Specifies a percentage of WorkingSetMaximum that defines the boundary between medium and low pressure scenarios. Cette valeur est le pourcentage de mémoire disponible réservée au système et ne peut pas être utilisée pour les opérations du serveur de rapports.This value is the percentage of available memory that is reserved for the system and cannot be used for report server operations. La valeur par défaut est 80.The default value is 80.

Note

Les paramètresMemoryLimit et MaximumMemoryLimit sont obsolètes dans SQL Server 2008SQL Server 2008 et les versions ultérieures.MemoryLimit and MaximumMemoryLimit settings are obsolete in SQL Server 2008SQL Server 2008 and later versions. Si vous avez mis à niveau une installation existante ou si vous utilisez un fichier RSReportServer.config qui comprend ces paramètres, le serveur de rapports ne lit plus ces valeurs.If you upgraded an existing installation or using an RSReportServer.config file that includes those settings, the report server no longer reads those values.

Exemple de paramètres de configuration de la mémoireExample of Memory Configuration Settings

L'exemple suivant illustre les paramètres de configuration d'un serveur de rapports qui utilise des valeurs de configuration de la mémoire personnalisées.The following example shows the configuration settings for a report server computer that uses custom memory configuration values. Pour ajouter WorkingSetMaximum ou WorkingSetMinimum, vous devez taper les éléments et les valeurs dans le fichier RSReportServer.config.If you want to add WorkingSetMaximum or WorkingSetMinimum, you must type the elements and values in the RSReportServer.config file. Les deux valeurs sont des entiers qui représentent les kilo-octets de mémoire vive (RAM) que vous allouez aux applications serveur.Both values are integers that express kilobytes of RAM you are allocating to the server applications. L'exemple suivant spécifie que l'allocation de mémoire totale pour les applications du serveur de rapports ne peut pas dépasser 4 gigaoctets.The following example specifies that total memory allocation for the report server applications cannot exceed 4 gigabytes. Si la valeur par défaut WorkingSetMinimum (60 % de WorkingSetMaximum) est acceptable, vous pouvez l’omettre et spécifier simplement WorkingSetMaximum dans le fichier RSReportServer.config.If the default value for WorkingSetMinimum (60% of WorkingSetMaximum) is acceptable, you can omit it and specify just WorkingSetMaximum in the RSReportServer.config file. Cet exemple inclut WorkingSetMinimum afin que vous puissiez voir à quoi il ressemble, si vous décidez de l’ajouter :This example includes WorkingSetMinimum to show how it would appear if you wanted to add it:

      <MemorySafetyMargin>80</MemorySafetyMargin>  
      <MemoryThreshold>90</MemoryThreshold>  
      <WorkingSetMaximum>4000000</WorkingSetMaximum>  
      <WorkingSetMinimum>2400000</WorkingSetMinimum>  

À propos des paramètres de configuration de la mémoire ASP.NETAbout ASP.NET Memory Configuration Settings

Bien que le service web Report Server et le Gestionnaire de rapports soient des applications ASP.NETASP.NET , aucune d’entre elles ne répond aux paramètres de configuration de la mémoire spécifiés dans la section processModel de machine.config pour les applications ASP.NETASP.NET qui s’exécutent en mode de compatibilité IIS 5.0.Although the Report Server Web service and Report Manager are ASP.NETASP.NET applications, neither application responds to memory configuration settings that you specify in the processModel section of machine.config for ASP.NETASP.NET applications that run in IIS 5.0 compatibility mode. Reporting ServicesReporting Services lit les paramètres de configuration de la mémoire du fichier RSReportServer.config uniquement. reads memory configuration settings from the RSReportServer.config file only.

Voir aussiSee Also

Fichier de configuration RSReportServer.config RsReportServer.config Configuration File
RsReportServer.config Configuration File RsReportServer.config Configuration File
Modifier un fichier de configuration Reporting Services (RSreportserver.config) Modify a Reporting Services Configuration File (RSreportserver.config)
Domaines d’application pour des applications du serveur de rapportsApplication Domains for Report Server Applications