{"id":35538,"date":"2025-11-30T23:01:09","date_gmt":"2025-11-30T20:01:09","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/"},"modified":"2025-11-30T23:01:09","modified_gmt":"2025-11-30T20:01:09","slug":"40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/","title":{"rendered":"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?"},"content":{"rendered":"<p><body><\/p>\n<p>Modern web uygulamalar\u0131nda performans ve kullan\u0131c\u0131 deneyimi kritik \u00f6neme sahiptir. Kullan\u0131c\u0131lar\u0131n 40 saniye s\u00fcren giri\u015fler gibi sorunlar ya\u015famas\u0131, sadece hayal k\u0131r\u0131kl\u0131\u011f\u0131 yaratmakla kalmaz, ayn\u0131 zamanda i\u015f kayb\u0131na da yol a\u00e7abilir. Bu teknik makalede, AWS Application Load Balancer (ALB) kaynakl\u0131 olabilecek b\u00f6ylesi performans d\u00fc\u015f\u00fc\u015flerini ad\u0131m ad\u0131m nas\u0131l giderebilece\u011finizi ke\u015ffedeceksiniz.<\/p>\n<p>Bir sabah uyand\u0131\u011f\u0131n\u0131zda veya i\u015finize ba\u015flad\u0131\u011f\u0131n\u0131zda, son kullan\u0131c\u0131lardan gelen &#8220;Uygulamaya giri\u015f yapmak neden bu kadar uzun s\u00fcr\u00fcyor?&#8221; veya &#8220;Her giri\u015f denemem tam 40 saniye s\u00fcr\u00fcyor!&#8221; \u015fikayetleriyle kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131z\u0131 hayal edin. Bu durum, \u00f6zellikle y\u00fcksek performans beklenen modern web uygulamalar\u0131nda kabul edilemez bir senaryodur. Geli\u015ftirme ve operasyon ekipleri i\u00e7in bu t\u00fcr \u015fikayetler, karma\u015f\u0131k ve da\u011f\u0131t\u0131k sistemlerdeki potansiyel sorunlar\u0131 i\u015faret eder. AWS ekosisteminde, bu t\u00fcr performans darbo\u011fazlar\u0131n\u0131n yayg\u0131n bir nedeni yanl\u0131\u015f yap\u0131land\u0131r\u0131lm\u0131\u015f veya sorunlu bir Application Load Balancer (ALB) olabilir.<\/p>\n<p>Application Load Balancer (Uygulama Y\u00fck Dengeleyici), modern mikro servis tabanl\u0131 mimarilerin ve sunucusuz uygulamalar\u0131n temel bile\u015fenlerinden biridir. Gelen trafi\u011fi birden fazla hedefe (EC2 \u00f6rnekleri, konteynerler, Lambda fonksiyonlar\u0131 gibi) da\u011f\u0131tarak uygulaman\u0131z\u0131n y\u00fcksek eri\u015filebilirlik, \u00f6l\u00e7eklenebilirlik ve performansla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar. Ancak bu kadar kritik bir bile\u015fenin do\u011fru yap\u0131land\u0131r\u0131lmamas\u0131, tam da yukar\u0131da bahsedilen 40 saniyelik giri\u015f gecikmeleri gibi can s\u0131k\u0131c\u0131 sorunlara yol a\u00e7abilir. Bu gecikmelerin kayna\u011f\u0131n\u0131 bulmak, sistemin derinlemesine anla\u015f\u0131lmas\u0131n\u0131, metriklerin dikkatli incelenmesini ve sistematik bir hata ay\u0131klama yakla\u015f\u0131m\u0131n\u0131 gerektirir.<\/p>\n<p>Bu makalede, bir AWS ALB&#8217;nin yanl\u0131\u015f yap\u0131land\u0131r\u0131lmas\u0131 sonucu ortaya \u00e7\u0131kan 40 saniyelik giri\u015f gecikmeleri senaryosunu ele alacak, bu sorunun k\u00f6k nedenlerini nas\u0131l tespit edece\u011fimizi ve kal\u0131c\u0131 \u00e7\u00f6z\u00fcmler i\u00e7in hangi ad\u0131mlar\u0131 ataca\u011f\u0131m\u0131z\u0131 detayl\u0131 bir \u015fekilde inceleyece\u011fiz. Amac\u0131m\u0131z, benzer durumlarla kar\u015f\u0131la\u015fan geli\u015ftiricilere ve sistem y\u00f6neticilerine pratik bir yol haritas\u0131 sunmakt\u0131r. Bu yolculukta, AWS CloudWatch, ALB eri\u015fim g\u00fcnl\u00fckleri, g\u00fcvenlik gruplar\u0131 ve hedef grubu sa\u011fl\u0131k kontrolleri gibi temel AWS ara\u00e7lar\u0131n\u0131 kullanarak, sorunun izini s\u00fcrece\u011fiz ve performans kabusuna son verece\u011fiz. Haz\u0131r m\u0131s\u0131n\u0131z? \u00d6yleyse, AWS ALB&#8217;nin gizemli d\u00fcnyas\u0131na bir dal\u0131\u015f yapal\u0131m ve bu 40 saniyelik gecikmenin ard\u0131ndaki s\u0131rr\u0131 \u00e7\u00f6zelim.<\/p>\n<h2>AWS Application Load Balancer (ALB) Temelleri: Y\u00fck Dengeleyici Nas\u0131l \u00c7al\u0131\u015f\u0131r ve Neden \u00d6nemlidir?<\/h2>\n<p>AWS Application Load Balancer (ALB), da\u011f\u0131t\u0131k sistemlerin kalbinde yer alan ve uygulaman\u0131z\u0131n sorunsuz \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flayan hayati bir hizmettir. Temel olarak, gelen HTTP\/HTTPS trafi\u011fini tan\u0131mlad\u0131\u011f\u0131n\u0131z hedef gruplar\u0131ndaki (Target Groups) sunuculara (EC2 \u00f6rnekleri, ECS g\u00f6revleri, Lambda fonksiyonlar\u0131 vb.) verimli bir \u015fekilde y\u00f6nlendirir. Peki, bu y\u00f6nlendirme i\u015flemi tam olarak nas\u0131l ger\u00e7ekle\u015fiyor ve neden bu kadar kritik?<\/p>\n<p>ALB&#8217;nin \u00e7al\u0131\u015fma prensibini \u00fc\u00e7 ana bile\u015fen \u00fczerinden a\u00e7\u0131klayabiliriz:<\/p>\n<ol>\n<li><strong>Listeners (Dinleyiciler):<\/strong> Bu, ALB&#8217;nin belirli bir port ve protokol (\u00f6rne\u011fin, HTTP:80 veya HTTPS:443) \u00fczerinden gelen ba\u011flant\u0131lar\u0131 nas\u0131l i\u015fleyece\u011fini tan\u0131mlayan k\u0131s\u0131md\u0131r. Dinleyiciler, gelen istekleri hangi hedef gruplar\u0131na y\u00f6nlendireceklerini belirleyen kurallara sahiptir. \u00d6rne\u011fin, bir dinleyici, belirli bir URL yoluna (path-based routing) veya host ad\u0131na (host-based routing) g\u00f6re trafi\u011fi farkl\u0131 hedef gruplar\u0131na y\u00f6nlendirebilir. Bu esneklik, mikro servis mimarilerinde farkl\u0131 servisleri tek bir ALB arkas\u0131nda bar\u0131nd\u0131rmay\u0131 m\u00fcmk\u00fcn k\u0131lar.<\/li>\n<li><strong>Target Groups (Hedef Gruplar\u0131):<\/strong> Hedef gruplar\u0131, istekleri y\u00f6nlendirece\u011finiz sunucular\u0131n\u0131z\u0131n veya kaynaklar\u0131n\u0131z\u0131n (hedefler) mant\u0131ksal bir toplulu\u011fudur. Bir hedef grubu, belirli bir protokol (HTTP, HTTPS, TCP, TLS, UDP, TCP_UDP) ve port \u00fczerinden sa\u011fl\u0131k kontrol\u00fc yapar ve sadece sa\u011fl\u0131kl\u0131 olan hedeflere trafik g\u00f6nderir. Bu, bir sunucu \u00e7\u00f6kt\u00fc\u011f\u00fcnde veya a\u015f\u0131r\u0131 y\u00fcklendi\u011finde, ALB&#8217;nin trafi\u011fi otomatik olarak di\u011fer sa\u011fl\u0131kl\u0131 hedeflere y\u00f6nlendirmesini sa\u011flar, b\u00f6ylece uygulaman\u0131z\u0131n kesintisiz \u00e7al\u0131\u015fmas\u0131na devam eder.<\/li>\n<li><strong>Health Checks (Sa\u011fl\u0131k Kontrolleri):<\/strong> Hedef gruplar\u0131n\u0131n ayr\u0131lmaz bir par\u00e7as\u0131 olan sa\u011fl\u0131k kontrolleri, ALB&#8217;nin hedeflerin durumunu s\u00fcrekli olarak izlemesini sa\u011flar. Bir hedef grup i\u00e7indeki her bir hedefe d\u00fczenli aral\u0131klarla (interval) istek g\u00f6nderilir ve yan\u0131tlar (response codes, response time) incelenir. E\u011fer belirli bir say\u0131da (unhealthy threshold) kontrol ba\u015far\u0131s\u0131z olursa, hedef &#8220;sa\u011fl\u0131ks\u0131z&#8221; olarak i\u015faretlenir ve art\u0131k ona trafik g\u00f6nderilmez. Hedef tekrar sa\u011fl\u0131kl\u0131 yan\u0131t vermeye ba\u015flad\u0131\u011f\u0131nda (healthy threshold), trafik y\u00f6nlendirmeye devam edilir. Bu mekanizma, otomatik hata tolerans\u0131 ve y\u00fcksek eri\u015filebilirlik i\u00e7in hayati \u00f6neme sahiptir.<\/li>\n<\/ol>\n<p>ALB, yaln\u0131zca y\u00fck dengeleme yapmakla kalmaz, ayn\u0131 zamanda geli\u015fmi\u015f \u00f6zellikler de sunar. \u00d6rne\u011fin, SSL\/TLS sonland\u0131rmas\u0131 (SSL Offloading) yaparak sunucular\u0131n\u0131zdaki \u015fifreleme y\u00fck\u00fcn\u00fc azaltabilir, yap\u0131\u015fkan oturumlar (Sticky Sessions) ile belirli bir kullan\u0131c\u0131n\u0131n isteklerini her zaman ayn\u0131 sunucuya y\u00f6nlendirebilir ve WAF (Web Application Firewall) entegrasyonu ile uygulaman\u0131z\u0131 yayg\u0131n web sald\u0131r\u0131lar\u0131na kar\u015f\u0131 koruyabilir. Bu \u00f6zellikler, ALB&#8217;yi modern web mimarilerinin vazge\u00e7ilmez bir par\u00e7as\u0131 haline getirir.<\/p>\n<p>Ancak, bu kadar \u00e7ok katmanl\u0131 ve \u00f6zellikli bir sistemde, yanl\u0131\u015f bir yap\u0131land\u0131rma veya g\u00f6zden ka\u00e7an k\u00fc\u00e7\u00fck bir detay bile b\u00fcy\u00fck sorunlara yol a\u00e7abilir. \u00d6rne\u011fin, hatal\u0131 bir sa\u011fl\u0131k kontrol\u00fc yap\u0131land\u0131rmas\u0131, hedef gruplar\u0131ndaki sunucular\u0131n s\u00fcrekli &#8220;sa\u011fl\u0131ks\u0131z&#8221; g\u00f6r\u00fcnmesine neden olarak ALB&#8217;nin trafi\u011fi do\u011fru \u015fekilde y\u00f6nlendirememesine yol a\u00e7abilir. Ya da g\u00fcvenlik gruplar\u0131ndaki yanl\u0131\u015f izinler, ALB&#8217;nin hedeflerle ileti\u015fim kurmas\u0131n\u0131 engelleyerek, tam da bu 40 saniyelik gecikme gibi zaman a\u015f\u0131mlar\u0131na neden olabilir. Bu nedenle, ALB&#8217;nin \u00e7al\u0131\u015fma prensiplerini iyi anlamak ve t\u00fcm bile\u015fenlerini dikkatle yap\u0131land\u0131rmak, uygulaman\u0131z\u0131n performans\u0131n\u0131 ve kararl\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamak i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<h2>Vaka Analizi: 40 Saniyelik Gecikmenin Gizemi ve \u0130lk G\u00f6zlemlerimiz<\/h2>\n<p>Senaryomuz, kurumsal bir SaaS uygulamas\u0131n\u0131n giri\u015f sayfas\u0131nda ortaya \u00e7\u0131kan tuhaf bir performans sorununa odaklan\u0131yor. Kullan\u0131c\u0131lar, giri\u015f d\u00fc\u011fmesine bast\u0131ktan sonra tam olarak 40 saniye beklediklerini ve ard\u0131ndan ya giri\u015fin ba\u015far\u0131l\u0131 oldu\u011funu ya da bir hata mesaj\u0131 ald\u0131klar\u0131n\u0131 bildiriyorlar. Bu tam 40 saniyelik gecikme, sorunun rastgele de\u011fil, belirli bir zaman a\u015f\u0131m\u0131 veya retri (yeniden deneme) mekanizmas\u0131yla ilgili olabilece\u011fine dair g\u00fc\u00e7l\u00fc bir ipucuydu.<\/p>\n<p>\u0130lk a\u015famada, problem \u00e7\u00f6zme ekibi olarak standart hata ay\u0131klama s\u00fcre\u00e7lerimizi uygulad\u0131k:<\/p>\n<ol>\n<li><strong>Uygulama Katman\u0131 Kontrol\u00fc:<\/strong> Uygulama sunucular\u0131n\u0131n (EC2 \u00f6rnekleri) CPU, bellek ve disk kullan\u0131m\u0131n\u0131 kontrol ettik. Anormal bir durum g\u00f6r\u00fcnm\u00fcyordu. Uygulama loglar\u0131nda, isteklerin sunuculara ula\u015ft\u0131\u011f\u0131 zaman ile yan\u0131tland\u0131\u011f\u0131 zaman aras\u0131nda da bir gecikme g\u00f6zlenmedi. E\u011fer istek sunucuya ula\u015f\u0131yorsa, sorun uygulama katman\u0131nda de\u011fildi.<\/li>\n<li><strong>Veritaban\u0131 Katman\u0131 Kontrol\u00fc:<\/strong> Veritaban\u0131 sorgular\u0131n\u0131n performans\u0131n\u0131 inceledik. Yava\u015f \u00e7al\u0131\u015fan sorgular veya ba\u011flant\u0131 sorunlar\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol ettik. Ancak, veritaban\u0131 performans metrikleri de normal aral\u0131klardayd\u0131 ve 40 saniyelik bir sorgu s\u00fcresi g\u00f6zlenmedi.<\/li>\n<li><strong>A\u011f \u0130zleme:<\/strong> Uygulama sunucular\u0131ndan d\u0131\u015f d\u00fcnyaya veya veritaban\u0131na yap\u0131lan ba\u011flant\u0131larda anormallik olup olmad\u0131\u011f\u0131n\u0131 kontrol ettik. Ping ve traceroute gibi basit a\u011f ara\u00e7lar\u0131, i\u00e7 a\u011f ileti\u015fimi sorunlar\u0131na i\u015faret etmedi.<\/li>\n<\/ol>\n<p>Bu ilk kontroller, sorunun genellikle tahmin edilen uygulama veya veritaban\u0131 katman\u0131nda olmad\u0131\u011f\u0131n\u0131 g\u00f6steriyordu. Peki, istek sunucuya ula\u015fm\u0131yor mu? Ya da ula\u015fsa bile, kullan\u0131c\u0131ya geri d\u00f6n\u00fc\u015f yolunda m\u0131 bir \u015feyler aks\u0131yordu? Tam bu noktada, gelen trafi\u011fi y\u00f6neten AWS Application Load Balancer (ALB) \u015f\u00fcpheliler listemizin ba\u015f\u0131na oturdu. 40 saniyelik gecikme, genellikle belirli bir zaman a\u015f\u0131m\u0131 (timeout) de\u011ferini veya birka\u00e7 retri denemesinin toplam s\u00fcresini d\u00fc\u015f\u00fcnd\u00fcr\u00fcyordu.<\/p>\n<p>ALB&#8217;nin varsay\u0131lan zaman a\u015f\u0131m\u0131 de\u011ferleri genellikle 60 saniye (bo\u015fta ba\u011flant\u0131 zaman a\u015f\u0131m\u0131) veya sa\u011fl\u0131k kontrolleriyle ilgili 30 saniye gibi rakamlard\u0131r. Ancak 40 saniye, bazen belirli bir TCP ba\u011flant\u0131 zaman a\u015f\u0131m\u0131n\u0131n birden fazla kez denenmesi veya bir uygulaman\u0131n kendi \u00f6zel zaman a\u015f\u0131m\u0131 ayar\u0131ndan kaynaklanabilir. \u0130\u015fte bu belirsizlik, bizi ALB&#8217;yi daha derinlemesine incelemeye itti. Acaba ALB, hedeflerine do\u011fru \u015fekilde ula\u015fam\u0131yor muydu? Yoksa hedeflere ula\u015fsa bile, yan\u0131tlar\u0131 geri almakta zorlan\u0131yor muydu?<\/p>\n<p>Bu vaka analizinde, CloudWatch metriklerinden ba\u015flayarak ALB eri\u015fim g\u00fcnl\u00fcklerine, g\u00fcvenlik gruplar\u0131 ve a\u011f ACL&#8217;lerine kadar t\u00fcm olas\u0131 noktalar\u0131 sistematik bir \u015fekilde tarayarak bu gizemi \u00e7\u00f6zece\u011fiz. Amac\u0131m\u0131z, sadece sorunu bulmak de\u011fil, ayn\u0131 zamanda benzer durumlar i\u00e7in standart bir hata ay\u0131klama s\u00fcreci olu\u015fturmakt\u0131r. Haydi, hata ay\u0131klama yolculu\u011fumuza ba\u015flayal\u0131m!<\/p>\n<h2>Ad\u0131m Ad\u0131m Hata Ay\u0131klama S\u00fcreci: 40 Saniyelik Gecikmeyi Nas\u0131l Tespit Ettik?<\/h2>\n<p>40 saniyelik gecikme gizemini \u00e7\u00f6zmek i\u00e7in sistematik bir hata ay\u0131klama s\u00fcrecine ihtiyac\u0131m\u0131z vard\u0131. AWS ekosisteminin sundu\u011fu g\u00fc\u00e7l\u00fc izleme ve g\u00fcnl\u00fckleme ara\u00e7lar\u0131n\u0131 kullanarak, sorunun k\u00f6kenini ad\u0131m ad\u0131m ortaya \u00e7\u0131kard\u0131k.<\/p>\n<h3>CloudWatch Metrikleri ve ALB Eri\u015fim Kay\u0131tlar\u0131n\u0131n \u0130ncelenmesi<\/h3>\n<p>\u0130lk dura\u011f\u0131m\u0131z AWS CloudWatch oldu. ALB&#8217;nin performans metrikleri, genellikle ilk i\u015faretleri veren yerdir. CloudWatch&#8217;ta a\u015fa\u011f\u0131daki metrikleri inceledik:<\/p>\n<ul>\n<li><code>HTTPCode_Target_5XX_Count<\/code> ve <code>HTTPCode_Target_4XX_Count<\/code>: Hedef sunuculardan d\u00f6nen HTTP hata kodlar\u0131. Bunlar y\u00fcksekse, hedeflerde bir sorun oldu\u011funu g\u00f6sterir.<\/li>\n<li><code>TargetConnectionErrorCount<\/code>: ALB&#8217;nin hedeflerine TCP ba\u011flant\u0131s\u0131 kurarken kar\u015f\u0131la\u015ft\u0131\u011f\u0131 hata say\u0131s\u0131. Bu metrik y\u00fcksekse, ALB ile hedefler aras\u0131nda bir a\u011f veya g\u00fcvenlik grubu sorunu oldu\u011funu d\u00fc\u015f\u00fcnd\u00fcr\u00fcr.<\/li>\n<li><code>HealthyHostCount<\/code> ve <code>UnHealthyHostCount<\/code>: Hedef grubundaki sa\u011fl\u0131kl\u0131 ve sa\u011fl\u0131ks\u0131z hedeflerin say\u0131s\u0131. Sa\u011fl\u0131ks\u0131z hedefler varsa, trafi\u011fin do\u011fru y\u00f6nlendirilmedi\u011fini g\u00f6sterir.<\/li>\n<li><code>TargetResponseTime<\/code>: Hedef sunucular\u0131n isteklere yan\u0131t verme s\u00fcresi. Bu y\u00fcksekse, hedeflerin kendisinde bir performans sorunu vard\u0131r.<\/li>\n<li><code>Latency<\/code>: ALB&#8217;nin istemciye yan\u0131t vermesi i\u00e7in ge\u00e7en s\u00fcre. Bu metrik, genel gecikmeyi g\u00f6sterir.<\/li>\n<\/ul>\n<p>Vakam\u0131zda, <code>Latency<\/code> metriklerinin y\u00fcksek oldu\u011funu, ancak <code>TargetResponseTime<\/code>&#8216;\u0131n normal aral\u0131klarda oldu\u011funu g\u00f6zlemledik. Bu durum, gecikmenin hedeflere istek ula\u015ft\u0131ktan sonra de\u011fil, ALB&#8217;nin hedefe ula\u015fmaya \u00e7al\u0131\u015f\u0131rken veya iste\u011fi hedefe y\u00f6nlendirirken ya\u015fand\u0131\u011f\u0131n\u0131 g\u00f6steriyordu. En \u00e7arp\u0131c\u0131 bulgu ise <code>TargetConnectionErrorCount<\/code> metriklerinin aniden y\u00fckselmesiydi. Bu, ALB&#8217;nin hedef sunucularla ba\u011flant\u0131 kurmakta zorland\u0131\u011f\u0131n\u0131 net bir \u015fekilde ortaya koyuyordu. Ancak, hedeflerin <code>HealthyHostCount<\/code>&#8216;u hala y\u00fcksekti, bu da sa\u011fl\u0131k kontrollerinin bu ba\u011flant\u0131 sorununu hemen yakalamad\u0131\u011f\u0131na i\u015faret ediyordu.<\/p>\n<p>Ard\u0131ndan, ALB eri\u015fim g\u00fcnl\u00fcklerini (Access Logs) inceledik. Bu g\u00fcnl\u00fckler, ALB&#8217;ye gelen her iste\u011fin detayl\u0131 bir kayd\u0131n\u0131 tutar ve a\u015fa\u011f\u0131daki gibi bilgiler i\u00e7erir:<\/p>\n<pre><code class=\"language-text\">\n    http 2023-10-27T10:00:00.123456Z app\/my-alb\/1234567890 192.0.2.1:12345 10.0.0.1:80 0.040 0.040 0.040 503 - 1000 1000 \"GET http:\/\/example.com:80\/login HTTP\/1.1\" \"Mozilla\/5.0\" - - arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup\/my-tg\/abcdefghijk \"Root=1-653a1b2c-3d4e5f6g7h8i9j0k\" \"example.com\" \"arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup\/my-tg\/abcdefghijk\" \"Error\" -\n    <\/pre>\n<p><\/code><\/p>\n<p>Bu g\u00fcnl\u00fcklerdeki anahtar alanlar:<\/p>\n<ul>\n<li><code>request_processing_time<\/code>: ALB'nin iste\u011fi al\u0131p hedefe g\u00f6ndermesi i\u00e7in ge\u00e7en s\u00fcre.<\/li>\n<li><code>target_processing_time<\/code>: Hedefin iste\u011fi al\u0131p yan\u0131t vermesi i\u00e7in ge\u00e7en s\u00fcre.<\/li>\n<li><code>response_processing_time<\/code>: Hedefin yan\u0131t\u0131n\u0131 al\u0131p istemciye g\u00f6ndermesi i\u00e7in ge\u00e7en s\u00fcre.<\/li>\n<li><code>elb_status_code<\/code>: ALB taraf\u0131ndan d\u00f6nd\u00fcr\u00fclen HTTP durumu.<\/li>\n<li><code>target_status_code<\/code>: Hedef taraf\u0131ndan d\u00f6nd\u00fcr\u00fclen HTTP durumu.<\/li>\n<\/ul>\n<p>Eri\u015fim g\u00fcnl\u00fcklerinde, \u00e7o\u011fu <code>request_processing_time<\/code> ve <code>response_processing_time<\/code> de\u011ferlerinin 40 saniyeye yak\u0131n oldu\u011funu g\u00f6rd\u00fck. <code>target_processing_time<\/code> ise bazen 0 veya \u00e7ok d\u00fc\u015f\u00fck de\u011ferlerdi, bu da iste\u011fin hedefe hi\u00e7 ula\u015fmad\u0131\u011f\u0131n\u0131 g\u00f6steriyordu. Dahas\u0131, <code>elb_status_code<\/code> genellikle 503 (Service Unavailable) veya 504 (Gateway Timeout) idi ve en \u00f6nemlisi, g\u00fcnl\u00fcklerdeki <code>error_reason<\/code> alan\u0131nda \"Error\" veya \"Connection timed out\" gibi ifadelerle kar\u015f\u0131la\u015ft\u0131k. Bu, ALB'nin hedef sunuculara TCP ba\u011flant\u0131s\u0131 kurmaya \u00e7al\u0131\u015f\u0131rken zaman a\u015f\u0131m\u0131 ya\u015fad\u0131\u011f\u0131n\u0131 do\u011fruluyordu.<\/p>\n<h3>G\u00fcvenlik Gruplar\u0131 ve A\u011f ACL'leri (NACL): Kritik Bir Kontrol Noktas\u0131<\/h3>\n<p><code>TargetConnectionErrorCount<\/code> metriklerindeki art\u0131\u015f ve eri\u015fim g\u00fcnl\u00fcklerindeki \"Connection timed out\" hatalar\u0131 bizi do\u011frudan a\u011f yap\u0131land\u0131rmas\u0131na y\u00f6nlendirdi. \u00d6zellikle AWS'de, sunuculara eri\u015fimi kontrol eden iki ana g\u00fcvenlik katman\u0131 vard\u0131r:<\/p>\n<ul>\n<li><strong>Security Groups (G\u00fcvenlik Gruplar\u0131):<\/strong> EC2 \u00f6rnekleri ve di\u011fer kaynaklar i\u00e7in sanal g\u00fcvenlik duvarlar\u0131d\u0131r. Gelen (inbound) ve giden (outbound) trafi\u011fi \u00f6rnek baz\u0131nda kontrol eder.<\/li>\n<li><strong>Network Access Control Lists (NACLs):<\/strong> Alt a\u011f d\u00fczeyinde \u00e7al\u0131\u015fan durumsuz g\u00fcvenlik duvarlar\u0131d\u0131r. Gelen ve giden t\u00fcm trafi\u011fi kontrol eder.<\/li>\n<\/ul>\n<p>Vakam\u0131zda, ALB'nin g\u00fcvenlik grubunun, hedef gruplar\u0131ndaki EC2 \u00f6rneklerinin g\u00fcvenlik grubuna 80 (HTTP) veya 443 (HTTPS) portundan gelen trafi\u011fe izin vermedi\u011fini tespit ettik. Yani, ALB'nin IP adres aral\u0131\u011f\u0131ndan (veya ALB'nin g\u00fcvenlik grubundan) gelen trafik, hedef sunucular\u0131n g\u00fcvenlik grubunda engelleniyordu. Bu durum, ALB'nin hedef sunucularla ba\u011flant\u0131 kurma giri\u015fimlerinin ba\u015far\u0131s\u0131z olmas\u0131na ve nihayetinde bir TCP ba\u011flant\u0131 zaman a\u015f\u0131m\u0131na neden oluyordu.<\/p>\n<p>Peki neden 40 saniye? \u00c7o\u011fu i\u015fletim sistemi (Linux, Windows) ve a\u011f cihaz\u0131, ba\u015far\u0131s\u0131z bir TCP ba\u011flant\u0131s\u0131 kurmaya \u00e7al\u0131\u015f\u0131rken varsay\u0131lan olarak bir dizi yeniden deneme (retries) yapar ve her yeniden deneme aras\u0131nda \u00fcstel bir geri \u00e7ekilme (exponential backoff) uygular. \u00d6rne\u011fin, ilk deneme 3 saniye, ikincisi 6 saniye vb. olabilir. Bu yeniden denemelerin toplam s\u00fcresi, genellikle 30-60 saniye aral\u0131\u011f\u0131nda bir TCP ba\u011flant\u0131 zaman a\u015f\u0131m\u0131na ula\u015f\u0131r. Bizim senaryomuzda, bu s\u00fcre toplamda 40 saniyeyi buluyordu.<\/p>\n<div class=\"expert-tip\">\n        <strong>Uzman \u0130pucu:<\/strong> ALB'nin hedeflere ba\u011flanmak i\u00e7in kulland\u0131\u011f\u0131 IP adres aral\u0131\u011f\u0131n\u0131 dinamik olarak bilmek zor olabilir. Bu nedenle, hedef sunucular\u0131n g\u00fcvenlik grubunda, ALB'nin kendi g\u00fcvenlik grubundan (<code>sg-xxxxxxxxxxxxxxxxx<\/code> \u015feklinde) gelen t\u00fcm HTTP\/HTTPS trafi\u011fine izin vermek en iyi uygulamad\u0131r. B\u00f6ylece ALB'nin IP'leri de\u011fi\u015fse bile ba\u011flant\u0131 sorunu ya\u015fanmaz.\n    <\/div>\n<p>Hemen ard\u0131ndan, hedef EC2 \u00f6rneklerinin g\u00fcvenlik grubuna gerekli gelen (inbound) kural\u0131 ekledik:<\/p>\n<pre><code class=\"language-json\">\n    {\n      \"IpProtocol\": \"tcp\",\n      \"FromPort\": 80,\n      \"ToPort\": 80,\n      \"IpRanges\": [],\n      \"SourceSecurityGroupId\": \"sg-alb-security-group-id\",\n      \"Description\": \"ALB'den HTTP trafi\u011fine izin ver\"\n    }\n    <\/pre>\n<p><\/code><\/p>\n<p>Benzer \u015fekilde, e\u011fer HTTPS kullan\u0131l\u0131yorsa, 443 portu i\u00e7in de ayn\u0131 kural\u0131 eklemek gereklidir. Bu de\u011fi\u015fikli\u011fi uygulad\u0131ktan sonra, 40 saniyelik gecikmeler an\u0131nda ortadan kalkt\u0131 ve kullan\u0131c\u0131lar uygulamaya sorunsuz bir \u015fekilde giri\u015f yapabildiler.<\/p>\n<h3>Hedef Grubun Sa\u011fl\u0131k Kontrolleri ve Ba\u011flant\u0131 Zaman A\u015f\u0131m\u0131 Ayarlar\u0131<\/h3>\n<p>Sorunun temel nedeni g\u00fcvenlik grubu olsa da, sa\u011fl\u0131k kontrollerinin bu durumu neden hemen tespit etmedi\u011fi sorusu hala ak\u0131llardayd\u0131. Hedef grubunun sa\u011fl\u0131k kontrol\u00fc ayarlar\u0131n\u0131 kontrol etti\u011fimizde, varsay\u0131lan de\u011ferlerin kullan\u0131ld\u0131\u011f\u0131n\u0131 g\u00f6rd\u00fck:<\/p>\n<ul>\n<li>Protokol: HTTP<\/li>\n<li>Port: trafik portu<\/li>\n<li>Path: \/<\/li>\n<li>Interval (Aral\u0131k): 30 saniye<\/li>\n<li>Timeout (Zaman A\u015f\u0131m\u0131): 5 saniye<\/li>\n<li>Unhealthy Threshold (Sa\u011fl\u0131ks\u0131z E\u015fik): 2<\/li>\n<li>Healthy Threshold (Sa\u011fl\u0131kl\u0131 E\u015fik): 2<\/li>\n<\/ul>\n<p>Bu durumda, ALB bir hedefin sa\u011fl\u0131ks\u0131z oldu\u011funu en az <code>(Interval + Timeout) * Unhealthy Threshold<\/code> yani <code>(30 + 5) * 2 = 70 saniye<\/code> sonra anlayacakt\u0131. Bu s\u00fcre zarf\u0131nda, hedefler teknik olarak \"sa\u011fl\u0131kl\u0131\" g\u00f6r\u00fcnmeye devam ediyordu ancak ALB onlara ba\u011flanmakta ba\u015far\u0131s\u0131z oldu\u011fu i\u00e7in <code>TargetConnectionErrorCount<\/code> art\u0131yordu ve istemciler 40 saniyelik gecikme ya\u015f\u0131yordu. E\u011fer sa\u011fl\u0131k kontrol\u00fc zaman a\u015f\u0131m\u0131n\u0131 (Timeout) daha agresif bir de\u011fere (\u00f6rne\u011fin 2 saniye) d\u00fc\u015f\u00fcr\u00fcp, aral\u0131\u011f\u0131 da k\u0131saltsayd\u0131k (\u00f6rne\u011fin 10 saniye), sorun daha erken tespit edilebilirdi. Ancak bu, sorunun k\u00f6k nedeni olan g\u00fcvenlik grubunu \u00e7\u00f6zmezdi.<\/p>\n<h3>VPC Ak\u0131\u015f Kay\u0131tlar\u0131 (Flow Logs) ve Uygulama G\u00fcnl\u00fckleri<\/h3>\n<p>Ek bir do\u011frulama ve gelecekteki hata ay\u0131klama i\u00e7in VPC Ak\u0131\u015f Kay\u0131tlar\u0131 (Flow Logs) ve uygulama sunucusu g\u00fcnl\u00fcklerini (Application Logs) de inceledik.<\/p>\n<p>VPC Ak\u0131\u015f Kay\u0131tlar\u0131, VPC'nizdeki a\u011f aray\u00fczlerinden ge\u00e7en t\u00fcm IP trafi\u011fi hakk\u0131nda bilgi toplar. G\u00fcvenlik grubu hatas\u0131n\u0131 do\u011frulamak i\u00e7in m\u00fckemmel bir ara\u00e7t\u0131r. Flow Logs'u etkinle\u015ftirip analiz etti\u011fimizde, ALB'den gelen ve hedef sunuculara gitmesi gereken ba\u011flant\u0131 denemelerinin \"REJECT\" edildi\u011fini a\u00e7\u0131k\u00e7a g\u00f6rd\u00fck. Bu, g\u00fcvenlik grubumuzdaki kural\u0131n eksik oldu\u011funu kesin olarak kan\u0131tlad\u0131.<\/p>\n<pre><code class=\"language-text\">\n    2 123456789012 eni-0abcdef1234567890 10.0.0.10 10.0.0.1 80 54321 6 100 100 1678886400 1678886460 REJECT OK\n    <\/pre>\n<p><\/code><\/p>\n<p>Bu kay\u0131t, <code>10.0.0.10<\/code> IP adresinden (ALB'nin bir ENI'si) <code>10.0.0.1<\/code> IP adresine (hedef EC2) 80 portu \u00fczerinden gelen TCP trafi\u011finin <code>REJECT<\/code> edildi\u011fini g\u00f6steriyordu.<\/p>\n<p>Uygulama sunucular\u0131n\u0131n kendi loglar\u0131na bakt\u0131\u011f\u0131m\u0131zda ise, gecikme ya\u015fanan 40 saniyelik s\u00fcre boyunca hi\u00e7bir giri\u015f iste\u011finin sunuculara ula\u015fmad\u0131\u011f\u0131n\u0131 g\u00f6rd\u00fck. Bu da ALB ile uygulama sunucular\u0131 aras\u0131ndaki ileti\u015fimin tamamen t\u0131kand\u0131\u011f\u0131n\u0131 bir kez daha do\u011frulad\u0131.<\/p>\n<p>Bu kapsaml\u0131 hata ay\u0131klama s\u00fcreci, sorunun k\u00f6kenini net bir \u015fekilde ortaya koydu: ALB ile hedef EC2 \u00f6rnekleri aras\u0131ndaki g\u00fcvenlik grubu kural\u0131 eksikli\u011fi. Bu tespitten sonra, \u00e7\u00f6z\u00fcm olduk\u00e7a basitti.<\/p>\n<h2>Sorunu \u00c7\u00f6zmek: 40 Saniyelik Giri\u015f Kabusuna Son Veren \u00c7\u00f6z\u00fcmler<\/h2>\n<p>Yukar\u0131daki kapsaml\u0131 hata ay\u0131klama s\u00fcrecinin ard\u0131ndan, 40 saniyelik giri\u015f gecikmelerine neden olan temel sorunu net bir \u015fekilde belirlemi\u015ftik: AWS Application Load Balancer (ALB) ile hedef sunucular (EC2 \u00f6rnekleri) aras\u0131ndaki a\u011f ba\u011flant\u0131s\u0131n\u0131n, \u00f6zellikle de g\u00fcvenlik gruplar\u0131 seviyesinde engellenmesi. Bu, ALB'nin hedeflere TCP ba\u011flant\u0131s\u0131 kurmaya \u00e7al\u0131\u015f\u0131rken zaman a\u015f\u0131m\u0131 ya\u015famas\u0131na ve dolay\u0131s\u0131yla kullan\u0131c\u0131lara gecikmeli veya hatal\u0131 yan\u0131tlar d\u00f6nmesine neden oluyordu.<\/p>\n<p>\u00c7\u00f6z\u00fcm olduk\u00e7a basitti ancak tespiti detayl\u0131 bir analizi gerektirdi. \u0130\u015fte att\u0131\u011f\u0131m\u0131z ad\u0131mlar:<\/p>\n<ol>\n<li><strong>Hedef EC2 G\u00fcvenlik Grubu Kural\u0131n\u0131n D\u00fczeltilmesi:<\/strong>\n<p>ALB'nin hedef gruplar\u0131nda bulunan EC2 \u00f6rneklerinin ba\u011fl\u0131 oldu\u011fu g\u00fcvenlik grubuna yeni bir gelen (inbound) kural ekledik. Bu kural, ALB'nin kendi g\u00fcvenlik grubundan gelen trafi\u011fe belirli portlar \u00fczerinden izin veriyordu. Genellikle HTTP i\u00e7in 80, HTTPS i\u00e7in 443 portlar\u0131d\u0131r.<\/p>\n<p><strong>Uygulanan Kural \u00d6rne\u011fi (AWS Konsolu \u00fczerinden veya IaC ile):<\/strong><\/p>\n<ul>\n<li><strong>T\u00fcr (Type):<\/strong> HTTP (veya HTTPS)<\/li>\n<li><strong>Protokol (Protocol):<\/strong> TCP<\/li>\n<li><strong>Port Aral\u0131\u011f\u0131 (Port Range):<\/strong> 80 (veya 443)<\/li>\n<li><strong>Kaynak (Source):<\/strong> ALB'nin G\u00fcvenlik Grubu ID'si (\u00f6rne\u011fin, <code>sg-abcdefg1234567890<\/code>)<\/li>\n<li><strong>A\u00e7\u0131klama (Description):<\/strong> ALB'den gelen uygulama trafi\u011fine izin ver.<\/li>\n<\/ul>\n<p>Bu de\u011fi\u015fiklik, ALB'nin hedeflerle sorunsuz bir \u015fekilde TCP ba\u011flant\u0131s\u0131 kurmas\u0131n\u0131 sa\u011flad\u0131. G\u00fcvenlik grubunu do\u011fru \u015fekilde yap\u0131land\u0131rd\u0131\u011f\u0131m\u0131zda, <code>TargetConnectionErrorCount<\/code> metrikleri an\u0131nda s\u0131f\u0131ra d\u00fc\u015ft\u00fc ve 40 saniyelik gecikmeler ortadan kalkt\u0131.<\/p>\n<\/li>\n<li><strong>Sa\u011fl\u0131k Kontrol\u00fc Zaman A\u015f\u0131m\u0131 Ayarlar\u0131n\u0131n Optimize Edilmesi (Opsiyonel ama \u00d6nemli):<\/strong>\n<p>Her ne kadar ana sorun g\u00fcvenlik grubundan kaynaklansa da, gelecekte benzer a\u011f ba\u011flant\u0131 sorunlar\u0131n\u0131 daha h\u0131zl\u0131 tespit edebilmek ad\u0131na hedef grubunun sa\u011fl\u0131k kontrol\u00fc ayarlar\u0131n\u0131 optimize etmek faydal\u0131 olacakt\u0131r. Sa\u011fl\u0131k kontrol\u00fc zaman a\u015f\u0131m\u0131n\u0131 (Timeout) daha agresif bir de\u011fere d\u00fc\u015f\u00fcrmek ve aral\u0131\u011f\u0131 (Interval) k\u0131saltmak, ALB'nin sa\u011fl\u0131ks\u0131z hedefleri daha \u00e7abuk fark etmesini sa\u011flar.<\/p>\n<p>\u00d6nerilen De\u011fi\u015fiklikler:<\/p>\n<table class=\"styled-table\">\n<thead>\n<tr>\n<th>Parametre<\/th>\n<th>Varsay\u0131lan De\u011fer<\/th>\n<th>\u00d6nerilen Optimize Edilmi\u015f De\u011fer<\/th>\n<th>Neden?<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Interval (Aral\u0131k)<\/td>\n<td>30 saniye<\/td>\n<td>10-15 saniye<\/td>\n<td>Daha s\u0131k kontrol, sorunlar\u0131 daha h\u0131zl\u0131 tespit eder.<\/td>\n<\/tr>\n<tr>\n<td>Timeout (Zaman A\u015f\u0131m\u0131)<\/td>\n<td>5 saniye<\/td>\n<td>2-3 saniye<\/td>\n<td>Ba\u011flant\u0131 veya yan\u0131t gecikmesini daha \u00e7abuk yakalar.<\/td>\n<\/tr>\n<tr>\n<td>Unhealthy Threshold<\/td>\n<td>2<\/td>\n<td>2<\/td>\n<td>\u00c7ok d\u00fc\u015f\u00fck olmas\u0131 yanl\u0131\u015f pozitiflere yol a\u00e7abilir.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Bu optimize edilmi\u015f ayarlar, ALB'nin bir hedefin sa\u011fl\u0131ks\u0131z oldu\u011funu daha k\u0131sa s\u00fcrede (\u00f6rne\u011fin, <code>(10 + 2) * 2 = 24 saniye<\/code>) tespit etmesini sa\u011flayarak, kullan\u0131c\u0131lar\u0131n daha uzun s\u00fcre kesinti ya\u015famas\u0131n\u0131 engellerdi.<\/p>\n<\/li>\n<li><strong>VPC Ak\u0131\u015f Kay\u0131tlar\u0131n\u0131n S\u00fcrekli \u0130zlenmesi:<\/strong>\n<p>Gelecekteki a\u011f sorunlar\u0131n\u0131 proaktif olarak tespit etmek i\u00e7in VPC Ak\u0131\u015f Kay\u0131tlar\u0131n\u0131n etkin tutulmas\u0131 ve CloudWatch Alarmlar\u0131 ile \"REJECT\" edilen ba\u011flant\u0131lar\u0131n izlenmesi \u00f6nerilir. Bu, a\u011f katman\u0131ndaki sorunlar\u0131n daha b\u00fcy\u00fck performans d\u00fc\u015f\u00fc\u015flerine yol a\u00e7madan \u00f6nce tespit edilmesine yard\u0131mc\u0131 olur.<\/p>\n<\/li>\n<\/ol>\n<p>Bu ad\u0131mlar\u0131n uygulanmas\u0131yla birlikte, 40 saniyelik giri\u015f gecikmeleri tamamen ortadan kalkt\u0131. Kullan\u0131c\u0131lar art\u0131k uygulamaya an\u0131nda giri\u015f yapabiliyor ve i\u015f ak\u0131\u015flar\u0131nda herhangi bir kesinti ya\u015fam\u0131yorlard\u0131. Bu vaka, da\u011f\u0131t\u0131k sistemlerdeki en temel a\u011f yap\u0131land\u0131rmalar\u0131n\u0131n bile ne kadar kritik olabilece\u011fini ve sistematik bir hata ay\u0131klama yakla\u015f\u0131m\u0131n\u0131n \u00f6nemini bir kez daha ortaya koydu.<\/p>\n<h2>\u0130leri D\u00fczey \u0130pu\u00e7lar\u0131 ve En \u0130yi Uygulamalar: ALB Performans\u0131n\u0131 Zirveye Ta\u015f\u0131mak<\/h2>\n<p>40 saniyelik giri\u015f kabusunu geride b\u0131rakt\u0131\u011f\u0131m\u0131za g\u00f6re, ALB'nin performans\u0131n\u0131 ve g\u00fcvenilirli\u011fini daha da art\u0131rmak i\u00e7in ileri d\u00fczey ipu\u00e7lar\u0131na ve en iyi uygulamalara odaklanabiliriz. Uygulaman\u0131z\u0131n \u00f6l\u00e7eklenebilir, g\u00fcvenli ve h\u0131zl\u0131 olmas\u0131n\u0131 sa\u011flamak i\u00e7in ALB'yi en verimli \u015fekilde kullanmak esast\u0131r.<\/p>\n<h3>1. SSL\/TLS Sonland\u0131rmas\u0131 (Offloading)<\/h3>\n<p>SSL\/TLS \u015fifrelemesi ve \u015fifre \u00e7\u00f6zme i\u015flemleri CPU yo\u011fun g\u00f6revlerdir. ALB, bu i\u015flemi kendisi \u00fcstlenerek (SSL Offloading), EC2 \u00f6rneklerinizin CPU kaynaklar\u0131n\u0131 uygulaman\u0131z\u0131n ana i\u015f y\u00fck\u00fcne odaklanmas\u0131n\u0131 sa\u011flar. Bu, sunucular\u0131n\u0131zdaki performans\u0131 art\u0131r\u0131rken, TLS sertifikalar\u0131n\u0131n y\u00f6netimini de merkezi hale getirir.<\/p>\n<pre><code class=\"language-json\">\n    {\n      \"Protocol\": \"HTTPS\",\n      \"Port\": 443,\n      \"SslPolicy\": \"ELBSecurityPolicy-2016-08\",\n      \"Certificates\": [\n        {\n          \"CertificateArn\": \"arn:aws:acm:us-east-1:123456789012:certificate\/abcdef-1234-5678-90ab-cdef12345678\"\n        }\n      ],\n      \"DefaultActions\": [\n        {\n          \"Type\": \"forward\",\n          \"TargetGroupArn\": \"arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup\/my-tg\/abcdefghijk\"\n        }\n      ]\n    }\n    <\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki \u00f6rnekte, 443 portunda HTTPS dinleyicisi olu\u015fturularak ACM'deki bir sertifika kullan\u0131l\u0131yor ve varsay\u0131lan olarak belirli bir hedef grubuna y\u00f6nlendirme yap\u0131l\u0131yor.<\/p>\n<h3>2. Yap\u0131\u015fkan Oturumlar (Sticky Sessions)<\/h3>\n<p>Baz\u0131 uygulamalar, kullan\u0131c\u0131lar\u0131n belirli bir sunucuya ba\u011fl\u0131 kalmas\u0131n\u0131 gerektirir (\u00f6rne\u011fin, kullan\u0131c\u0131 oturum verilerinin sunucu taraf\u0131nda tutuldu\u011fu durumlar). ALB, bu ihtiyac\u0131 kar\u015f\u0131lamak i\u00e7in \"yap\u0131\u015fkan oturumlar\" \u00f6zelli\u011fini sunar. Bir kullan\u0131c\u0131 ilk kez bir hedefe ba\u011fland\u0131\u011f\u0131nda, ALB bir cookie ayarlar ve bu cookie sayesinde ayn\u0131 kullan\u0131c\u0131n\u0131n sonraki t\u00fcm istekleri ayn\u0131 hedefe y\u00f6nlendirilir.<\/p>\n<pre><code class=\"language-json\">\n    {\n      \"TargetGroupAttributes\": [\n        {\n          \"Key\": \"stickiness.enabled\",\n          \"Value\": \"true\"\n        },\n        {\n          \"Key\": \"stickiness.type\",\n          \"Value\": \"lb_cookie\"\n        },\n        {\n          \"Key\": \"stickiness.lb_cookie.duration_seconds\",\n          \"Value\": \"3600\"\n        }\n      ]\n    }\n    <\/pre>\n<p><\/code><\/p>\n<p>Bu \u00f6rnek, hedef grubunda LB tabanl\u0131 \u00e7erezlerle 1 saat s\u00fcreli yap\u0131\u015fkan oturumlar\u0131 etkinle\u015ftirir.<\/p>\n<h3>3. Dinamik Port E\u015fleme ve Otomatik \u00d6l\u00e7ekleme<\/h3>\n<p>ECS ve EKS gibi konteyner servisleriyle \u00e7al\u0131\u015f\u0131rken, her bir konteynerin dinamik olarak farkl\u0131 bir porta atanmas\u0131n\u0131 sa\u011flayan dinamik port e\u015flemeyi kullan\u0131n. Bu, birden fazla g\u00f6revi tek bir EC2 \u00f6rne\u011finde \u00e7al\u0131\u015ft\u0131rman\u0131za olanak tan\u0131r. Ayr\u0131ca, ALB'nin hedef gruplar\u0131n\u0131 Auto Scaling gruplar\u0131yla entegre ederek, talebe g\u00f6re otomatik olarak yeni \u00f6rnekler ekleyip \u00e7\u0131karabilirsiniz.<\/p>\n<h3>4. WAF Entegrasyonu<\/h3>\n<p>Uygulaman\u0131z\u0131 yayg\u0131n web sald\u0131r\u0131lar\u0131na (SQL injection, XSS vb.) kar\u015f\u0131 korumak i\u00e7in ALB'yi AWS WAF ile entegre edin. Bu, k\u00f6t\u00fc niyetli trafi\u011fi uygulaman\u0131za ula\u015fmadan \u00f6nce engelleyerek ek bir g\u00fcvenlik katman\u0131 sa\u011flar.<\/p>\n<h3>5. Geli\u015fmi\u015f Y\u00f6nlendirme Kurallar\u0131<\/h3>\n<p>ALB, host tabanl\u0131, yol tabanl\u0131 veya sorgu dizesi tabanl\u0131 y\u00f6nlendirme kurallar\u0131 olu\u015fturman\u0131za olanak tan\u0131r. Bu sayede, tek bir ALB arkas\u0131nda birden fazla mikro servisi veya farkl\u0131 uygulamalar\u0131 bar\u0131nd\u0131rabilirsiniz. \u00d6rne\u011fin, <code>\/api<\/code> yolunu bir API servisine, <code>\/blog<\/code> yolunu ise bir blog uygulamas\u0131na y\u00f6nlendirebilirsiniz.<\/p>\n<h3>6. Bo\u015fta Ba\u011flant\u0131 Zaman A\u015f\u0131m\u0131 (Idle Timeout) Ayarlar\u0131<\/h3>\n<p>ALB'nin bo\u015fta ba\u011flant\u0131 zaman a\u015f\u0131m\u0131 varsay\u0131lan olarak 60 saniyedir. E\u011fer uygulaman\u0131z uzun s\u00fcreli ba\u011flant\u0131lara ihtiya\u00e7 duyuyorsa (\u00f6rne\u011fin, WebSocket tabanl\u0131 uygulamalar), bu de\u011feri art\u0131rman\u0131z gerekebilir. Ancak gereksiz yere y\u00fcksek tutmak, kaynaklar\u0131 bo\u015fta tutabilir.<\/p>\n<h3>7. Mobil Cihazlar \u0130\u00e7in Duyarl\u0131 Tasar\u0131m: Modern Web Deneyimi<\/h3>\n<p>ALB do\u011frudan mobil uyumlulu\u011fu y\u00f6netmez ancak web uygulaman\u0131z\u0131n mobil cihazlarda da sorunsuz \u00e7al\u0131\u015fmas\u0131, ALB'nin sa\u011flad\u0131\u011f\u0131 performans ve d\u00fc\u015f\u00fck gecikme ile desteklenmelidir. Modern web uygulamalar\u0131 i\u00e7in mobil cihazlarda iyi bir deneyim sunmak hayati \u00f6nem ta\u015f\u0131r. Bu, CSS Media Query'leri ile duyarl\u0131 tasar\u0131m (responsive design) yaparak sa\u011flan\u0131r. \u0130\u015fte k\u00fc\u00e7\u00fck bir \u00f6rnek:<\/p>\n<pre><code class=\"language-html\">\n    <!DOCTYPE html><body>\n        <div class=\"container\">\n            <h2 class=\"header\">Mobil Uyumlu Uygulamam\u0131z<\/h2>\n            <p class=\"content\">\n                Bu \u00f6rnek, web sayfam\u0131z\u0131n farkl\u0131 ekran boyutlar\u0131na nas\u0131l adapte oldu\u011funu g\u00f6stermektedir. \n                Ekran geni\u015fli\u011fi 600 pikselin alt\u0131na d\u00fc\u015ft\u00fc\u011f\u00fcnde, stil kurallar\u0131 de\u011fi\u015ferek mobil cihazlarda \n                daha iyi bir g\u00f6r\u00fcn\u00fcm ve kullan\u0131labilirlik sunar. AWS ALB, h\u0131zl\u0131 ve d\u00fc\u015f\u00fck gecikmeli \n                eri\u015fim sa\u011flayarak bu deneyimi g\u00fc\u00e7lendirir.\n            <\/p>\n            <p class=\"content\">\n                Uygulaman\u0131z\u0131n performans\u0131n\u0131n mobil deneyimi \u00fczerindeki etkisi g\u00f6z ard\u0131 edilemez. \n                ALB'nin do\u011fru yap\u0131land\u0131r\u0131lmas\u0131, mobil kullan\u0131c\u0131lar\u0131n da h\u0131zl\u0131 ve kesintisiz bir deneyim \n                ya\u015famas\u0131n\u0131 sa\u011flar.\n            <\/p>\n        <\/div>\n    <\/body>\n    <\/html>\n    <\/pre>\n<p><\/code><\/p>\n<p>Bu CSS medya sorgusu, ekran geni\u015fli\u011fi 600 pikselin alt\u0131na d\u00fc\u015ft\u00fc\u011f\u00fcnde <code>.container<\/code> ve <code>.header<\/code> gibi \u00f6\u011felerin stillerini de\u011fi\u015ftirerek mobil cihazlar i\u00e7in optimize edilmi\u015f bir d\u00fczen sunar. ALB'nin d\u00fc\u015f\u00fck gecikme s\u00fcresi, bu duyarl\u0131 tasar\u0131m\u0131n mobil cihazlarda bile h\u0131zl\u0131 y\u00fcklenmesine ve etkile\u015fimli olmas\u0131na yard\u0131mc\u0131 olur.<\/p>\n<div class=\"expert-tip\">\n        <strong>Uzman \u0130pucu:<\/strong> ALB'nin DNS ad\u0131n\u0131 do\u011frudan bir IP adresiyle de\u011fi\u015ftirmekten ka\u00e7\u0131n\u0131n. ALB'ler dinamik olarak \u00f6l\u00e7eklenebilir ve IP adresleri de\u011fi\u015febilir. Her zaman DNS ad\u0131n\u0131 kullan\u0131n. Ayr\u0131ca, DNS \u00e7\u00f6z\u00fcmleme s\u00fcresini k\u0131saltmak i\u00e7in istemci taraf\u0131nda DNS TTL (Time To Live) de\u011ferlerini optimize edin.\n    <\/div>\n<p>Bu ileri d\u00fczey ipu\u00e7lar\u0131 ve en iyi uygulamalar, ALB'nizi yaln\u0131zca hata ay\u0131klanm\u0131\u015f de\u011fil, ayn\u0131 zamanda y\u00fcksek performansl\u0131, g\u00fcvenli ve esnek bir yap\u0131 ta\u015f\u0131 haline getirecektir. Bu sayede, gelecekteki performans sorunlar\u0131n\u0131 minimize ederken, kullan\u0131c\u0131lar\u0131n\u0131za \u00fcst d\u00fczey bir deneyim sunmaya devam edebilirsiniz.<\/p>\n<h2>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h2>\n<h3>1. ALB'deki 40 saniyelik gecikme her zaman g\u00fcvenlik grubu hatas\u0131 m\u0131 anlam\u0131na gelir?<\/h3>\n<p>Hay\u0131r, her zaman g\u00fcvenlik grubu hatas\u0131 anlam\u0131na gelmez, ancak \u00e7ok yayg\u0131n bir k\u00f6k nedendir. 40 saniyelik gecikme, bir TCP ba\u011flant\u0131 zaman a\u015f\u0131m\u0131n\u0131n veya uygulaman\u0131n kendi i\u00e7inde yap\u0131land\u0131r\u0131lm\u0131\u015f bir zaman a\u015f\u0131m\u0131n\u0131n belirtisi olabilir. Di\u011fer olas\u0131 nedenler aras\u0131nda hedef sunucuda \u00e7ok yava\u015f bir uygulama yan\u0131t\u0131, veritaban\u0131 ba\u011flant\u0131 sorunlar\u0131 veya arka u\u00e7 hizmetlerinin a\u015f\u0131r\u0131 y\u00fcklenmesi yer alabilir. Ancak, <code>TargetConnectionErrorCount<\/code> ve ALB eri\u015fim g\u00fcnl\u00fcklerindeki \"Connection timed out\" gibi ibareler do\u011frudan a\u011f ba\u011flant\u0131 sorunlar\u0131na i\u015faret eder.<\/p>\n<h3>2. ALB sa\u011fl\u0131k kontrolleri neden ba\u011flant\u0131 hatas\u0131n\u0131 hemen yakalayamad\u0131?<\/h3>\n<p>Sa\u011fl\u0131k kontrollerinin <code>Interval<\/code> (aral\u0131k) ve <code>Timeout<\/code> (zaman a\u015f\u0131m\u0131) ayarlar\u0131 bu durumda kritik rol oynar. E\u011fer sa\u011fl\u0131k kontrol\u00fc intervali y\u00fcksekse (\u00f6rne\u011fin 30 saniye) ve unhealthy threshold da y\u00fcksekse, ALB'nin bir hedefin sa\u011fl\u0131ks\u0131z oldu\u011funu tespit etmesi uzun zaman alabilir. Ba\u011flant\u0131 hatas\u0131 an\u0131nda ya\u015fansa bile, ALB sa\u011fl\u0131k kontrolleri bu hatay\u0131 belirli say\u0131da tekrar g\u00f6rene kadar hedefleri sa\u011fl\u0131kl\u0131 olarak i\u015faretlemeye devam edebilir.<\/p>\n<h3>3. VPC Ak\u0131\u015f Kay\u0131tlar\u0131 (Flow Logs) ve ALB Eri\u015fim Kay\u0131tlar\u0131 aras\u0131ndaki temel fark nedir?<\/h3>\n<p><strong>ALB Eri\u015fim Kay\u0131tlar\u0131 (Access Logs)<\/strong>, ALB'ye ula\u015fan her HTTP\/HTTPS iste\u011fi hakk\u0131nda detayl\u0131 bilgi sa\u011flar. Kimin ne zaman, hangi URL'ye eri\u015fti\u011fini, ALB'nin ve hedefin yan\u0131t s\u00fcrelerini, HTTP durum kodlar\u0131n\u0131 g\u00f6sterir. Uygulama katman\u0131 sorunlar\u0131n\u0131 ve ALB'nin istemci ile hedef aras\u0131ndaki davran\u0131\u015f\u0131n\u0131 anlamak i\u00e7in kullan\u0131l\u0131r.<\/p>\n<p><strong>VPC Ak\u0131\u015f Kay\u0131tlar\u0131 (Flow Logs)<\/strong> ise VPC i\u00e7indeki a\u011f aray\u00fczlerinden ge\u00e7en IP trafi\u011fini kaydeder. Hangi IP adreslerinin hangi portlardan ileti\u015fim kurdu\u011funu, trafi\u011fin kabul edilip edilmedi\u011fini (ACCEPT\/REJECT) g\u00f6sterir. A\u011f g\u00fcvenlik grubu veya NACL gibi a\u011f katman\u0131 sorunlar\u0131n\u0131 tespit etmek i\u00e7in idealdir.<\/p>\n<h3>4. Gelecekte benzer performans sorunlar\u0131n\u0131 nas\u0131l \u00f6nleyebilirim?<\/h3>\n<p>Proaktif yakla\u015f\u0131mlar \u00e7ok \u00f6nemlidir:<\/p>\n<ol>\n<li><strong>Otomasyon (IaC):<\/strong> Altyap\u0131n\u0131z\u0131 kod olarak (Infrastructure as Code - Terraform, CloudFormation) tan\u0131mlayarak, tutarl\u0131 ve tekrarlanabilir yap\u0131land\u0131rmalar sa\u011flay\u0131n.<\/li>\n<li><strong>Kapsaml\u0131 \u0130zleme ve Uyar\u0131lar:<\/strong> CloudWatch metrikleri \u00fczerinde (<code>TargetConnectionErrorCount<\/code>, <code>5XX_Count<\/code>, <code>Latency<\/code>) \u00f6zel alarmlar kurun. VPC Ak\u0131\u015f Kay\u0131tlar\u0131n\u0131 izleyerek \"REJECT\" edilen ba\u011flant\u0131lar i\u00e7in uyar\u0131lar olu\u015fturun.<\/li>\n<li><strong>D\u00fczenli Denetimler:<\/strong> G\u00fcvenlik gruplar\u0131, NACL'ler, hedef grubu sa\u011fl\u0131k kontrolleri ve ALB bo\u015fta ba\u011flant\u0131 zaman a\u015f\u0131m\u0131 ayarlar\u0131n\u0131 periyodik olarak g\u00f6zden ge\u00e7irin.<\/li>\n<li><strong>Y\u00fck Testleri:<\/strong> Uygulaman\u0131z\u0131 periyodik olarak y\u00fck testlerinden ge\u00e7irerek potansiyel darbo\u011fazlar\u0131 ve performans sorunlar\u0131n\u0131 \u00fcretim ortam\u0131na \u00e7\u0131kmadan \u00f6nce tespit edin.<\/li>\n<\/ol>\n<h2>Sonu\u00e7: 40 Saniyelik Ders ve Gelecek Stratejiler<\/h2>\n<p>40 saniyelik giri\u015f gecikmesi vakas\u0131, modern bulut mimarilerinde hata ay\u0131klaman\u0131n karma\u015f\u0131kl\u0131\u011f\u0131n\u0131 ve ayn\u0131 zamanda sistematik bir yakla\u015f\u0131m\u0131n g\u00fcc\u00fcn\u00fc \u00e7arp\u0131c\u0131 bir \u015fekilde ortaya koydu. Bu deneyim, sadece bir teknik sorunu \u00e7\u00f6zmekle kalmad\u0131, ayn\u0131 zamanda ekiplerimize de\u011ferli dersler \u00f6\u011fretti ve gelecekteki stratejilerimizi \u015fekillendirdi. \u0130lk ba\u015fta karma\u015f\u0131k gibi g\u00f6r\u00fcnen bu sorun, CloudWatch metrikleri, ALB eri\u015fim g\u00fcnl\u00fckleri, VPC Ak\u0131\u015f Kay\u0131tlar\u0131 ve g\u00fcvenlik gruplar\u0131n\u0131n dikkatli bir \u015fekilde incelenmesiyle kolayca te\u015fhis edilebildi. Temel nedeni, ALB ile arka u\u00e7 sunucular\u0131 aras\u0131ndaki ileti\u015fimi engelleyen bir g\u00fcvenlik grubu kural\u0131 eksikli\u011fiydi.<\/p>\n<p>Bu t\u00fcr olaylardan \u00e7\u0131kar\u0131lacak en \u00f6nemli ders, herhangi bir performans sorununda, en temel a\u011f yap\u0131land\u0131rmalar\u0131ndan ba\u015flayarak uygulama katman\u0131na do\u011fru kademeli olarak ilerleyen bir hata ay\u0131klama s\u00fcrecini benimsemektir. Genellikle en karma\u015f\u0131k g\u00f6r\u00fcnen sorunlar, a\u011f veya g\u00fcvenlik katman\u0131ndaki basit bir g\u00f6zden ka\u00e7\u0131rma nedeniyle ortaya \u00e7\u0131kar. Ayr\u0131ca, proaktif izleme ve otomasyonun \u00f6nemi bu vakada bir kez daha vurguland\u0131. E\u011fer VPC Ak\u0131\u015f Kay\u0131tlar\u0131 aktif olsayd\u0131 veya <code>TargetConnectionErrorCount<\/code> i\u00e7in alarm kurulu olsayd\u0131, sorun \u00e7ok daha erken tespit edilebilirdi.<\/p>\n<p>Gelecek i\u00e7in stratejilerimiz, altyap\u0131 kodunu (Infrastructure as Code) daha da benimseyerek yap\u0131land\u0131rma tutarl\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamak, t\u00fcm kritik metrikler i\u00e7in kapsaml\u0131 izleme ve otomatik uyar\u0131 sistemleri kurmak ve d\u00fczenli olarak g\u00fcvenlik ve performans denetimleri yapmakt\u0131r. Bu sayede, benzer \"40 saniyelik kabuslar\u0131n\" tekrar ya\u015fanmas\u0131n\u0131n \u00f6n\u00fcne ge\u00e7ebilir ve kullan\u0131c\u0131lar\u0131m\u0131za kesintisiz, h\u0131zl\u0131 ve g\u00fcvenilir bir deneyim sunmaya devam edebiliriz.<\/p>\n<p>Unutmay\u0131n, bulut mimarileri s\u00fcrekli geli\u015fiyor ve bu sistemlerin derinlemesine anla\u015f\u0131lmas\u0131, sorunsuz bir operasyonel deneyim i\u00e7in vazge\u00e7ilmezdir. Bilgi payla\u015f\u0131m\u0131 ve s\u00fcrekli \u00f6\u011frenme k\u00fclt\u00fcr\u00fc, bu karma\u015f\u0131k ortamda ba\u015far\u0131l\u0131 olman\u0131n anahtar\u0131d\u0131r.<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Modern web uygulamalar\u0131nda performans ve kullan\u0131c\u0131 deneyimi kritik \u00f6neme sahiptir. Kullan\u0131c\u0131lar\u0131n 40 saniye s\u00fcren giri\u015fler gibi sorunlar ya\u015famas\u0131,&hellip;","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-35538","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>40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?<\/title>\n<meta name=\"description\" content=\"Modern web uygulamalar\u0131nda performans ve kullan\u0131c\u0131 deneyimi kritik \u00f6neme sahiptir. Kullan\u0131c\u0131lar\u0131n 40 saniye s\u00fcren giri\u015fler gibi sorunlar ya\u015famas\u0131, sadece hayal k\u0131r\u0131kl\u0131\u011f\u0131 yaratmakla kalmaz, ayn\u0131 zamanda i\u015f kayb\u0131na da yol a\u00e7abilir. Bu teknik makalede, AWS Application Load Balancer (ALB) kaynakl\u0131 olabilecek b\u00f6ylesi performans d\u00fc\u015f\u00fc\u015flerini ad\u0131m ad\u0131m nas\u0131l giderebilece\u011finizi ke\u015ffedeceksiniz.\" \/>\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\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?\" \/>\n<meta property=\"og:description\" content=\"Modern web uygulamalar\u0131nda performans ve kullan\u0131c\u0131 deneyimi kritik \u00f6neme sahiptir. Kullan\u0131c\u0131lar\u0131n 40 saniye s\u00fcren giri\u015fler gibi sorunlar ya\u015famas\u0131, sadece hayal k\u0131r\u0131kl\u0131\u011f\u0131 yaratmakla kalmaz, ayn\u0131 zamanda i\u015f kayb\u0131na da yol a\u00e7abilir. Bu teknik makalede, AWS Application Load Balancer (ALB) kaynakl\u0131 olabilecek b\u00f6ylesi performans d\u00fc\u015f\u00fc\u015flerini ad\u0131m ad\u0131m nas\u0131l giderebilece\u011finizi ke\u015ffedeceksiniz.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-30T20:01:09+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=\"25 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?\",\"datePublished\":\"2025-11-30T20:01:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/\"},\"wordCount\":4882,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/\",\"name\":\"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-30T20:01:09+00:00\",\"description\":\"Modern web uygulamalar\u0131nda performans ve kullan\u0131c\u0131 deneyimi kritik \u00f6neme sahiptir. Kullan\u0131c\u0131lar\u0131n 40 saniye s\u00fcren giri\u015fler gibi sorunlar ya\u015famas\u0131, sadece hayal k\u0131r\u0131kl\u0131\u011f\u0131 yaratmakla kalmaz, ayn\u0131 zamanda i\u015f kayb\u0131na da yol a\u00e7abilir. Bu teknik makalede, AWS Application Load Balancer (ALB) kaynakl\u0131 olabilecek b\u00f6ylesi performans d\u00fc\u015f\u00fc\u015flerini ad\u0131m ad\u0131m nas\u0131l giderebilece\u011finizi ke\u015ffedeceksiniz.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?\"}]},{\"@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":"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?","description":"Modern web uygulamalar\u0131nda performans ve kullan\u0131c\u0131 deneyimi kritik \u00f6neme sahiptir. Kullan\u0131c\u0131lar\u0131n 40 saniye s\u00fcren giri\u015fler gibi sorunlar ya\u015famas\u0131, sadece hayal k\u0131r\u0131kl\u0131\u011f\u0131 yaratmakla kalmaz, ayn\u0131 zamanda i\u015f kayb\u0131na da yol a\u00e7abilir. Bu teknik makalede, AWS Application Load Balancer (ALB) kaynakl\u0131 olabilecek b\u00f6ylesi performans d\u00fc\u015f\u00fc\u015flerini ad\u0131m ad\u0131m nas\u0131l giderebilece\u011finizi ke\u015ffedeceksiniz.","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\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/","og_locale":"tr_TR","og_type":"article","og_title":"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?","og_description":"Modern web uygulamalar\u0131nda performans ve kullan\u0131c\u0131 deneyimi kritik \u00f6neme sahiptir. Kullan\u0131c\u0131lar\u0131n 40 saniye s\u00fcren giri\u015fler gibi sorunlar ya\u015famas\u0131, sadece hayal k\u0131r\u0131kl\u0131\u011f\u0131 yaratmakla kalmaz, ayn\u0131 zamanda i\u015f kayb\u0131na da yol a\u00e7abilir. Bu teknik makalede, AWS Application Load Balancer (ALB) kaynakl\u0131 olabilecek b\u00f6ylesi performans d\u00fc\u015f\u00fc\u015flerini ad\u0131m ad\u0131m nas\u0131l giderebilece\u011finizi ke\u015ffedeceksiniz.","og_url":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-30T20:01:09+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"25 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?","datePublished":"2025-11-30T20:01:09+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/"},"wordCount":4882,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/","url":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/","name":"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-30T20:01:09+00:00","description":"Modern web uygulamalar\u0131nda performans ve kullan\u0131c\u0131 deneyimi kritik \u00f6neme sahiptir. Kullan\u0131c\u0131lar\u0131n 40 saniye s\u00fcren giri\u015fler gibi sorunlar ya\u015famas\u0131, sadece hayal k\u0131r\u0131kl\u0131\u011f\u0131 yaratmakla kalmaz, ayn\u0131 zamanda i\u015f kayb\u0131na da yol a\u00e7abilir. Bu teknik makalede, AWS Application Load Balancer (ALB) kaynakl\u0131 olabilecek b\u00f6ylesi performans d\u00fc\u015f\u00fc\u015flerini ad\u0131m ad\u0131m nas\u0131l giderebilece\u011finizi ke\u015ffedeceksiniz.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/40-saniyelik-girisler-yanlis-yapilandirilmis-bir-alb-nasil-hata-ayiklanir\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"40 Saniyelik Giri\u015fler: Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Bir ALB Nas\u0131l Hata Ay\u0131klan\u0131r?"}]},{"@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\/35538","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=35538"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35538\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=35538"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=35538"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=35538"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}