Domini applicazione per applicazioni del server di reportApplication Domains for Report Server Applications

In Reporting ServicesReporting Servicesil server di report viene implementato come un unico servizio che contiene il servizio Web ReportServer, Gestione report e un'applicazione di elaborazione in background.In Reporting ServicesReporting Services, the report server is implemented as a single service that contains the Report Server Web service, Report Manager, and a background processing application. Ogni applicazione viene eseguita nel proprio dominio all'interno del singolo processo del server di report.Each application runs in its own application domain within the single report server process. Nella maggior parte dei casi, i domini applicazione vengono creati, configurati e gestiti internamente.For the most part, application domains are created, configured, and managed internally. Tuttavia la conoscenza del modo in cui vengono eseguite le operazioni di riciclo per i domini applicazione del server di report può risultare utile per ottenere prestazioni elevate, per ricercare problemi di memoria o per risolvere interruzioni del servizio.However, knowing how recycle operations occur for report server application domains can be helpful if you are investigating performance or memory issues or troubleshooting service disruptions.

Nota

Se si configura l'accesso a Generatore report in un server di report che utilizza l'autenticazione di base, Generatore report verrà eseguito nel proprio dominio applicazione.If you configure Report Builder access on a report server that uses Basic authentication, Report Builder will run in its own application domain. Questo dominio applicazione è diverso da altri domini applicazione eseguiti nel processo server.This application domain is different from other application domains that run in the server process. Viene gestito dal Controller servizi e non è soggetto a caratteristiche di gestione della memoria che rimodificano l'allocazione della memoria in risposta a richieste di memoria sul server di report.It is managed by the Service Controller and is not subject memory management features that re-adjust memory allocation in response to memory pressure on the to report server.

Nell'elenco seguente vengono descritti gli eventi che provocano le operazioni di riciclo del dominio applicazione per applicazioni Reporting ServicesReporting Services :The following list describes the events that cause application domain recycle operations for Reporting ServicesReporting Services applications:

  • Operazioni di riciclo pianificate eseguite a intervalli predefiniti.Scheduled recycle operations that occur at predefined intervals.

  • Modifiche alla configurazione sul server di report.Configuration changes on the report server.

  • Modifiche alla configurazione di ASP.NETASP.NET. ASP.NETASP.NET configuration changes.

  • Errori di allocazione di memoria.Memory allocation failures.

    Nella tabella seguente viene riepilogato il comportamento del riciclo del dominio applicazione in risposta a questi eventi:The following table summarizes application domain recycling behavior in response to these events:

EventoEvent Descrizione eventoEvent description Applicabile aApplies to ConfigurabileConfigurable Descrizione dell'operazione di ricicloRecycle operation description
Operazioni di riciclo pianificate eseguite a intervalli predefinitiScheduled recycle operations that occur at predefined intervals Per impostazione predefinita, i domini applicazione vengono riciclati ogni 12 ore.By default, application domains are recycled every 12 hours.

Le operazioni di riciclo pianificate vengono in genere utilizzate per applicazioni ASP.NETASP.NET che agevolano l'integrità complessiva del processo.Scheduled recycle operations are a common practice for ASP.NETASP.NET applications that promote overall process health.
Servizio Web ReportServerReport server Web service

Gestione reportReport Manager

Applicazione di elaborazione in backgroundBackground processing application
Sì.Yes. L'impostazione di configurazioneRecycleTime nel file RSReportServer.config determina l'intervallo di riciclo.RecycleTime configuration setting in the RSReportServer.config file determines the recycle interval.

MaxAppDomainUnloadTime consente di impostare il tempo di attesa durante il quale è possibile completare l'elaborazione in background.MaxAppDomainUnloadTime sets the wait time during which background processing is allowed to complete.
ASP.NETASP.NET . manages the recycle operation for the Web service and Report Manager.

Per l'applicazione di elaborazione in background, il server di report crea un nuovo dominio applicazione per i nuovi processi avviati in base alle pianificazioni.For the background processing application, the report server creates a new application domain for new jobs that are initiated from schedules. I processi già in corso possono essere completati nel dominio applicazione corrente entro la scadenza del tempo di attesa.Jobs already in progress are allowed to complete in the current application domain until the wait time expires.
Modifiche alla configurazione sul server di reportConfiguration changes on the report server In Reporting ServicesReporting Services i domini applicazione verranno riciclati in risposta alle modifiche apportate al file RSReportServer.config. Reporting ServicesReporting Services will recycle application domains in response to changes in the RSReportServer.config file. Servizio Web ReportServerReport server Web service

