Sunucu nedir ve türleri
Sunucu, işi başkalarının isteklerine yanıt vermek olan bir bilgisayardır; bu yüzden hep açık kalır. Donanımı bilgisayarınızdan farklı bir tür değildir, görevi farklıdır. Site sunucusu dediğimiz şey aslında üst üste birkaç katmandır: donanım, işletim sistemi, web sunucusu ve sayfayı kuran program.
- Ders 7 / 12
- Başlangıç
- Ücretsiz, kayıt yok
Sunucu dediğimiz şey, siteden metale
- SiteZiyaretçinin gördüğü tek katman ve kendi yazdığınız tek katman.
- Uygulama ve çalışma ortamıSite kodunu çalıştırır ve sayfayı kurar. Burada PHP.
- Veritabanı ve bellek önbelleğiİçeriği ve ayarları tutarlar. Burada MariaDB ve Redis.
- Web sunucusuİsteği alır ve dosya hazırsa işi kendisi bitirir. Burada nginx.
- İşletim sistemi ve donanımTemel. Bu makinede grafik masaüstü bile yok.
Bu katmanlama bir öğrenme sırasıdır, bir standart değil. Paylaşımlı barındırmada alttaki üç katman size hiç erişilebilir değildir.
Son kontrol: Bu dersteki bilgiler ve araç adları bu tarihte kaynaklarıyla yeniden doğrulanır.
Sunucu evinizdeki bilgisayardan nasıl ayrılır?
Cins olarak neredeyse hiç. Bir sunucunun da işlemcisi, belleği ve diski vardır; aynı tanıdık komutları çalıştırır. Fark roldedir: sizin bilgisayarınız sizi bekler, sunucu ise dünyanın geri kalanını. Dizüstünüzü gece kapatırsınız; kapatılan bir sunucu artık sunucu değildir.
Diğer bütün farklar roldeki bu tek farktan doğar ve hiçbiri sihir değildir. Sunucunun genelde ekranı ve klavyesi yoktur, çünkü başında kimse oturmaz. Elektriği ve ağı çifttir, çünkü sönmesinin bir bedeli vardır. Donanımı, bir oyunda daha hızlı olan parçalara değil, aylarca duraksamadan çalışan parçalara uzanır. Üzerine kurulan işletim sistemi kopyası fazladan hiçbir şey taşımaz; bu sunucuda işletim sisteminin grafik masaüstü bile yok, her şey komutlarla yapılıyor.
Yaygın bir yanlış burada biter: sunucu belirli bir kutu değil, bir roldür. Odanın köşesindeki eski bir dizüstü de açık kalıp isteklere yanıt veriyorsa sunucudur. Bedeli hak ettiren şey kutu değil süreklilik: elektrik, ağ, soğutma ve gecenin üçünde yanıt veren biri.

