{"id":3002,"date":"2026-10-26T15:00:00","date_gmt":"2026-10-26T12:00:00","guid":{"rendered":"https:\/\/narhost.com\/destek\/?p=3002"},"modified":"2026-10-26T15:00:00","modified_gmt":"2026-10-26T12:00:00","slug":"iis-app-pool-recycling","status":"publish","type":"post","link":"https:\/\/narhost.com\/destek\/iis-app-pool-recycling\/","title":{"rendered":"IIS Uygulama Havuzu Geri D\u00f6n\u00fc\u015f\u00fcm Ayarlar\u0131 Nas\u0131l Yap\u0131l\u0131r"},"content":{"rendered":"<p class=\"kb-dogrulama\">Son do\u011frulama: Ekim 2026 \u00b7 Windows Server 2022 test sunucusunda denendi<\/p>\n<div id=\"hizli-cozum\" class=\"ai-box ai-box--cozum\">\n<p class=\"ai-box-title\">H\u0131zl\u0131 \u00e7\u00f6z\u00fcm<\/p>\n<p><strong>IIS app pool recycling<\/strong> ayar\u0131, uygulama havuzunun \u00e7al\u0131\u015fan i\u015flemini ne zaman yeniden ba\u015flataca\u011f\u0131n\u0131 belirler. Varsay\u0131lan de\u011fer 29 saatte bir oldu\u011fu i\u00e7in yeniden ba\u015flatma her g\u00fcn farkl\u0131 bir saate, \u00e7o\u011fu zaman mesai saatine denk gelir. \u00c7\u00f6z\u00fcm, geri d\u00f6n\u00fc\u015f\u00fcm\u00fc trafi\u011fin en az oldu\u011fu sabit bir saate almakt\u0131r:<\/p>\n<ol>\n<li><strong>IIS Y\u00f6neticisi \u2192 Uygulama Havuzlar\u0131<\/strong> ekran\u0131nda havuzu se\u00e7in, sa\u011fdan <strong>Geri D\u00f6n\u00fc\u015f\u00fcm<\/strong> (Recycling) ayarlar\u0131n\u0131 a\u00e7\u0131n.<\/li>\n<li><strong>D\u00fczenli zaman aral\u0131klar\u0131<\/strong> kutusunu kald\u0131r\u0131n, <strong>Belirli zamanlar<\/strong> kutusuna \u00f6rne\u011fin <code>03:00<\/code> yaz\u0131n.<\/li>\n<li>Gerekirse <strong>Geli\u015fmi\u015f Ayarlar<\/strong>&#8216;da bo\u015fta kalma s\u00fcresini (Idle Time-out) siteye g\u00f6re ayarlay\u0131n.<\/li>\n<li>Ayar\u0131 kaydedip havuzu bir kez yeniden ba\u015flat\u0131n.<\/li>\n<\/ol>\n<\/div>\n<table class=\"kb-uyg\">\n<tr>\n<th>Panel<\/th>\n<td>IIS Y\u00f6neticisi ya da PowerShell<\/td>\n<\/tr>\n<tr>\n<th>Sistem<\/th>\n<td>Windows Server 2019 ve 2022 (IIS 10)<\/td>\n<\/tr>\n<tr>\n<th>Yetki<\/th>\n<td>Y\u00f6netici (Administrator)<\/td>\n<\/tr>\n<tr>\n<th>Narhost \u00fcr\u00fcn\u00fc<\/th>\n<td><a href=\"https:\/\/narhost.com\/vds-sunucu\" title=\"Narhost VDS Sunucu paketleri\">VDS Sunucu<\/a><\/td>\n<\/tr>\n<\/table>\n<div class=\"kb-once\">\n<p class=\"label\">Ba\u015flamadan \u00f6nce<\/p>\n<ul>\n<li>Sitenizin trafi\u011finin en d\u00fc\u015f\u00fck oldu\u011fu saati belirleyin.<\/li>\n<li>Uygulaman\u0131n oturum bilgisini bellekte mi yoksa veritaban\u0131nda m\u0131 tuttu\u011funu \u00f6\u011frenin; bellekteki oturumlar geri d\u00f6n\u00fc\u015f\u00fcmde silinir.<\/li>\n<li>De\u011fi\u015ftirece\u011finiz havuzun ad\u0131n\u0131 not edin; her site kendi havuzunda \u00e7al\u0131\u015f\u0131yor olabilir.<\/li>\n<\/ul>\n<\/div>\n<h2>IIS app pool recycling neden \u00f6nemli<\/h2>\n<p>IIS her uygulama havuzu i\u00e7in bir \u00e7al\u0131\u015fan i\u015flem (<code>w3wp.exe<\/code>) ba\u015flat\u0131r. Geri d\u00f6n\u00fc\u015f\u00fcm, bu i\u015flemin yerine yenisinin ba\u015flat\u0131lmas\u0131d\u0131r; bellek s\u0131z\u0131nt\u0131lar\u0131n\u0131n birikmesini \u00f6nler. <a href=\"https:\/\/learn.microsoft.com\/en-us\/iis\/configuration\/system.applicationhost\/applicationpools\/add\/recycling\/periodicrestart\/\" title=\"Microsoft Learn \u2014 IIS periyodik yeniden ba\u015flatma ayar\u0131\" target=\"_blank\" rel=\"noopener\">Microsoft&#8217;un IIS yap\u0131land\u0131rma belgesine<\/a> g\u00f6re periyodik geri d\u00f6n\u00fc\u015f\u00fcm\u00fcn varsay\u0131lan de\u011feri 29 saattir. Test sunucumuzda da varsay\u0131lan havuzun de\u011feri <code>1.05:00:00<\/code>, yani 1 g\u00fcn 5 saat olarak okundu.<\/p>\n<p>29 saatlik d\u00f6ng\u00fc her g\u00fcn be\u015f saat kayar: bir g\u00fcn gece 03:00&#8217;te olan geri d\u00f6n\u00fc\u015f\u00fcm ertesi g\u00fcn sabah 08:00&#8217;de, bir sonraki g\u00fcn \u00f6\u011flen olur. Geri d\u00f6n\u00fc\u015f\u00fcmden sonraki ilk istek uygulaman\u0131n yeniden y\u00fcklenmesini bekler ve yava\u015f a\u00e7\u0131l\u0131r; bellekte tutulan oturumlar da kaybolur. Kullan\u0131c\u0131lar bunu &#8220;site arada bir yava\u015fl\u0131yor, oturum d\u00fc\u015f\u00fcyor&#8221; diye anlat\u0131r.<\/p>\n<figure class=\"nh-sema\"><img src=\"https:\/\/narhost.com\/destek\/wp-content\/uploads\/2026\/10\/iis-app-pool-recycling-sema-narhost.webp\" alt=\"iis app pool recycling \u015femas\u0131 \u2014 29 saatlik d\u00f6ng\u00fc, sabit saat, bo\u015fta kalma s\u00fcresi ve do\u011frulama\" width=\"1200\" height=\"500\" loading=\"lazy\" decoding=\"async\"><figcaption>29 saatlik d\u00f6ng\u00fc her g\u00fcn be\u015f saat kayar; sabit saat bu kaymay\u0131 bitirir.<\/figcaption><\/figure>\n<h2>Ad\u0131m ad\u0131m sabit saate geri d\u00f6n\u00fc\u015f\u00fcm<\/h2>\n<ol class=\"kb-adimlar\">\n<li><strong>Mevcut ayar\u0131 okuyun.<\/strong> PowerShell&#8217;i y\u00f6netici olarak a\u00e7\u0131n:\n<pre><code class=\"language-powershell\">Import-Module WebAdministration\n(Get-ItemProperty \"IIS:\\AppPools\\DefaultAppPool\" -Name recycling.periodicRestart.time).Value\n(Get-ItemProperty \"IIS:\\AppPools\\DefaultAppPool\" -Name processModel.idleTimeout).Value<\/code><\/pre>\n<p class=\"kb-cikti\">Beklenen sonu\u00e7: varsay\u0131lan kurulumda <code>1.05:00:00<\/code> ve <code>00:20:00<\/code> d\u00f6ner. \u0130kinci de\u011fer, istek gelmeyen havuzun 20 dakika sonra kapat\u0131laca\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<\/li>\n<li><strong>Periyodik geri d\u00f6n\u00fc\u015f\u00fcm\u00fc kapat\u0131p sabit saat tan\u0131mlay\u0131n.<\/strong>\n<pre><code class=\"language-powershell\">Set-ItemProperty \"IIS:\\AppPools\\DefaultAppPool\" -Name recycling.periodicRestart.time -Value \"00:00:00\"\nSet-ItemProperty \"IIS:\\AppPools\\DefaultAppPool\" -Name recycling.periodicRestart.schedule -Value @{value=\"03:00:00\"}<\/code><\/pre>\n<p class=\"kb-cikti\">Beklenen sonu\u00e7: komutlar \u00e7\u0131kt\u0131 vermez. <code>DefaultAppPool<\/code> yerine kendi havuzunuzun ad\u0131n\u0131 yaz\u0131n.<\/p>\n<\/li>\n<li><strong>Ayar\u0131 kontrol edin.<\/strong>\n<pre><code class=\"language-powershell\">(Get-ItemProperty \"IIS:\\AppPools\\DefaultAppPool\" -Name recycling.periodicRestart.schedule.collection).value<\/code><\/pre>\n<p class=\"kb-cikti\">Beklenen sonu\u00e7: <code>03:00:00<\/code>. Test sunucumuzda de\u011fi\u015fiklikten sonra periyodik de\u011fer <code>00:00:00<\/code>, zamanlama <code>03:00:00<\/code> olarak okundu.<\/p>\n<\/li>\n<li><strong>Havuzu yeniden ba\u015flat\u0131n.<\/strong>\n<pre><code class=\"language-powershell\">Restart-WebAppPool -Name \"DefaultAppPool\"<\/code><\/pre>\n<p class=\"kb-cikti\">Beklenen sonu\u00e7: <code>Get-WebAppPoolState -Name \"DefaultAppPool\"<\/code> komutu <code>Started<\/code> d\u00f6nd\u00fcr\u00fcr.<\/p>\n<\/li>\n<\/ol>\n<div class=\"warn-box\">\n<p class=\"label\">Dikkat<\/p>\n<p>Geri d\u00f6n\u00fc\u015f\u00fcm\u00fc tamamen kapatmay\u0131n. Sabit bir saat tan\u0131mlamadan periyodik de\u011feri s\u0131f\u0131rlamak, havuzun hi\u00e7 yenilenmemesine ve bellek s\u0131z\u0131nt\u0131s\u0131 olan uygulamalarda zamanla yava\u015flamaya yol a\u00e7ar. Geri d\u00f6n\u00fc\u015f\u00fcm\u00fcn ayarlar\u0131 ve di\u011fer tetikleyicileri (bellek s\u0131n\u0131r\u0131 gibi) <a href=\"https:\/\/learn.microsoft.com\/en-us\/iis\/configuration\/system.applicationhost\/applicationpools\/add\/recycling\/\" title=\"Microsoft Learn \u2014 IIS uygulama havuzu geri d\u00f6n\u00fc\u015f\u00fcm\u00fc\" target=\"_blank\" rel=\"noopener\">IIS geri d\u00f6n\u00fc\u015f\u00fcm belgesinde<\/a> anlat\u0131l\u0131r.<\/p>\n<\/div>\n<h2>Do\u011frulama<\/h2>\n<div class=\"success-box\">\n<p class=\"label\">Sonu\u00e7<\/p>\n<p>Ertesi g\u00fcn <strong>Olay G\u00f6r\u00fcnt\u00fcleyicisi \u2192 Windows G\u00fcnl\u00fckleri \u2192 Sistem<\/strong> alt\u0131nda WAS kaynakl\u0131 geri d\u00f6n\u00fc\u015f\u00fcm kayd\u0131n\u0131n yaln\u0131z tan\u0131mlad\u0131\u011f\u0131n\u0131z saatte g\u00f6r\u00fcld\u00fc\u011f\u00fcn\u00fc kontrol edin. G\u00fcn i\u00e7inde geri d\u00f6n\u00fc\u015f\u00fcm kayd\u0131 yoksa ve kullan\u0131c\u0131lar ara ara yava\u015flama bildirmiyorsa IIS app pool recycling ayar\u0131 do\u011fru \u00e7al\u0131\u015f\u0131yordur.<\/p>\n<\/div>\n<h2>H\u00e2l\u00e2 \u00e7\u00f6z\u00fclmediyse<\/h2>\n<ul>\n<li><strong>Site sabah ilk a\u00e7\u0131l\u0131\u015fta yava\u015f.<\/strong> Bo\u015fta kalma s\u00fcresi dolmu\u015f, havuz kapanm\u0131\u015ft\u0131r. Az trafikli sitede bo\u015fta kalma s\u00fcresini uzatmak ya da kapatmak ilk iste\u011fi h\u0131zland\u0131r\u0131r.<\/li>\n<li><strong>Site hi\u00e7 a\u00e7\u0131lm\u0131yor, 503 hatas\u0131.<\/strong> Havuz durmu\u015f olabilir; <a href=\"https:\/\/narhost.com\/destek\/503-service-unavailable-hatasi-nasil-cozulur\/\" title=\"503 Service Unavailable Hatas\u0131 \u2014 Narhost Destek Merkezi\">503 Service Unavailable hatas\u0131<\/a> kart\u0131na bak\u0131n.<\/li>\n<li><strong>.NET Core uygulamas\u0131.<\/strong> Bar\u0131nd\u0131rma modeli ve havuz ayar\u0131 <a href=\"https:\/\/narhost.com\/destek\/net-core-projesini-iiste-yayinlama\/\" title=\".NET Core Projesini IIS&#039;te Yay\u0131nlama \u2014 Narhost Destek Merkezi\">.NET Core projesini IIS&#8217;te yay\u0131nlama<\/a> kart\u0131nda anlat\u0131l\u0131yor.<\/li>\n<\/ul>\n<div class=\"cta-box\">\n<p class=\"label\">Narhost deste\u011fi<\/p>\n<p>VDS sunucular y\u00f6netimsizdir; IIS ayarlar\u0131 sizin sorumlulu\u011funuzdad\u0131r. Sunucu eri\u015fiminde sorun ya\u015f\u0131yorsan\u0131z talebe sunucu ad\u0131n\u0131, hata iletisini ve yapt\u0131\u011f\u0131n\u0131z son de\u011fi\u015fikli\u011fi ekleyin.<\/p>\n<p><a class=\"cta-btn\" href=\"https:\/\/narhost.com\/submitticket.php\" title=\"Narhost destek talebi a\u00e7\">Destek talebi a\u00e7<\/a><\/div>\n<div class=\"kb-ilgili\">\n<p class=\"label\">Sonraki ad\u0131mlar<\/p>\n<ul>\n<li><a href=\"https:\/\/narhost.com\/destek\/iis-uzerinde-site-nasil-yayinlanir\/\" title=\"IIS \u00dczerinde Site Nas\u0131l Yay\u0131nlan\u0131r \u2014 Narhost Destek Merkezi\">IIS \u00fczerinde site nas\u0131l yay\u0131nlan\u0131r<\/a><\/li>\n<li><a href=\"https:\/\/narhost.com\/destek\/iis-ssl-binding-ekleme\/\" title=\"IIS&#039;te HTTPS Ba\u011flamas\u0131 ve SSL Sertifikas\u0131 Ekleme \u2014 Narhost Destek Merkezi\">IIS&#8217;te HTTPS ba\u011flamas\u0131 ve SSL sertifikas\u0131 ekleme<\/a><\/li>\n<li><a href=\"https:\/\/narhost.com\/destek\/iis-kurulumu-windows-server\/\" title=\"Windows Server&#039;da IIS Kurulumu \u2014 Narhost Destek Merkezi\">Windows Server&#8217;da IIS kurulumu<\/a><\/li>\n<\/ul>\n<\/div>\n<div class=\"kb-faq\">\n<h2>S\u0131k\u00e7a sorulan sorular<\/h2>\n<h3>Geri d\u00f6n\u00fc\u015f\u00fcm s\u0131ras\u0131nda site kapan\u0131r m\u0131?<\/h3>\n<p>Varsay\u0131lan ayarlarda IIS, eski i\u015flem kapanmadan \u00f6nce yeni i\u015flemi ba\u015flat\u0131r; bu y\u00fczden site kesintisiz yan\u0131t vermeye devam eder. Ancak yeni i\u015flem ilk istekte uygulamay\u0131 y\u00fckledi\u011fi i\u00e7in o istek yava\u015ft\u0131r ve bellekte tutulan oturumlar kaybolur.<\/p>\n<h3>G\u00fcnde birden fazla saat tan\u0131mlayabilir miyim?<\/h3>\n<p>Evet. Belirli zamanlar listesine birden fazla saat ekleyebilirsiniz. \u00c7o\u011fu site i\u00e7in gece tek bir geri d\u00f6n\u00fc\u015f\u00fcm yeterlidir; bellek t\u00fcketimi h\u0131zl\u0131 artan uygulamalarda ikinci bir saat eklemek d\u00fc\u015f\u00fcn\u00fclebilir.<\/p>\n<h3>Bo\u015fta kalma s\u00fcresini kapatmak sunucuyu yorar m\u0131?<\/h3>\n<p>Havuz istek gelmese de bellekte kal\u0131r. Az say\u0131da sitesi olan bir sunucuda bu fark \u00f6nemsizdir; \u00e7ok say\u0131da havuz bar\u0131nd\u0131ran sunucuda bellek kullan\u0131m\u0131n\u0131 art\u0131r\u0131r. Karar\u0131 sitenin trafi\u011fine ve sunucunun belle\u011fine g\u00f6re verin.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>IIS app pool recycling ayar\u0131: varsay\u0131lan 29 saatlik periyodik geri d\u00f6n\u00fc\u015f\u00fcm\u00fcn neden g\u00fcn i\u00e7inde yava\u015flamaya yol a\u00e7t\u0131\u011f\u0131, PowerShell ve IIS Y\u00f6neticisi ile sabit saate geri d\u00f6n\u00fc\u015f\u00fcm, bo\u015fta kalma s\u00fcresi ve do\u011frulama.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[159,313],"class_list":["post-3002","post","type-post","status-publish","format-standard","hentry","category-vds-server","tag-iis","tag-windows-server-2"],"meta_box":[],"_links":{"self":[{"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/posts\/3002","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/comments?post=3002"}],"version-history":[{"count":1,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/posts\/3002\/revisions"}],"predecessor-version":[{"id":3040,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/posts\/3002\/revisions\/3040"}],"wp:attachment":[{"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/media?parent=3002"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/categories?post=3002"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/tags?post=3002"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}