Gestione reportReport Manager

Applicazione di elaborazione in backgroundBackground processing application
No.No. Non è possibile arrestare le operazioni di riciclo.You cannot stop recycle operations from occurring. Tuttavia, le operazioni di riciclo eseguite in risposta alle modifiche alla configurazione vengono gestite in modo analogo alle operazioni di riciclo pianificate.However, recycle operations that occur in response to configuration changes are handled the same way as the scheduled recycle operations. Per le nuove richieste vengono creati nuovi domini applicazione, mentre le richieste e i processi in corso vengono completati nel dominio applicazione corrente.New application domains are created for new requests while current requests and jobs complete in the current application domain.
Modifiche alla configurazione di ASP.NETASP.NET ASP.NETASP.NET configuration changes ASP.NETASP.NETdomini applicazione verranno riciclati se sono presenti modifiche ai file di cui esegue il monitoraggio (ad esempio, Machine. config e Web. config e ASP.NETASP.NET i file di programma). will recycle application domains if there are changes to the files that it monitors (for example, machine.config and Web.config files, and ASP.NETASP.NET program files). Servizio Web ReportServerReport server Web service

Gestione reportReport Manager
No.No. ASP.NETASP.NETgestisce l'operazione. manages the operation.

Le operazioni di riciclo avviate da ASP.NETASP.NET non influiscono sul dominio applicazione dell'elaborazione in background.Recycle operations that are initiated by ASP.NETASP.NET do not affect the background processing application domain.
Utilizzo della memoria ed errori di allocazione di memoriaMemory pressure and memory allocation failures Nel caso in cui si verifichi un errore di allocazione di memoria oppure in condizioni di utilizzo alto della memoria da parte del server, i domini applicazione verranno immediatamente riciclati da CLR SQL ServerSQL Server. SQL ServerSQL Server CLR will immediately recycle application domains in the event of a memory allocation failure or when the server is under high memory pressure conditions. Servizio Web ReportServerReport server Web service

Gestione reportReport Manager

Applicazione di elaborazione in backgroundBackground processing application
No.No. In condizioni di utilizzo alto della memoria, il server di report non accetterà nuove richieste nel dominio applicazione corrente.Under high memory pressure, the report server will not accept new requests in the current application domain. Durante il periodo in cui il server rifiuta nuove richieste, si verifica l'errore HTTP 503.During the period in which the server denies new requests, HTTP 503 errors occur. Non verrà creato alcun nuovo dominio applicazione fino a quando quello obsoleto non viene scaricato.New application domains will not be created until the old application domain is unloaded. Questo significa che se si apporta una modifica al file di configurazione in condizioni di utilizzo alto della memoria da parte del server, richieste e processi in corso potrebbero non essere avviati o completati.This means that if you make a configuration file change while the server is under high memory pressure, requests and jobs that are in progress might not start or complete.

Nel caso in cui si verifichi un errore di allocazione di memoria, tutti i domini applicazione vengono riavviati immediatamente.In the event of memory allocation failure, all application domains are immediately restarted. I processi e le richieste in corso vengono eliminatiJobs and requests that were in progress are dropped. ed è necessario riavviarli manualmente.You must restart those jobs and requests manually.

Operazioni di riciclo pianificate e non pianificatePlanned and Unplanned Recycle Operations