Bir istek geldiğinde tam olarak kim yanıt verir?
Sunucu kelimesinin birkaç ayrı şeye bölündüğü yer burasıdır ve bu bölünmeyi görmeden hiçbir sunucu sorunu teşhis edilemez. Önce web sunucusu isteği alır; bu makinede o işi nginx 1.29.4 sürümü yapar. İstenen şey hazır bir dosyaysa işi orada bitirir ve başka hiçbir program başlatılmaz. Değilse isteği dil çalışma ortamına devreder; burada PHP 8.5.2 sürümü. O da site kodunu çalıştırır ve yolda veritabanına ve bellek önbelleğine sorar.
Bu iki yol arasındaki fark ölçülebilir ve rakamı sarsıcıdır. Bu sitenin ön sayfası, hazır bir dosyadan yanıtlandığında ilk baytının ulaşması en iyi durumda 23 milisaniye sürer. Aynı sayfa, yeniden kurulmaya zorlandığında en iyi durumda 139 milisaniye sürer. Yani o fazladan 116 milisaniyenin tamamı uygulama ve veritabanı katmanına aittir; aynı makinede, aynı ağda, aynı sayfada. Bir sayfanın önceden mi yoksa her ziyarette mi kurulduğu, bir WordPress sitesindeki en büyük tek hız kararıdır.
Aynı yolda daha az görülen iki katman daha var. Veritabanı, burada MariaDB 10.11.10 sürümü, içeriği ve ayarları tutar. Ve RAM'deki bir bellek önbelleği, burada Redis, yinelenen sorguların yanıtlarını saklar ki veritabanı diskten yeniden okumasın.
Neredeyse hiçbir öğreticinin söylemediği bir ayrıntı: bu makinedeki web sunucusu ile dil çalışma ortamı ağ üzerinden konuşmaz. Konuşmaları diskin kendisindeki bir soket dosyasından geçer ve veritabanı localhost üzerinde ayarlıdır. Yani bu konuşmaların hiçbiri ağda bir pakete dönüşmez. Bunu bildiğinizde yavaş bir sayfayı ağa yüklemekten vazgeçersiniz.
Bir isteğin yolu ve erken bitebileceği yer
-
1
İstek gelir
Web sunucusu onu alır. Henüz hiçbir program başlatılmadı.
-
2
Dosya hazır mı? Bitti
Web sunucusu kendisi yanıtlar. Bu sitede ilk bayta 23 milisaniye.
-
3
Değilse uygulama çalışır
Çalışma ortamı başlar ve site kodunu baştan yürütür.
-
4
Veritabanına sorar
Ve bellek önbelleğine, aynı soru diskten iki kez okunmasın diye.
-
5
Yanıt kurulur ve gönderilir
Bu sitede 139 milisaniye; kısa yoldan 116 fazla.
Buradaki iki sayı bu sunucudaki beş ölçümün en düşüğüdür ve makineye ve sayfanın kendisine bağlıdır; oran tekrarlanabilir, sayılar değil.
Paylaşımlı, sanal, ayrılmış ve bulut sunucular nasıl ayrılır?
Tek cümlede: her bir üst basamak size daha çok denetim verir ve omuzlarınıza tam o kadar sorumluluk yükler. Reklamlarda kaybolan, ikinci yarısıdır.
Paylaşımlı bir sunucuda onlarca site tek bir makinede oturur ve alttaki katmanları başkası bakar. Sizde yalnızca dosyalar ve bir veritabanı vardır. Ucuzdur ve çoğu küçük site için yeter; kusuru, gürültücü bir komşunun sizi etkilemesi ve istediğiniz ayarın hiç erişilebilir olmayabilmesidir. Sanal bir sunucuda tek bir fiziksel makine birkaç bağımsız makineye bölünür ve payınız güvence altındadır; karşılığında işletim sistemi sizindir, onu güncel tutmak da. Ayrılmış sunucu ise kutunun tamamıdır; bütün gücüyle ve bütün sorumluluğuyla. Bulut ise bir donanım türünden çok bir teslim modelidir: kaynakları saatlik alır ve geri verirsiniz; ansızın yükselip alçalan bir yük için kurulmuştur.
Müşteri sitelerini yıllarca barındırdıktan sonraki tutumumuz: neredeyse hiç kimse gücü için sanal sunucuya ihtiyaç duymaz. Taşınmanın gerçek nedeni genelde iki şeyden biridir: paylaşımlı barındırmada bulunmayan bir ayar gerekli hâle gelmiştir ya da komşular sitenin davranışını öngörülemez kılacak kadar gürültücü olmuştur. Bunlardan hiçbiri olmadıysa, daha çok para genelde daha çok hız satın almaz.
Bu tavsiyenin sınırını da açıkça söyleyelim: sanal sunucunun maliyeti yalnızca aylık kirası değil, onu güncel tutan kişinin zamanıdır. O kişi yoksa, bakımsız bir sanal sunucu paylaşımlı barındırmadan daha tehlikelidir, çünkü yamalı tutmak artık kimsenin işi değildir. Barındırma seçmek ve satın almak bu dersin konusu değil; barındırma seçme rehberinde ve paylaşımlı barındırma yazısında açılmıştır.
Her basamak denetim kadar sorumluluk da verir
-
1
Paylaşımlı
Yalnızca dosyalarınız ve bir veritabanınız var. Alttaki her katman başkasının işidir ve gürültücü komşu size ulaşana kadar başkasının sorunudur.
-
2
Sanal
Payınız güvence altında ve ayarlar sizin elinizde. Karşılığında işletim sistemi ve onu güncel tutmak bugünden itibaren sizin.
-
3
Ayrılmış
Kutunun tamamı sizindir ve üzerinde başka kimse yoktur. Maliyeti de kutunun tamamıdır; kullansanız da kullanmasanız da.
-
4
Bulut
Bir donanım türünden çok bir teslim modeli: kaynakları saatlik alır ve geri verirsiniz. Ansızın yükselip alçalan bir yük için kurulmuştur, trafiği düzenli bir site için değil.
Bu merdiven bir büyüme yolu değildir ve tırmanmak bir hedef değildir. Çoğu site ilk basamakta düzgün çalışır; nedensiz tırmanmak yalnızca bakım işi ekler.
Bir sunucu neden çöker?
Yaygın varsayım işlemcinin dolduğudur. Pratikte neredeyse hiç öyle değildir. Tükenen şey eşzamanlılıktır: herhangi bir anda site kodunu çalıştırmasına izin verilen işçi sayısı.
Tam da bu sunucuda o sayı ayarlanmış ve yirmi. Yani herhangi bir anda en fazla yirmi istek uygulama katmanına girebilir, yirmi birincisi beklemek zorundadır. Şimdi o yirmiden her birinin, ağır bir sorgu ya da yavaşlayan bir dış hizmet yüzünden, yüz milisaniye yerine üç saniye sürdüğünü varsayın. Kapasiteniz saniyede iki yüz istekten yaklaşık yediye düşer; üstelik işlemci ısınmadan bile. Kuyruk büyür, bekleme süresi yükselir ve dışarıdan bu tam olarak "sunucu çöktü" gibi görünür.
Az kişinin bildiği ikinci bir tavan daha var ve aynı yerde yazılı: her isteğin en fazla 180 saniyesi vardır ve sonra acımasızca kesilir. Bu iyi bir korumadır, çünkü bozuk bir istek bir işçiyi sonsuza dek tutamaz. Ama aynı zamanda yedek almak ya da büyük bir dosya içe aktarmak gibi uzun işlerin tam ortadan kesilmesi demektir, hem de net bir hata mesajı olmadan. Bir iş hep üç dakika civarında başarısız oluyorsa hata aramayın; tavana çarpmışsınızdır.
Bu iki sayının pratik sonucu tek bir basit kuraldır: sayfaları hızlandırmak yalnızca kullanıcı deneyimini iyileştirmez, sunucunun kapasitesini de katlar, çünkü her işçi daha erken serbest kalır. Bu yüzden farkını önceki bölümde gördüğünüz sayfa önbelleklemesi, bir hız iyileştirmesinden çok bir kapasite kararıdır.
Sunucunun işi olmayan nedir?
Bu bölüm, bu alanda paranın en yaygın çarçur edilme biçimini durdurmak için var. Daha güçlü bir sunucu ağır bir sayfayı hafifletmez. Bir sayfa üç megabayt görsel yüklüyor ve yirmi dış betik çağırıyorsa, sunucunun işlemcisini ikiye katlamak neredeyse hiçbir şeyi değiştirmez, çünkü darboğaz orada değildir. Sunucu yalnızca ilk baytı hızlı göndermekten sorumludur; işin geri kalanı ziyaretçinin tarayıcısında olur.
Sunucunun işi olmayan ve düzenli olarak ona yüklenen üç şey daha var. Site kodunun güvenliği: tamamen yamalı bir sunucu yine de açık bir eklenti çalıştırabilir. Veritabanının kalitesi: kötü bir sorgu daha iyi donanımda yalnızca biraz daha hızlı kötüdür. Ve yedekler: hiçbir sunucu kendiliğinden kendi yedeğini almaz ve bu, genelde artık çok geç olduğunda anlaşılan bir cümledir.
Doğru iş sırası şu: önce yavaşlığın nerede olduğunu bulun, sonra para harcayın. Darboğaz sayfanın kurulmasıysa yanıt önbellek ve veritabanıdır; darboğaz tarayıcıda olan bir şeyse hiçbir sunucu size yardım etmez ve iş site hızı izleğinde sürer.
Yapay zekayla hızlı yol
Sunucunun mu sitenin mi yavaş olduğunu anlamanın alışılmış yolu tahmin edip sonra barındırma değiştirmektir. Hızlı yol ise yanıtı zaten içinde taşıyan iki basit ölçüm almak ve dil modeline onları okumaktan başka bir şey yaptırmamaktır. Tamamı iki dakika sürer ve sonucu, neyin suçlu olabileceğini değil, zamanı hangi katmanın yediğini bilmenizdir.
- Normal sayfa için ilk bayta kadar geçen süreyi beş kez alın ve en düşüğünü tutun: curl -s -o /dev/null -w "%{time_starttransfer}\n" https://example.com/. En düşüğü tutuyoruz, çünkü tek bir ağ dalgalanması ortalamayı bozar.
- ?x=1234 gibi anlamsız bir parametreyle yineleyin ki sayfa önbelleği atlansın ve uygulama sayfayı gerçekten kurmak zorunda kalsın. Artık iki sayınız var ve aralarındaki fark tam olarak uygulama katmanının maliyetidir.
- İkisinin de başlıklarını alın (curl -sI), çünkü hangi katmanın yanıtladığını onlar söyler. Sonra dört parçayı birden aşağıdaki tarifle verin. Hızlı ve ucuz bir model yeter; her sınıftaki güncel seçim yapay zekâ referansımızda tutulur.
- Bir şey satın almadan önce yanıtı "sunucunun işi olmayan" bölümüyle tartın. İki sayı arasındaki fark küçükse darboğaz sunucuda değildir ve barındırma değiştirmek paranın çöpe atılmasıdır.
Kopyalamaya hazır şablon
Rolün bir web altyapısı uzmanı. Yalnızca aşağıdaki verilere göre karar ver ve bellekten hiçbir şey ekleme.
Adres: {sayfa adresi}
A) İlk bayta kadar süre, normal sayfa, beş ölçümün en düşüğü: {sayı} saniye
B) İlk bayta kadar süre, aynı sayfa anlamsız bir parametreyle, beş ölçümün en düşüğü: {sayı} saniye
A için başlıklar:
{buraya yapıştırın}
B için başlıklar:
{buraya yapıştırın}
Dört şey yaz:
1. B eksi A kaç ediyor ve bu fark hangi katmana ait.
2. A bir sayfa önbelleğinden mi yanıtlandı? Bunu gösteren başlığı alıntıla. Böyle bir başlık yoksa "anlaşılmıyor" yaz.
3. Bu iki sayıya göre darboğaz sayfanın kurulmasında mı. Tek cümle, gerekçesiyle.
4. Darboğaz sayfanın kurulmasındaysa, aynı sunucuda yapılabilecek ve barındırma değişikliği gerektirmeyen, etkisine göre sıralanmış iki iş yaz.
Kurallar: metinde olmayan hiçbir başlığı yazma. Sayı uydurma. Maddelerden biri için veri yetmiyorsa hangi ek ölçümün gerektiğini yaz.
Çıktıya güvenmeden önce: Üç şey asla yapıştırılmaz: veritabanı parolasını taşıyan site yapılandırma dosyası; iç yolları ve adresleri ele veren web sunucusu yapılandırması; ve genelde gerçek kullanıcıların adreslerini ve oturumlarını içeren ham günlük. Bu iş için hiçbiri gerekli değil; iki sayı ve iki başlık kümesi yeter ve girdinin bu kadar dar olması yöntemin değerinin yarısıdır.
Bu işte yapay zeka
Bu konuda dil modeli, eskiden pahalı olan bir şeyi ucuzlattı: okumayı. Tanımadığınız bir yapılandırma parçası ya da anlamını bilmediğiniz bir günlük satırı saniyeler içinde açıklanır ve bu tek adım, "burada ne olduğunu bilmiyorum" ile "neye bakacağımı biliyorum" arasındaki mesafeyi siler. Ama iş sunucuya dokunmaya geldiğinde, bir modelin belleği kurduğunuz tam sürümün belgelerinin yerini tutmaz.
Gerçekten işe yarayan araçlar
- Claude Komutların ham çıktısını okumakta ve bir yapılandırmayı satır satır açıklamakta iyidir; bu iki iş bu derste en büyük değeri taşır. İran, Anthropic'in desteklenen ülkeler listesinde değil; resmî bir kayıt ya da ödeme yolu yok.
- Gemini Notebook Bu dersin asıl püf noktası bu: kurduğunuz tam sürümün resmî belgelerini yükleyin ve soruyu o belgenin içinde sorun. Yanıt üreticinin metninden gelir, böylece bir ayarın adı artık tahmin olmaz. Bir Google hesabıyla çalışır ve İran erişilebilir bölgeler arasında değil.
Nerede geri teper
İki risk ve ikisi de tam olarak bu konuda ortaya çıkar. Birincisi, yapıştırdığınız şey. Bir WordPress sitesinin yapılandırma dosyası veritabanı parolasını taşır ve bir web sunucusu yapılandırması iç yolların eksiksiz haritasıdır; bunlar tanı için zararsız görünür, değildir. Google, Gemini verileriyle ilgili kendi sayfasında gizli bilgi girmemeniz gerektiğini açıkça söylüyor; yani üretici de bunu gerçek bir sınır sayıyor. İkincisi, var olmayan bir ayar. Model bir komutun yolunu ya da bir yapılandırma seçeneğinin adını tam bir kendinden eminlikle söyler ve o seçenek kurduğunuz sürümde yoktur ya da başka anlama gelir; Anthropic bu kendinden emin uydurmayı kendi belgelerinde halüsinasyon diye adlandırıp azaltmayı yazıyor. Canlı bir sunucuda bu hatanın maliyeti, bir sohbetteki yanlış yanıtın maliyetinden farklıdır, çünkü site düşer. Tutumumuz basit: kavramı modele, bir ayarın kesin adını o sürümün belgelerine sorun ve ne yaptığını anlamadığınız hiçbir komutu canlı sunucuda çalıştırmayın.
Kaynaklar: Google: Gemini Apps privacy and data Anthropic: reduce hallucinations Anthropic: supported countries Google: where Gemini Apps are available
Bu tavsiyenin sınırı
Bu ders kavramı kurar, sizi sunucu yöneticisi yapmaz. Bir sunucuyu kurmak ve sıkılaştırmak, güvenlik duvarı, güncellemeler ve izleme; her biri kendi başına bir iştir ve burada yok. Barındırma seçmek ve satın almak da bilerek dışarıda bırakıldı ve barındırma seçme rehberinde açıldı. Sayıların sınırını da açıkça söyleyelim: buradaki her rakam bu tek makinenin yapılandırmasından ve ölçümünden geliyor. İşçi sayısı, zaman tavanı ve sürümler başka her sunucuda farklıdır ve bunları doğrudan sizinkiyle karşılaştırmak sağlıklı değildir; aktarılan şey yöntemdir, rakam değil.
Kendi işimizden
Bu derstekilerin tamamı, bu sayfayı size az önce veren sunucunun yapılandırmasından ve ölçümünden geliyor; 7 Eylül 2026 tarihinde. Katmanlar şunlar: web sunucusu olarak nginx 1.29.4, çalışma ortamı olarak PHP 8.5.2, veritabanı olarak MariaDB 10.11.10 ve bellek önbelleği olarak Redis. Web sunucusu ile çalışma ortamı ağ üzerinden değil, diskin kendisindeki bir soket dosyasından konuşuyor ve veritabanı ayarı localhost. Uygulama katmanının eşzamanlılık tavanı yirmi işçi, bir isteğin zaman tavanı 180 saniye; ikisi de yapılandırmada yazılı, tahmin değil. Hız ölçümü ise şu: bu sitenin ön sayfası hazır bir dosyadan en iyi durumda 23 milisaniye, kurulmaya zorlanan aynı sayfa ise ilk bayta en iyi durumda 139 milisaniye sürüyor; her biri beş çalıştırmanın en düşüğü ve sonuca içerik dağıtım ağı karışmasın diye doğrudan sunucunun kendisinden alındı.
Gerçek devam soruları
Sunucum kaç eşzamanlı ziyaretçi kaldırır?
Bu sayı işlemciden değil, basit bir bölmeden çıkar: işçi sayısı bölü her isteğin sürdüğü zaman. Yirmi işçi ve istek başına yüz milisaniyeyle saniyede yaklaşık iki yüz istek; aynı yirmi işçi ve istek başına iki saniyeyle on. Bu yüzden her isteği kısaltmak, daha büyük sunucu almaktan etkilidir.
Sitem yeni barındırmada neden hızlanmadı?
Çünkü darboğaz muhtemelen sunucuda değildi. Sunucu yalnızca ilk bayta kadar geçen süreyi belirler; yavaşlık tarayıcıda çalışan görsellerin ve betiklerin ağırlığından geliyorsa dünyanın en iyi sunucusu bunu değiştirmez. Sınama, hızlı yol bölümündeki aynı iki ölçümdür: önbelleklenmiş ve önbelleklenmemiş sayfa arasındaki fark küçükse para yanlış yere gitmiştir.
Sunucu ile barındırma arasındaki fark nedir?
Sunucu makinedir, barındırma ise onun üzerinde satın aldığınız hizmettir. Barındırma satın aldığınızda makinenin kendisini değil, bir sunucunun bir payını bakımı ve desteğiyle birlikte kiralarsınız. Bu yüzden "barındırma aldım ama sunucu ayarlarına erişemiyorum" bir çelişki değildir; tam olarak satın aldığınız şeydir.