{"id":41759,"date":"2026-05-14T09:00:59","date_gmt":"2026-05-14T06:00:59","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/"},"modified":"2026-05-14T09:00:59","modified_gmt":"2026-05-14T06:00:59","slug":"vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/","title":{"rendered":"VPS&#8217;inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram"},"content":{"rendered":"<h2>VPS&#8217;inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram<\/h2>\n<p>Bir web sitesi veya uygulaman\u0131z\u0131 internete ta\u015f\u0131mak istedi\u011finizde, genellikle ilk akl\u0131m\u0131za gelen \u00e7\u00f6z\u00fcmlerden biri Sanal \u00d6zel Sunucu (VPS) kiralamak olur. D\u00fc\u015f\u00fck maliyetleri ve esneklikleri sayesinde bir\u00e7ok geli\u015ftirici ve k\u00fc\u00e7\u00fck i\u015fletme i\u00e7in cazip bir se\u00e7enektirler. Ancak bu heyecan verici ba\u015flang\u0131\u00e7, bazen sistemin nedenini anlamad\u0131\u011f\u0131n\u0131z gizemli \u00e7\u00f6kmelerle, yava\u015flamalarla veya uygulamalar\u0131n\u0131z\u0131n aniden kapanmas\u0131yla g\u00f6lgelenebilir. Sanki sistemin i\u00e7inde g\u00f6r\u00fcnmez bir g\u00fc\u00e7, en kritik anda uygulamalar\u0131n\u0131z\u0131 sessizce \u00f6ld\u00fcr\u00fcyormu\u015f gibi hissedersiniz. \u0130\u015fte bu yaz\u0131da, benim de ba\u015f\u0131ma gelen bu &#8220;sessiz \u00f6l\u00fcm\u00fcn&#8221; ard\u0131ndaki ger\u00e7e\u011fi, yani Linux \u00e7ekirde\u011finin son \u00e7aresi olan OOM Killer&#8217;\u0131 ve bu zorlu VPS maceramdan \u00e7\u0131kard\u0131\u011f\u0131m dersleri sizinle payla\u015faca\u011f\u0131m.<\/p>\n<h2>Bir VPS Maceras\u0131 Nas\u0131l Ba\u015flar ve Neden Biter?<\/h2>\n<p>Her \u015fey, kendi ki\u015fisel projelerimi bar\u0131nd\u0131rmak ve biraz da sistem y\u00f6netimi becerilerimi geli\u015ftirmek amac\u0131yla uygun fiyatl\u0131 bir VPS edinmemle ba\u015flad\u0131. Hayallerim b\u00fcy\u00fckt\u00fc: Kendi blogumu kuracak, k\u00fc\u00e7\u00fck bir e-ticaret sitesi denemesi yapacak, hatta belki bir oyun sunucusu bile bar\u0131nd\u0131racakt\u0131m. VPS&#8217;imi kurdum, i\u015fletim sistemi olarak tan\u0131d\u0131k bir Linux da\u011f\u0131t\u0131m\u0131 se\u00e7tim, gerekli web sunucusu (Nginx), veritaban\u0131 (PostgreSQL) ve uygulama \u00e7al\u0131\u015fma zaman\u0131 (Node.js) ortamlar\u0131n\u0131 yap\u0131land\u0131rd\u0131m. \u0130lk ba\u015flarda her \u015fey yolundayd\u0131. Uygulamalar\u0131m sorunsuz \u00e7al\u0131\u015f\u0131yor, sitelerim h\u0131zl\u0131 a\u00e7\u0131l\u0131yordu. Kendimi adeta bir sistem y\u00f6neticisi gibi hissediyordum.<\/p>\n<p>Ancak bu balay\u0131 d\u00f6nemi \u00e7ok uzun s\u00fcrmedi. Bir s\u00fcre sonra, \u00f6zellikle ayn\u0131 anda birka\u00e7 uygulamay\u0131 \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131mda veya sitelerime biraz daha fazla ziyaret\u00e7i geldi\u011finde, sistemde tuhaf davran\u0131\u015flar g\u00f6zlemlemeye ba\u015flad\u0131m. Web siteleri bazen y\u00fcklenmiyor, Node.js uygulamam aniden kapan\u0131yor, hatta SSH ba\u011flant\u0131m bile kopuyordu. Sunucuyu yeniden ba\u015flatt\u0131\u011f\u0131mda her \u015fey normale d\u00f6n\u00fcyor gibi g\u00f6r\u00fcnse de, sorun k\u0131sa s\u00fcre sonra tekrar n\u00fcksediyordu. \u0130lk ba\u015fta bunun bir yaz\u0131l\u0131m hatas\u0131, belki de k\u00f6t\u00fc yap\u0131land\u0131r\u0131lm\u0131\u015f bir Nginx ayar\u0131 oldu\u011funu d\u00fc\u015f\u00fcnd\u00fcm. Log dosyalar\u0131n\u0131 kar\u0131\u015ft\u0131rmaya ba\u015flad\u0131m, ancak hi\u00e7bir yerde bariz bir hata mesaj\u0131 g\u00f6remiyordum. Uygulama loglar\u0131 sadece &#8220;kapanma&#8221; bilgisini veriyor, neden kapand\u0131\u011f\u0131na dair hi\u00e7bir ipucu sunmuyordu. Bu durum, zamanla b\u00fcy\u00fck bir hayal k\u0131r\u0131kl\u0131\u011f\u0131na ve hatta \u00f6fkeye d\u00f6n\u00fc\u015ft\u00fc. Neden sunucum bu kadar istikrars\u0131zd\u0131? Neyi yanl\u0131\u015f yap\u0131yordum? Bu sorular\u0131n cevaplar\u0131n\u0131 bulmak i\u00e7in derinlemesine bir ara\u015ft\u0131rmaya giri\u015ftim ve sonunda, Linux d\u00fcnyas\u0131n\u0131n az bilinen ama hayati derecede \u00f6nemli bir kahraman\u0131yla (ya da baz\u0131 durumlarda, k\u00f6t\u00fc adam\u0131yla) tan\u0131\u015ft\u0131m: OOM Killer.<\/p>\n<p>VPS&#8217;ler, ad\u0131ndan da anla\u015f\u0131laca\u011f\u0131 gibi fiziksel bir sunucunun kaynaklar\u0131n\u0131n sanalla\u015ft\u0131r\u0131larak payla\u015ft\u0131r\u0131lmas\u0131yla olu\u015fur. Bu, genellikle s\u0131n\u0131rl\u0131 miktarda RAM, CPU ve depolama alan\u0131 anlam\u0131na gelir. Ba\u015flang\u0131\u00e7ta bu kaynaklar yeterli gibi g\u00f6r\u00fcnse de, uygulaman\u0131z\u0131n ihtiya\u00e7lar\u0131 artt\u0131k\u00e7a veya beklenmedik bir bellek s\u0131z\u0131nt\u0131s\u0131 (memory leak) meydana geldi\u011finde, sunucunuzun belle\u011fi h\u0131zla t\u00fckenebilir. \u0130\u015fte tam bu noktada, Linux \u00e7ekirde\u011fi, sistemin tamamen donmas\u0131n\u0131 veya kilitlenmesini \u00f6nlemek i\u00e7in son \u00e7are olarak devreye girer. Bu durum, genellikle deneyimsiz kullan\u0131c\u0131lar i\u00e7in b\u00fcy\u00fck bir gizem perdesiyle \u00f6rt\u00fcl\u00fcd\u00fcr ve sunucunun neden durmadan \u00e7\u00f6kt\u00fc\u011f\u00fcn\u00fc anlamak, adeta bir dedektiflik hikayesine d\u00f6n\u00fc\u015f\u00fcr. Benim i\u00e7in de durum buydu; sunucumun kaynak s\u0131n\u0131rlar\u0131n\u0131 zorlad\u0131\u011f\u0131m\u0131 ve sistemin bu duruma nas\u0131l tepki verdi\u011fini anlamam gerekiyordu. Bu deneyim, bana sadece teknik bilgi de\u011fil, ayn\u0131 zamanda sorun giderme ve sab\u0131r konusunda da \u00e7ok \u015fey \u00f6\u011fretti.<\/p>\n<h2>OOM Killer Kimdir ve Neden Ortaya \u00c7\u0131kar?<\/h2>\n<p>Linux i\u015fletim sistemlerinde, sistemin kararl\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamak i\u00e7in tasarlanm\u0131\u015f bir\u00e7ok mekanizma bulunur. Bu mekanizmalardan biri de &#8220;Out Of Memory Killer&#8221; veya k\u0131saca OOM Killer&#8217;d\u0131r. Ad\u0131ndan da anla\u015f\u0131labilece\u011fi gibi, OOM Killer, sistem belle\u011fi (RAM) tamamen doldu\u011funda ve yeni bellek tahsis edilemedi\u011finde devreye giren bir Linux \u00e7ekirde\u011fi \u00f6zelli\u011fidir. Temel amac\u0131, sistemin tamamen kilitlenmesini ve kullan\u0131lamaz hale gelmesini engellemektir. Bellek t\u00fckendi\u011finde, \u00e7ekirdek, sistem i\u00e7in en az \u00f6nemli g\u00f6r\u00fcnen s\u00fcre\u00e7leri (process) sonland\u0131rarak bellek bo\u015faltmaya \u00e7al\u0131\u015f\u0131r. Bu, t\u0131pk\u0131 bir geminin batmak \u00fczereyken y\u00fck\u00fcn\u00fc denize atarak hafiflemeye \u00e7al\u0131\u015fmas\u0131 gibidir; geminin tamamen batmas\u0131n\u0131 engellemek i\u00e7in baz\u0131 kay\u0131plar g\u00f6ze al\u0131n\u0131r.<\/p>\n<p>Peki, OOM Killer neden ortaya \u00e7\u0131kar? Genellikle bunun birka\u00e7 ana nedeni vard\u0131r:<\/p>\n<ul>\n<li><strong>Yetersiz Fiziksel Bellek (RAM)<\/strong>: En yayg\u0131n nedendir. VPS&#8217;inizde \u00e7al\u0131\u015fan uygulamalar\u0131n toplam bellek ihtiyac\u0131, tahsis edilen RAM miktar\u0131n\u0131 a\u015ft\u0131\u011f\u0131nda OOM durumu ortaya \u00e7\u0131kar. \u00d6zellikle d\u00fc\u015f\u00fck RAM&#8217;li (\u00f6rne\u011fin 512MB veya 1GB) VPS&#8217;lerde bu durum s\u0131k\u00e7a g\u00f6r\u00fcl\u00fcr.<\/li>\n<li><strong>Bellek S\u0131z\u0131nt\u0131lar\u0131 (Memory Leaks)<\/strong>: Bir uygulama, ayr\u0131ld\u0131\u011f\u0131 belle\u011fi kullanmay\u0131 bitirdikten sonra i\u015fletim sistemine geri vermedi\u011finde bellek s\u0131z\u0131nt\u0131s\u0131 meydana gelir. Zamanla bu s\u0131z\u0131nt\u0131lar birikerek sistem belle\u011fini t\u00fcketebilir. \u00d6zellikle uzun s\u00fcre \u00e7al\u0131\u015fan uygulamalarda veya hatal\u0131 kodlanm\u0131\u015f yaz\u0131l\u0131mlarda bu durumla kar\u015f\u0131la\u015f\u0131labilir.<\/li>\n<li><strong>Yanl\u0131\u015f Yap\u0131land\u0131rma<\/strong>: Veritaban\u0131 sunucular\u0131 (MySQL, PostgreSQL), web sunucular\u0131 (Apache, Nginx) veya uygulama sunucular\u0131 (PHP-FPM, Node.js) gibi hizmetler, varsay\u0131lan olarak \u00e7ok fazla bellek kullanacak \u015fekilde yap\u0131land\u0131r\u0131lm\u0131\u015f olabilir. \u00d6zellikle y\u00fcksek trafik beklemeyen bir VPS i\u00e7in bu ayarlar a\u015f\u0131r\u0131ya ka\u00e7abilir.<\/li>\n<li><strong>Yo\u011fun Trafik veya \u0130\u015f Y\u00fck\u00fc<\/strong>: Bir web sitesine veya uygulamaya aniden gelen yo\u011fun trafik, \u00e7ok say\u0131da e\u015fzamanl\u0131 ba\u011flant\u0131 ve i\u015flem gerektirebilir. Bu durum, normalde yeterli olan bellek kaynaklar\u0131n\u0131n h\u0131zla t\u00fckenmesine yol a\u00e7abilir.<\/li>\n<\/ul>\n<p>OOM Killer, genellikle bir sistemin hayatta kalma mekanizmas\u0131 olarak g\u00f6r\u00fclse de, uygulamalar\u0131n\u0131z\u0131n beklenmedik bir \u015fekilde kapanmas\u0131na neden oldu\u011fu i\u00e7in geli\u015ftiriciler ve sistem y\u00f6neticileri i\u00e7in ba\u015f a\u011fr\u0131s\u0131 kayna\u011f\u0131 olabilir. Bu durumun \u00fcstesinden gelmek i\u00e7in, sistemin bellek kullan\u0131m\u0131n\u0131 anlamak ve OOM Killer&#8217;\u0131n nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 bilmek hayati \u00f6nem ta\u015f\u0131r. Linux \u00e7ekirde\u011fi, bellek yetersizli\u011fi durumunda hangi s\u00fcrecin &#8220;kurban&#8221; edilece\u011fine karar verirken belirli bir algoritma kullan\u0131r. Bu algoritma, her s\u00fcrece bir &#8220;OOM puan\u0131&#8221; (OOM score) atar ve en y\u00fcksek puana sahip s\u00fcreci sonland\u0131rmaya meyillidir. Bu mekanizma, sistemin tamamen donmas\u0131n\u0131 engellerken, ayn\u0131 zamanda hangi uygulaman\u0131n &#8220;feda edildi\u011fini&#8221; anlamak i\u00e7in loglar\u0131 dikkatle incelemeyi gerektirir. Benim VPS maceramda da, bu sessiz katilin kim oldu\u011funu ve neden ortaya \u00e7\u0131kt\u0131\u011f\u0131n\u0131 anlamak, sorunu \u00e7\u00f6zmenin ilk ad\u0131m\u0131 oldu. Bellek (Memory), takas alan\u0131 (Swap Space) ve sanal bellek (Virtual Memory) gibi temel kavramlar\u0131 \u00f6\u011frenmek, bu mekanizman\u0131n derinliklerine inmemi sa\u011flad\u0131.<\/p>\n<h3>OOM Killer Kurbanlar\u0131n\u0131 Nas\u0131l Se\u00e7er?<\/h3>\n<p>OOM Killer&#8217;\u0131n en ilgin\u00e7 ve bazen de en sinir bozucu yan\u0131, hangi s\u00fcreci sonland\u0131raca\u011f\u0131na nas\u0131l karar verdi\u011fidir. Bu karar, tamamen rastgele verilmez; Linux \u00e7ekirde\u011fi, her \u00e7al\u0131\u015fan s\u00fcrece bir &#8220;oom_score&#8221; atar. Bu puan, s\u00fcrecin bellek t\u00fcketimi, \u00e7al\u0131\u015fma s\u00fcresi, ayr\u0131cal\u0131klar\u0131 ve di\u011fer fakt\u00f6rler g\u00f6z \u00f6n\u00fcne al\u0131narak hesaplan\u0131r. Temel olarak, sistem i\u00e7in daha az kritik g\u00f6r\u00fcnen ve daha fazla bellek t\u00fcketen s\u00fcre\u00e7ler, daha y\u00fcksek bir oom_score&#8217;a sahip olur ve dolay\u0131s\u0131yla OOM Killer&#8217;\u0131n hedefi olma olas\u0131l\u0131\u011f\u0131 daha y\u00fcksektir.<\/p>\n<p>Bir s\u00fcrecin oom_score&#8217;unu etkileyen ba\u015fl\u0131ca fakt\u00f6rler \u015funlard\u0131r:<\/p>\n<ul>\n<li><strong>Bellek Kullan\u0131m\u0131<\/strong>: Bir s\u00fcre\u00e7 ne kadar \u00e7ok bellek kullan\u0131yorsa, oom_score&#8217;u o kadar y\u00fcksek olur.<\/li>\n<li><strong>\u00c7al\u0131\u015fma S\u00fcresi<\/strong>: Genellikle yeni ba\u015flayan s\u00fcre\u00e7ler, eski ve k\u00f6kl\u00fc s\u00fcre\u00e7lere g\u00f6re daha y\u00fcksek bir oom_score&#8217;a sahip olabilir.<\/li>\n<li><strong>Ayr\u0131cal\u0131klar<\/strong>: Root veya sistem s\u00fcre\u00e7leri gibi kritik s\u00fcre\u00e7lerin oom_score&#8217;u genellikle d\u00fc\u015f\u00fckt\u00fcr, b\u00f6ylece sistemin temel i\u015flevlerinin devam etmesi sa\u011flan\u0131r.<\/li>\n<li><strong>oom_score_adj De\u011feri<\/strong>: Bu, sistem y\u00f6neticilerinin belirli s\u00fcre\u00e7ler i\u00e7in oom_score&#8217;u manuel olarak ayarlamas\u0131na olanak tan\u0131yan bir parametredir. -1000 ile 1000 aras\u0131nda bir de\u011fer alabilir. -1000, s\u00fcrecin asla \u00f6ld\u00fcr\u00fclmemesi gerekti\u011fini (ancak bu garantili de\u011fildir, sistem \u00e7ok s\u0131k\u0131\u015f\u0131rsa yine de \u00f6ld\u00fcr\u00fclebilir) belirtirken, 1000, s\u00fcrecin ilk hedef olmas\u0131 gerekti\u011fini g\u00f6sterir. Varsay\u0131lan de\u011fer genellikle 0&#8217;d\u0131r.<\/li>\n<\/ul>\n<p>Bir s\u00fcrecin oom_score&#8217;unu ve oom_score_adj de\u011ferini kontrol etmek olduk\u00e7a kolayd\u0131r. Bunun i\u00e7in <code>\/proc<\/code> dosya sistemini kullan\u0131r\u0131z. \u00d6rne\u011fin, bir s\u00fcrecin PID&#8217;sini (Process ID) biliyorsan\u0131z, a\u015fa\u011f\u0131daki komutlarla ilgili de\u011ferleri g\u00f6rebilirsiniz:<\/p>\n<div class=\"code-container\">\n<pre><code>\n# Bir s\u00fcrecin PID'sini bulmak i\u00e7in (\u00f6rne\u011fin, Nginx)\npgrep nginx\n\n# PID'si 12345 olan bir s\u00fcrecin oom_score_adj de\u011ferini g\u00f6rmek i\u00e7in\ncat \/proc\/12345\/oom_score_adj\n\n# PID'si 12345 olan bir s\u00fcrecin oom_score de\u011ferini g\u00f6rmek i\u00e7in\ncat \/proc\/12345\/oom_score\n  <\/pre>\n<p><\/code>\n<\/div>\n<p>Bu de\u011ferleri bilmek, hangi uygulamalar\u0131n\u0131z\u0131n OOM Killer taraf\u0131ndan hedef al\u0131nma riskinin daha y\u00fcksek oldu\u011funu anlaman\u0131za yard\u0131mc\u0131 olur. \u00d6rne\u011fin, veritaban\u0131 sunucunuzun veya web sunucunuzun kritik oldu\u011funu d\u00fc\u015f\u00fcn\u00fcyorsan\u0131z, o s\u00fcre\u00e7lerin <code>oom_score_adj<\/code> de\u011ferini d\u00fc\u015f\u00fcrerek onlar\u0131 korumaya alabilirsiniz. Ancak bu, di\u011fer s\u00fcre\u00e7lerin daha kolay \u00f6ld\u00fcr\u00fclece\u011fi anlam\u0131na gelir, bu y\u00fczden dikkatli kullan\u0131lmal\u0131d\u0131r. Benim VPS maceramda, \u00f6zellikle Node.js uygulamam\u0131n s\u00fcrekli \u00f6ld\u00fcr\u00fclmesinin nedenini anlamak i\u00e7in bu puanlar\u0131 kontrol etmek, sorunu te\u015fhis etme s\u00fcrecimde \u00f6nemli bir ad\u0131md\u0131. Genellikle en \u00e7ok bellek t\u00fcketen uygulamam\u0131n, yani Node.js'in, en y\u00fcksek puana sahip oldu\u011funu ve bu y\u00fczden OOM Killer taraf\u0131ndan s\u00fcrekli hedef al\u0131nd\u0131\u011f\u0131n\u0131 fark ettim. Bu bilgi, sorunu \u00e7\u00f6zmek i\u00e7in ataca\u011f\u0131m ad\u0131mlar\u0131 belirlememde kritik rol oynad\u0131.<\/p>\n<h2>VPS'inizde OOM Killer Sald\u0131r\u0131s\u0131n\u0131 Nas\u0131l Tespit Edersiniz?<\/h2>\n<p>OOM Killer, sisteminizde sessizce i\u015fini yapar ve genellikle do\u011frudan bir hata mesaj\u0131 b\u0131rakmaz. Bu y\u00fczden, sorunun OOM Killer kaynakl\u0131 olup olmad\u0131\u011f\u0131n\u0131 anlamak, biraz dedektiflik ve sistem loglar\u0131n\u0131 dikkatle inceleme becerisi gerektirir. Benim VPS'imde ya\u015fad\u0131\u011f\u0131m gizemli \u00e7\u00f6kmelerin arkas\u0131ndaki ger\u00e7e\u011fi ortaya \u00e7\u0131karmak i\u00e7in att\u0131\u011f\u0131m ad\u0131mlar \u015funlard\u0131:<\/p>\n<h3>1. Sistem Loglar\u0131n\u0131 \u0130nceleyin<\/h3>\n<p>Linux sistemlerinde, \u00e7ekirdek mesajlar\u0131 ve genel sistem loglar\u0131, OOM Killer aktivitesini g\u00f6steren en \u00f6nemli ipu\u00e7lar\u0131n\u0131 bar\u0131nd\u0131r\u0131r. Kontrol etmeniz gereken ba\u015fl\u0131ca yerler:<\/p>\n<ul>\n<li><strong><code>dmesg<\/code> Komutu<\/strong>: \u00c7ekirdek mesajlar\u0131n\u0131 g\u00f6sterir. OOM Killer'\u0131n devreye girdi\u011fini g\u00f6steren mesajlar\u0131 bulmak i\u00e7in genellikle <code>dmesg | grep -i \"oom\"<\/code> veya <code>dmesg | grep -i \"memory\"<\/code> komutlar\u0131n\u0131 kullan\u0131r\u0131z. Bu komutlar, \"Out of memory\", \"Killed process\" gibi ifadeler i\u00e7eren sat\u0131rlar\u0131 filtreleyecektir.<\/li>\n<li><strong><code>syslog<\/code> veya <code>messages<\/code> Dosyalar\u0131<\/strong>: \u00c7o\u011fu Linux da\u011f\u0131t\u0131m\u0131nda, sistem genelindeki loglar <code>\/var\/log\/syslog<\/code> (Debian\/Ubuntu) veya <code>\/var\/log\/messages<\/code> (CentOS\/RHEL) alt\u0131nda bulunur. Bu dosyalarda da benzer anahtar kelimeler arayabilirsiniz: <code>grep -i \"oom\" \/var\/log\/syslog<\/code>.<\/li>\n<li><strong><code>journalctl<\/code> Komutu<\/strong>: systemd kullanan modern Linux da\u011f\u0131t\u0131mlar\u0131nda (Ubuntu 16.04+, CentOS 7+), loglar\u0131 y\u00f6netmek i\u00e7in <code>journalctl<\/code> kullan\u0131l\u0131r. OOM Killer mesajlar\u0131n\u0131 bulmak i\u00e7in <code>journalctl -xb -p err | grep -i \"oom\"<\/code> veya <code>journalctl -k | grep -i \"oom\"<\/code> gibi komutlar i\u015finize yarayacakt\u0131r. <code>-k<\/code> parametresi sadece \u00e7ekirdek mesajlar\u0131n\u0131 g\u00f6sterir.<\/li>\n<\/ul>\n<p>Loglarda genellikle a\u015fa\u011f\u0131daki gibi bir \u00e7\u0131kt\u0131 g\u00f6r\u00fcrs\u00fcn\u00fcz:<\/p>\n<div class=\"code-container\">\n<pre><code>\n[12345.678901] Out of memory: Kill process 54321 (node) score 999 or sacrifice child\n[12345.678902] Killed process 54321 (node) total-vm:1234567kB, anon-rss:987654kB, file-rss:0kB, shmem-rss:0kB\n  <\/pre>\n<p><\/code>\n<\/div>\n<p>Bu mesajlar, hangi s\u00fcrecin (\u00f6rne\u011fin, <code>node<\/code>) OOM Killer taraf\u0131ndan sonland\u0131r\u0131ld\u0131\u011f\u0131n\u0131, PID'sini ve o anki bellek kullan\u0131m bilgilerini a\u00e7\u0131k\u00e7a g\u00f6sterir. Benim durumumda, bu loglar\u0131 inceledi\u011fimde, s\u00fcrekli olarak Node.js uygulamam\u0131n veya bazen de veritaban\u0131 sunucumun (PostgreSQL) \u00f6ld\u00fcr\u00fcld\u00fc\u011f\u00fcn\u00fc g\u00f6rd\u00fcm. Bu, sorunun kayna\u011f\u0131n\u0131 net bir \u015fekilde i\u015faret ediyordu.<\/p>\n<h3>2. Bellek Kullan\u0131m\u0131n\u0131 \u0130zleme Ara\u00e7lar\u0131n\u0131 Kullan\u0131n<\/h3>\n<p>Sorun an\u0131nda veya d\u00fczenli olarak sistemin bellek kullan\u0131m\u0131n\u0131 izlemek, OOM Killer'\u0131 tetikleyen bellek t\u00fcketimi desenlerini anlaman\u0131za yard\u0131mc\u0131 olur:<\/p>\n<ul>\n<li><strong><code>free -h<\/code><\/strong>: Sistemdeki toplam, kullan\u0131lan ve bo\u015f bellek miktar\u0131n\u0131, ayr\u0131ca takas alan\u0131 (swap) kullan\u0131m\u0131n\u0131 g\u00f6sterir. <code>-h<\/code> parametresi, \u00e7\u0131kt\u0131y\u0131 insan taraf\u0131ndan okunabilir (\u00f6rne\u011fin GB, MB) hale getirir.<\/li>\n<li><strong><code>top<\/code> ve <code>htop<\/code><\/strong>: \u00c7al\u0131\u015fan s\u00fcre\u00e7leri ve bunlar\u0131n CPU, bellek ve takas alan\u0131 kullan\u0131mlar\u0131n\u0131 ger\u00e7ek zamanl\u0131 olarak g\u00f6sterir. <code>top<\/code> komutunda, bellek kullan\u0131m\u0131na g\u00f6re s\u0131ralamak i\u00e7in <code>M<\/code> tu\u015funa basabilirsiniz. <code>htop<\/code> ise daha kullan\u0131c\u0131 dostu ve renkli bir aray\u00fcze sahiptir. Hangi s\u00fcre\u00e7lerin en \u00e7ok belle\u011fi t\u00fcketti\u011fini h\u0131zl\u0131ca g\u00f6rmenizi sa\u011flar.<\/li>\n<li><strong><code>vmstat<\/code><\/strong>: Sanal bellek istatistiklerini raporlar. <code>vmstat 1<\/code> komutu, her saniye g\u00fcncellenen bir \u00e7\u0131kt\u0131 verir ve bellek, takas, I\/O, sistem ve CPU aktivitesi hakk\u0131nda bilgi sa\u011flar. \u00d6zellikle <code>swpd<\/code> (kullan\u0131lan takas alan\u0131) ve <code>free<\/code> (bo\u015f bellek) s\u00fctunlar\u0131n\u0131 takip etmek \u00f6nemlidir.<\/li>\n<\/ul>\n<p>Bu ara\u00e7larla, sunucunuzun bellek kullan\u0131m\u0131n\u0131n ne zaman kritik seviyelere ula\u015ft\u0131\u011f\u0131n\u0131 ve hangi uygulamalar\u0131n bu duruma yol a\u00e7t\u0131\u011f\u0131n\u0131 g\u00f6zlemleyebilirsiniz. Benim VPS'imde, <code>htop<\/code> kullanarak Node.js uygulamam\u0131n zaman zaman beklenenden \u00e7ok daha fazla bellek t\u00fcketti\u011fini ve bu t\u00fcketimin RAM limitine yakla\u015ft\u0131\u011f\u0131nda di\u011fer uygulamalar\u0131n yava\u015flamaya ba\u015flad\u0131\u011f\u0131n\u0131 fark ettim. Bu g\u00f6zlemler, loglardaki OOM Killer mesajlar\u0131yla birle\u015fti\u011finde, sorunun kayna\u011f\u0131n\u0131 ve \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 belirlemem i\u00e7in sa\u011flam bir temel olu\u015fturdu. Bir WordPress sitesi bar\u0131nd\u0131ran ba\u015fka bir senaryoda ise, bir eklentinin bellek s\u0131z\u0131nt\u0131s\u0131na yol a\u00e7t\u0131\u011f\u0131n\u0131 ve bu durumun OOM Killer'\u0131 tetikledi\u011fini yine bu y\u00f6ntemlerle tespit etmi\u015ftim. Bu t\u00fcr durumlar, proaktif izlemenin ve log incelemesinin ne kadar kritik oldu\u011funu bir kez daha kan\u0131tlar niteliktedir.<\/p>\n<h2>OOM Killer ile Ba\u015f Etme Y\u00f6ntemleri Nelerdir?<\/h2>\n<p>OOM Killer ile y\u00fczle\u015fmek zorunda kald\u0131\u011f\u0131n\u0131zda, pani\u011fe kap\u0131lmak yerine, sorunu k\u00f6kten \u00e7\u00f6zmek i\u00e7in \u00e7e\u015fitli stratejiler uygulayabilirsiniz. Benim VPS maceramda da, bu y\u00f6ntemleri ad\u0131m ad\u0131m uygulayarak sunucumu daha kararl\u0131 hale getirmeyi ba\u015fard\u0131m. \u0130\u015fte OOM Killer ile ba\u015f etme ve sisteminizi daha diren\u00e7li hale getirme yollar\u0131:<\/p>\n<h3>Uygulama Optimizasyonu<\/h3>\n<p>En etkili ve kal\u0131c\u0131 \u00e7\u00f6z\u00fcmlerden biri, bellek t\u00fcketimini tetikleyen uygulamalar\u0131n kendilerini optimize etmektir. Bu, sunucunun kaynaklar\u0131n\u0131 art\u0131rmadan \u00f6nce yap\u0131lmas\u0131 gereken ilk ad\u0131md\u0131r.<\/p>\n<ul>\n<li><strong>Kod Optimizasyonu<\/strong>: Uygulaman\u0131z\u0131n (\u00f6rne\u011fin, PHP, Node.js, Python, Java) kodunu g\u00f6zden ge\u00e7irin. Bellek s\u0131z\u0131nt\u0131lar\u0131na neden olabilecek hatalar\u0131 d\u00fczeltin. B\u00fcy\u00fck veri yap\u0131lar\u0131n\u0131 daha verimli kullan\u0131n, gereksiz nesneleri veya de\u011fi\u015fkenleri zaman\u0131nda bellekten temizleyin. \u00d6rne\u011fin, Node.js'te b\u00fcy\u00fck dizilerle \u00e7al\u0131\u015f\u0131rken bellek referanslar\u0131n\u0131 do\u011fru y\u00f6netmek veya PHP'de d\u00f6ng\u00fc i\u00e7inde b\u00fcy\u00fck nesneler olu\u015fturmaktan ka\u00e7\u0131nmak \u00f6nemlidir.<\/li>\n<li><strong>Veritaban\u0131 Optimizasyonu<\/strong>: E\u011fer uygulaman\u0131z bir veritaban\u0131 kullan\u0131yorsa, sorgular\u0131n\u0131z\u0131 optimize edin. Yava\u015f ve verimsiz sorgular, veritaban\u0131 sunucusunun (MySQL, PostgreSQL) ve dolay\u0131s\u0131yla sistemin genel bellek kullan\u0131m\u0131n\u0131 art\u0131rabilir. \u0130ndeksler (index) eklemek, sorgular\u0131 yeniden yazmak ve gereksiz verileri \u00e7ekmekten ka\u00e7\u0131nmak bu konuda yard\u0131mc\u0131 olacakt\u0131r.<\/li>\n<li><strong>\u00d6nbellekleme (Caching) Mekanizmalar\u0131<\/strong>: Uygulaman\u0131zda \u00f6nbellekleme kullan\u0131n. S\u0131k eri\u015filen verileri veya sayfalar\u0131 \u00f6nbelle\u011fe almak, veritaban\u0131na ve uygulama sunucusuna olan y\u00fck\u00fc azalt\u0131r, bu da bellek t\u00fcketimini d\u00fc\u015f\u00fcr\u00fcr. Redis, Memcached gibi bellek tabanl\u0131 \u00f6nbellek sistemleri veya CDN'ler (\u0130\u00e7erik Da\u011f\u0131t\u0131m A\u011flar\u0131) bu konuda olduk\u00e7a faydal\u0131d\u0131r.<\/li>\n<li><strong>E\u015fzamanl\u0131 Ba\u011flant\u0131lar\u0131 S\u0131n\u0131rlama<\/strong>: Web sunucunuz (Nginx, Apache) veya uygulama sunucunuz (PHP-FPM, Node.js) i\u00e7in e\u015fzamanl\u0131 ba\u011flant\u0131 veya s\u00fcre\u00e7 say\u0131s\u0131n\u0131 s\u0131n\u0131rlay\u0131n. Her ba\u011flant\u0131 veya s\u00fcre\u00e7 belirli bir miktar bellek t\u00fcketir. A\u015f\u0131r\u0131ya ka\u00e7an e\u015fzamanl\u0131l\u0131k, bellek t\u00fckenmesine yol a\u00e7abilir. \u00d6rne\u011fin, PHP-FPM'de <code>pm.max_children<\/code> veya Nginx'te <code>worker_processes<\/code> gibi ayarlar\u0131 dikkatlice yap\u0131land\u0131r\u0131n.<\/li>\n<\/ul>\n<h3>Sistem Konfig\u00fcrasyonu<\/h3>\n<p>Uygulama d\u00fczeyinde optimizasyonlar yeterli olmad\u0131\u011f\u0131nda veya daha h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm gerekti\u011finde, sistem d\u00fczeyinde baz\u0131 yap\u0131land\u0131rmalar yapabilirsiniz.<\/p>\n<ul>\n<li><strong>Takas Alan\u0131 (Swap Space) Ekleme<\/strong>: Swap alan\u0131, fiziksel RAM doldu\u011funda kullan\u0131lmak \u00fczere diskin bir k\u0131sm\u0131n\u0131 bellek olarak ay\u0131rmakt\u0131r. Bu, OOM Killer'\u0131n an\u0131nda devreye girmesini geciktirir ve sistemin tamamen donmas\u0131n\u0131 engeller. Ancak disk tabanl\u0131 oldu\u011fu i\u00e7in RAM'den \u00e7ok daha yava\u015ft\u0131r ve performans\u0131 d\u00fc\u015f\u00fcrebilir. Benim VPS'imde acil bir \u00e7\u00f6z\u00fcm olarak 1GB'l\u0131k bir swap alan\u0131 eklemi\u015ftim. Swap alan\u0131 eklemek i\u00e7in a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 takip edebilirsiniz:\n<div class=\"code-container\">\n<pre><code>\n# 1GB boyutunda bir takas dosyas\u0131 olu\u015fturun\nsudo fallocate -l 1G \/swapfile\n\n# Sadece root kullan\u0131c\u0131s\u0131n\u0131n eri\u015febilmesi i\u00e7in izinleri ayarlay\u0131n\nsudo chmod 600 \/swapfile\n\n# Takas alan\u0131n\u0131 yap\u0131land\u0131r\u0131n\nsudo mkswap \/swapfile\n\n# Takas alan\u0131n\u0131 etkinle\u015ftirin\nsudo swapon \/swapfile\n\n# Yeniden ba\u015flatmada kal\u0131c\u0131 olmas\u0131 i\u00e7in \/etc\/fstab dosyas\u0131na ekleyin\necho '\/swapfile none swap sw 0 0' | sudo tee -a \/etc\/fstab\n\n# Takas alan\u0131n\u0131n ba\u015far\u0131yla eklendi\u011fini kontrol edin\nfree -h\n  <\/pre>\n<p><\/code>\n<\/div>\n<\/li>\n<li><strong><code>oom_score_adj<\/code> Ayarlama<\/strong>: Kritik s\u00fcre\u00e7lerinizin (\u00f6rne\u011fin, SSH sunucunuz veya veritaban\u0131n\u0131z) OOM Killer taraf\u0131ndan \u00f6ld\u00fcr\u00fclme olas\u0131l\u0131\u011f\u0131n\u0131 azaltmak i\u00e7in <code>oom_score_adj<\/code> de\u011ferini d\u00fc\u015f\u00fcrebilirsiniz. \u00d6rne\u011fin, MySQL s\u00fcrecinin PID'sini bulup oom_score_adj de\u011ferini -1000'e ayarlamak i\u00e7in:\n<div class=\"code-container\">\n<pre><code>\n# MySQL s\u00fcrecinin PID'sini bulun (\u00f6rne\u011fin, mysqld)\npidof mysqld\n\n# PID'si 12345 olan MySQL s\u00fcrecinin oom_score_adj de\u011ferini -1000 olarak ayarlay\u0131n\necho -1000 | sudo tee \/proc\/$(pidof mysqld)\/oom_score_adj\n  <\/pre>\n<p><\/code>\n<\/div>\n<p>        Bu, ilgili s\u00fcrecin OOM Killer taraf\u0131ndan sonland\u0131r\u0131lma \u00f6nceli\u011fini d\u00fc\u015f\u00fcr\u00fcr. Ancak unutmay\u0131n, bu di\u011fer s\u00fcre\u00e7lerin daha kolay \u00f6ld\u00fcr\u00fclece\u011fi anlam\u0131na gelir.<\/li>\n<li><strong>Kaynak Limitleri (Ulimits, Cgroups)<\/strong>: Daha ileri d\u00fczeyde, Linux'un <code>ulimit<\/code> komutu veya <code>cgroups<\/code> (control groups) \u00f6zelli\u011fi ile s\u00fcre\u00e7lere veya kullan\u0131c\u0131 gruplar\u0131na bellek limitleri atayabilirsiniz. Bu, bir s\u00fcrecin a\u015f\u0131r\u0131 bellek t\u00fcketmesini ba\u015ftan engeller. Ancak bu konfig\u00fcrasyonlar daha karma\u015f\u0131k olabilir ve dikkatli bir \u015fekilde yap\u0131lmal\u0131d\u0131r.<\/li>\n<li><strong>Do\u011fru VPS Plan\u0131n\u0131 Se\u00e7me<\/strong>: Bazen t\u00fcm optimizasyonlara ra\u011fmen mevcut VPS plan\u0131n\u0131z\u0131n RAM'i yetersiz kalabilir. Bu durumda, daha fazla RAM'e sahip bir \u00fcst pakete ge\u00e7mek en kesin \u00e7\u00f6z\u00fcmd\u00fcr. Uzun vadede, uygulaman\u0131z\u0131n ger\u00e7ek bellek ihtiya\u00e7lar\u0131n\u0131 anlamak ve buna uygun bir sunucu se\u00e7mek \u00f6nemlidir.<\/li>\n<\/ul>\n<p>Bu y\u00f6ntemlerin kombinasyonu, benim VPS'imin istikrars\u0131zl\u0131\u011f\u0131n\u0131 b\u00fcy\u00fck \u00f6l\u00e7\u00fcde gidermeme yard\u0131mc\u0131 oldu. \u00d6zellikle swap alan\u0131 eklemek ve Node.js uygulamamdaki bellek s\u0131z\u0131nt\u0131s\u0131n\u0131 tespit edip d\u00fczeltmek, OOM Killer sald\u0131r\u0131lar\u0131n\u0131n sona ermesini sa\u011flad\u0131. Her durum farkl\u0131 olsa da, bu ad\u0131mlar genellikle OOM Killer sorunlar\u0131yla ba\u015fa \u00e7\u0131kmak i\u00e7in sa\u011flam bir ba\u015flang\u0131\u00e7 noktas\u0131 sunar.<\/p>\n<h2>Ger\u00e7ek D\u00fcnya Senaryolar\u0131 ve Benim Derslerim<\/h2>\n<p>OOM Killer ile ya\u015fad\u0131\u011f\u0131m m\u00fccadele, teorik bilgiden \u00e7ok daha fazlas\u0131n\u0131 \u00f6\u011freten ger\u00e7ek bir deneyimdi. Ba\u015flang\u0131\u00e7ta sadece bir \"sistem \u00e7\u00f6kmesi\" olarak g\u00f6rd\u00fc\u011f\u00fcm olaylar, zamanla daha derinlemesine bir anlay\u0131\u015fa d\u00f6n\u00fc\u015ft\u00fc. \u0130\u015fte bu s\u00fcre\u00e7te kar\u015f\u0131la\u015ft\u0131\u011f\u0131m baz\u0131 senaryolar ve onlardan \u00e7\u0131kard\u0131\u011f\u0131m dersler:<\/p>\n<h3>Senaryo 1: Node.js Uygulamam\u0131n Gizemli \u00d6l\u00fcm\u00fc<\/h3>\n<p>\u0130lk VPS'imde, k\u00fc\u00e7\u00fck bir REST API sunan bir Node.js uygulamas\u0131 \u00e7al\u0131\u015ft\u0131r\u0131yordum. Uygulama, belirli bir API iste\u011fi ald\u0131\u011f\u0131nda b\u00fcy\u00fck bir veri setini i\u015fleyip analiz ediyordu. Ba\u015flang\u0131\u00e7ta her \u015fey yolundayd\u0131, ancak birka\u00e7 kullan\u0131c\u0131 ayn\u0131 anda bu API'yi kullanmaya ba\u015flad\u0131\u011f\u0131nda, Node.js s\u00fcreci aniden kapan\u0131yordu. Loglarda herhangi bir hata mesaj\u0131 yoktu, sadece uygulaman\u0131n durdu\u011fu bilgisi vard\u0131. <code>dmesg<\/code> komutuyla \u00e7ekirdek loglar\u0131n\u0131 inceledi\u011fimde, \"Killed process (node)\" mesajlar\u0131n\u0131 g\u00f6rd\u00fcm. Bu, OOM Killer'\u0131n i\u015f ba\u015f\u0131 yapt\u0131\u011f\u0131n\u0131 g\u00f6steriyordu.<\/p>\n<ul>\n<li><strong>Te\u015fhis<\/strong>: Node.js uygulamam, b\u00fcy\u00fck veri setlerini i\u015flerken belle\u011fi verimli kullanm\u0131yordu. \u00d6zellikle d\u00f6ng\u00fcler i\u00e7inde olu\u015fturulan ge\u00e7ici nesneler ve diziler, \u00e7\u00f6p toplay\u0131c\u0131n\u0131n (garbage collector) yeti\u015femedi\u011fi h\u0131zda bellek t\u00fcketiyordu.<\/li>\n<li><strong>\u00c7\u00f6z\u00fcm<\/strong>: Uygulama kodunu g\u00f6zden ge\u00e7irdim. B\u00fcy\u00fck veri setlerini i\u015flerken ak\u0131\u015f (stream) tabanl\u0131 yakla\u015f\u0131mlar\u0131 kullanmaya ba\u015flad\u0131m. Gerekli olmayan verileri bellekten daha erken temizlemek i\u00e7in kodumda optimizasyonlar yapt\u0131m. Ayr\u0131ca, Node.js'in varsay\u0131lan bellek limitlerini ara\u015ft\u0131rd\u0131m ve daha verimli \u00e7al\u0131\u015fmas\u0131 i\u00e7in baz\u0131 \u00e7al\u0131\u015fma zaman\u0131 parametrelerini ayarlad\u0131m.<\/li>\n<li><strong>Ders<\/strong>: Uygulama kodunun bellek kullan\u0131m\u0131n\u0131 anlamak ve optimize etmek, sadece OOM Killer sorununu \u00e7\u00f6zmekle kalmaz, ayn\u0131 zamanda uygulaman\u0131n genel performans\u0131n\u0131 da art\u0131r\u0131r. Geli\u015ftiricilerin, yazd\u0131klar\u0131 kodun sistem kaynaklar\u0131n\u0131 nas\u0131l etkiledi\u011fini derinlemesine anlamalar\u0131 gerekti\u011fi \u00e7ok \u00f6nemli.<\/li>\n<\/ul>\n<h3>Senaryo 2: Yo\u011fun Trafikte \u00c7\u00f6ken WordPress Sitesi<\/h3>\n<p>Ba\u015fka bir VPS'te, bir m\u00fc\u015fterimin WordPress sitesini bar\u0131nd\u0131r\u0131yordum. Site genellikle d\u00fc\u015f\u00fck trafi\u011fe sahipti, ancak bir kampanya d\u00f6neminde aniden y\u00fcksek say\u0131da ziyaret\u00e7i ald\u0131. Bu yo\u011funlukla birlikte site yava\u015flamaya ba\u015flad\u0131 ve belirli aral\u0131klarla tamamen eri\u015filemez hale geldi. Yine<\/p>\n","protected":false},"excerpt":{"rendered":"Bir web sitesi veya uygulaman\u0131z\u0131 internete ta\u015f\u0131mak istedi\u011finizde, genellikle ilk akl\u0131m\u0131za gelen \u00e7\u00f6z\u00fcmlerden biri Sanal \u00d6zel Sunucu (VPS) kiralamak olur.","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-41759","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>VPS&#039;inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"VPS&#039;inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram\" \/>\n<meta property=\"og:description\" content=\"Bir web sitesi veya uygulaman\u0131z\u0131 internete ta\u015f\u0131mak istedi\u011finizde, genellikle ilk akl\u0131m\u0131za gelen \u00e7\u00f6z\u00fcmlerden biri Sanal \u00d6zel Sunucu (VPS) kiralamak olur.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-14T06:00:59+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"VPS&#8217;inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram\",\"datePublished\":\"2026-05-14T06:00:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/\"},\"wordCount\":3432,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/\",\"name\":\"VPS'inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-05-14T06:00:59+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"VPS&#8217;inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"VPS'inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/","og_locale":"tr_TR","og_type":"article","og_title":"VPS'inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram","og_description":"Bir web sitesi veya uygulaman\u0131z\u0131 internete ta\u015f\u0131mak istedi\u011finizde, genellikle ilk akl\u0131m\u0131za gelen \u00e7\u00f6z\u00fcmlerden biri Sanal \u00d6zel Sunucu (VPS) kiralamak olur.","og_url":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-05-14T06:00:59+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"18 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"VPS&#8217;inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram","datePublished":"2026-05-14T06:00:59+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/"},"wordCount":3432,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/","url":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/","name":"VPS'inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-05-14T06:00:59+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/vpsinizin-sessiz-katili-oom-killer-ve-sanal-sunucu-maceram\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"VPS&#8217;inizin Sessiz Katili: OOM Killer ve Sanal Sunucu Maceram"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/41759","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=41759"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/41759\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=41759"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=41759"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=41759"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}