Le operazioni di riciclo vengono pianificate o meno in base alle condizioni che determinano l'operazione:Recycle operations are either planned or unplanned depending on the conditions that bring about the operation:

  • Le operazioni di riciclo pianificate vengono eseguite a intervalli regolari definiti nel file RSReportServer.config.Planned recycle operations occur at regular intervals that are defined in the RSReportServer.config file. Il valore predefinito è ogni 12 ore.The default is every 12 hours. Le operazioni di riciclo pianificate vengono in genere utilizzate per applicazioni ASP.NETASP.NET che agevolano l'integrità complessiva del processo.This is a common practice for ASP.NETASP.NET applications that promote overall process health. Per le operazioni di riciclo pianificate, nel server di report vengono creati domini applicazione aggiuntivi per le nuove richieste.For planned recycle operations, the report server creates additional application domains for new requests. Le richieste già in corso possono essere completate nel dominio applicazione corrente entro la scadenza del tempo di attesa.Requests already in progress are allowed to complete in the current application domain until the wait time expires. Le impostazioni di configurazione che controllano le operazioni di riciclo pianificate vengono specificate complessivamente per il server.Configuration settings that govern planned recycle operations are set for the server as a whole. Non è possibile configurare una pianificazione per il riciclo o una soglia di memoria diversa per ogni applicazione.You cannot configure a different recycle schedule or memory threshold for each application.

  • Le operazioni di riciclo non pianificate vengono eseguite a ore arbitrarie in risposta a modifiche alla configurazione, utilizzo della memoria ed errori di allocazione di memoria:Unplanned recycle operations occur at arbitrary times in response to configuration changes, memory pressure, and memory allocation failures:

    • Nel caso di modifiche alla configurazione, il server di report tenterà di utilizzare un riciclo leggero che reindirizza le nuove richieste a una nuova istanza del dominio applicazione.For configuration changes, the report server will try to use a soft recycle that redirects new requests to a new instance of the application domain. Se non è possibile eseguire il riciclo leggero in modo corretto, viene avviato un riciclo hardware del dominio applicazione che annulla tutte le richieste in corso, chiude i domini applicazione correnti e successivamente riavvia nuovi domini applicazione.If the soft recycle fails, the server initiates a hard application domain recycle that cancels all in-progress requests, shuts down the current application domains, and restarts the application domains.

    • Gli errori di allocazione di memoria indicano che le risorse di sistema sono insufficienti per la quantità di elaborazione di report eseguita dal server.Memory allocation failures indicate that system resources are insufficient for the amount of report processing performed by the server. Se si verifica un errore di allocazione di memoria, viene eseguita un'operazione di riciclo pesante per tutti i domini applicazione.A hard recycle operation for all application domains occurs in response to a memory allocation failure. Tutte le code di richieste vengono cancellate.All request queues are cleared. Le richieste annullate non vengono riavviate.Canceled requests are not restarted. Se era in corso la visualizzazione interattiva di un report da parte di un utente, è necessario aggiornare o riaprire il report.Users who were interactively viewing a report must refresh or reopen the report. L'elaborazione pianificata verrà eseguita all'ora prevista successiva.Scheduled processing will occur at the next scheduled time. Se il ritardo non è accettabile, è possibile aggiornare manualmente uno snapshot del report o modificare una pianificazione della sottoscrizione o dello snapshot del report in modo che venga eseguito immediatamente.If the delay is unacceptable, you can refresh a report snapshot manually or modify a subscription schedule or report snapshot schedule so that it runs immediately.

    I domini applicazione per il servizio Web ReportServer, Gestione report e l'applicazione di elaborazione in background potrebbero essere riciclati contemporaneamente o individualmente, in base alle circostanze che determinano il verificarsi del riciclo:The application domains for the Report Server Web service, Report Manager, and the background processing application might be recycled together or individually, depending on the circumstances that cause the recycling to occur:

  • Le operazioni di riciclo avviate da ASP.NETASP.NET influiscono solo sulle applicazioni Reporting ServicesReporting Services ASP.NETASP.NET , ovvero servizio Web ReportServer e Gestione report.Recycle operations initiated by ASP.NETASP.NET affect only the Reporting ServicesReporting Services ASP.NETASP.NET applications: Report Server Web service and Report Manager. Se sono presenti modifiche ai file monitorati da ASP.NETASP.NET, i domini applicazione verranno riciclati. ASP.NETASP.NET will recycle application domains based if there are changes to the files that it monitors. Le operazioni di riciclo avviate da ASP.NETASP.NET sono in genere indipendenti da quelle per l'applicazione di elaborazione in background.Recycle operations that are initiated by ASP.NETASP.NET are typically independent of recycle operations for the background processing application.

  • Le operazioni di riciclo avviate dal server di report influiscono in genere sul servizio Web ReportServer, su Gestione report e sull'applicazione di elaborazione in background.Recycle operations initiated by the report server typically affect Report Server Web service, Report Manager, and the background processing application. Le operazioni di riciclo vengono eseguite in risposta alle modifiche alle impostazioni di configurazione e ai riavvii del servizio.Recycle operations occur in response to changes to the configuration settings and service restarts.

