Domanda

Così ho letto attraverso un altro post qui di SPWebs creata usando SPSite .OpenWeb () .

Al momento ho solo smaltire l'oggetto SPSite, e dalla mia comprensione whe SPSite dispone qualsiasi SPWeb aperto deve disporre pure. Sembra pratica migliore è di disporre di ogni SPWeb pure. Lo farò.

La mia ragione di questo post è questo: che cosa sarebbe una perdita di memoria come aspetto? Ho un processo timer che passa ogni 2 minuti ed elabora alcune voci di elenco. Anche in questo caso, io sono solo smaltire l'oggetto SPSite, non l'oggetto SPWeb. Dopo farlo funzionare per circa una settimana in dev, il processo è stato di circa 1,7 GB sqlserver.exe di memoria utilizzata. SharePoint ha iniziato ad errore Memoria esaurita. Da allora ho riavviato SQL e si è scesi a 320 MB di memoria. Io non so quanto lo era prima ho installato il processo timer, ma non siamo stati sempre questi errori poi.

sto vedendo una perdita di memoria in sqlserver dovuto a me non chiudere SPWeb? O sarebbe una perdita di memoria di SharePoint verificare nel processo w3wp? Qualsiasi chiarezza è molto apprezzato!

Grazie,

È stato utile?

Soluzione

Una perdita di memoria si manifesterà in tutto ciò che è il processo host per il codice che ha la perdita. Nel caso del codice di SharePoint, questo non sarà il processo di SQL - molto probabilmente quello che stai vedendo qui è semplicemente al fatto che SQL generalmente consuma la quantità di memoria che può (vale a dire tutto ciò che non viene scavenging / usato da altri processi). È possibile piolo, però, se lo si desidera, a volte mi faccio questo (per esempio su dev VM).

Quindi, si potrebbe vedere una perdita a causa di codice di SharePoint in:

  • w3wp.exe per l'esecuzione di codice da una pagina web
  • Owstimer.exe per un processo timer
  • Stsadm.exe per un comando STSADM personalizzato
  • Il processo per un costume exe per esempio nel caso di una console app

.. etc ..

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top