Impostazioni di configurazione RSReportServer per i domini applicazioneRSReportServer Configuration Settings for Application Domains

Le impostazioni di configurazione sono specificate nel file RSReportServer.config.Configuration settings are specified in the in the RSReportServer.config file. Nell'esempio seguente vengono illustrate le impostazioni di configurazione predefinite per il riciclo del dominio applicazione pianificato.The following example shows the default configuration settings for planned application domain recycling behavior.

<RecycleTime>720</RecycleTime>

<MaxAppDomainUnloadTime>30</MaxAppDomainUnloadTime>

Nella tabella seguente vengono descritti questi elementi.The following table describes these elements.

ElementoElement Applicabile aApplies to DefinizioneDefinition
RecycleTimeRecycleTime Tutti i tre domini applicazione Reporting ServicesReporting ServicesAll three Reporting ServicesReporting Services application domains Specifica la frequenza di riciclo dei domini applicazione.Specifies how often the application domains are recycled. La pianificazione predefinita per il riciclo è conforme al modello di 12 ore seguito in genere per il riciclo dei domini applicazione di ASP.NETASP.NET .The default recycle schedule conforms to the 12-hour pattern typically followed for ASP.NETASP.NET application domain recycling. All'ora pianificata, tutte le nuove richieste vengono inoltrate a una nuova istanza del dominio applicazione.At the scheduled time, all new requests are forwarded to a new instance of the application domain. Le richieste attualmente in corso nell'istanza originale possono proseguire fino al loro completamento.Requests that are currently in progress in the original instance are allowed to complete. Dopo che tutti i processi sono stati completati, l'istanza originale viene eliminata e la nuova istanza diviene l'unica istanza del dominio applicazione attiva.Once all processes are complete, the original instance is deleted and the new instance becomes the sole active application domain instance.

Il valore predefinito è 720 minuti.The default value is 720 minutes.
MaxAppDomainUnloadTimeMaxAppDomainUnloadTime Solo dominio applicazione dell'elaborazione in backgroundBackground processing application domain only Per impostazione predefinita, in un server di report viene allocato un tempo di attesa di 30 minuti durante il quale un dominio applicazione può essere arrestato nel corso di un'operazione di riciclo.By default, a report server allocates a wait time of 30 minutes, during which an application domain is allowed to shut down during a recycle operation. Se non è possibile completare i processi attualmente in corso entro il tempo stabilito o se l'esecuzione di un processo richiede più tempo rispetto al tempo di attesa, l'istanza del dominio applicazione viene riavviata immediatamente.If the jobs that are currently in process cannot be completed during the allotted time (or if a job is taking longer than the wait time allows), the application domain instance is restarted immediately. Tutti i processi non completati vengono terminati.All incomplete jobs are terminated.

Per altre informazioni su come visualizzare lo stato o annullare i processi in esecuzione nel server di report, vedere Annulla processi server di report (Management Studio).For more information about how to view status or cancel jobs that running on the report server, see Cancel Report Server Jobs (Management Studio).
Nota

Sebbene il servizio Web ReportServer e Gestione report siano applicazioni ASP.NETASP.NET, nessuna applicazione risponde al riciclo del dominio applicazione pianificato che potrebbe essere specificato in machine.config per applicazioni ASP.NETASP.NET ospitate in IIS.Although the Report Server Web service and Report Manager are ASP.NETASP.NET applications, neither application responds to scheduled application domain recycling that might be specified in machine.config for ASP.NETASP.NET applications hosted in IIS.

Vedere ancheSee Also

File di configurazione RsReportServer.config RsReportServer.config Configuration File
Modificare un File di configurazione di Reporting Services ( RSReportServer. config ) Modify a Reporting Services Configuration File (RSreportserver.config)
Configurare la memoria disponibile per le applicazioni Server di ReportConfigure Available Memory for Report Server Applications