Kişisel deneyime dayalı olarak web sunucusunun çalışma modunun seçilmesi. Web uygulamalarının temelleri Bir web sunucusunun çalışması için gerekenler

Tarayıcınızın adres çubuğuna http://www.site/how-web-server-work/ yazıp Enter tuşuna bastığınızda Sitemizin bu sayfası ekrana gelecektir.

En temel düzeyde şu gerçekleşti: Tarayıcınız Web sunucusuyla bağlantı kurdu, sayfanın Web sayfasını almak için bir istek gönderdi ve bu isteği aldı.

Şimdi biraz daha detay:

URL üç bölümden oluşur:

1. Protokol (http)

2. Sunucu adı (www.site)

3. Sayfa adresleri (web-sunucusu-nasıl-çalışır)

Tarayıcı, www.site site adını şu dile çevirmek için alan adı sunucusuyla bağlantı kurar: IP adresi Sunucu makinesine bağlanmak için kullandığı . Tarayıcı daha sonra 80 numaralı bağlantı noktasında veya başka bir bağlantı noktasında belirtilen IP adresinden Web sunucusuna bağlantı kurar (bağlantı noktalarını bu makalenin ilerleyen kısımlarında ele alacağız).

HTTP protokolünü takiben, tarayıcı sunucuya bir istek göndererek http://www.site/how-web-server-work/ dosyasını talep etti.

dikkat kurabiye tarayıcıdan sunucuya da gönderilebilir.

Yanıt olarak sunucu oluşturuldu dinamik web sayfası ve bu sayfayı tarayıcınızda görüntülemek için HTML metnini geri gönderdim. Kurabiye ayrıca sayfa başlığındaki sunucudan tarayıcıya da gönderilebilir. Tarayıcı HTML etiketlerini okur ve ekranda Web sayfası çıktısını üretir.

internet

Peki “İnternet” nedir? İnternet, birbirine bağlı yüz milyonlarca bilgisayardan oluşur. bilgisayar ağı. Ağ, tüm bilgisayarların birbirleriyle iletişim kurmasını sağlar. Ev bilgisayarı en çok kullanarak internete bağlanabilir Farklı yollar ve cihazlar - telefon hattı için ilkel bir modemle başlayarak, üzerinden bir bağlantı yükleniyor yerel ağ (LAN) İnternet sağlayıcısıyla ( İSS).

Büyük İnternet servis sağlayıcıları tüm ülke veya bölge için fiber optik hatları destekler. Omurga ağları dünyanın her yerine döşenir ve fiber optik hatlar, denizaltı kabloları veya uydu bağlantıları aracılığıyla bağlanır. Böylece internetteki her bilgisayar internetteki diğer bilgisayarlara bağlıdır.

İstemciler ve Sunucular

Genel olarak İnternet'teki tüm bilgisayarlar iki kategoriye ayrılabilir: sunucular ve istemciler. Diğer makinelere hizmet sağlayan bilgisayarlar (Web sunucuları, FTP sunucuları, bulut hizmetleri gibi) sunucular. Bu hizmetlere bağlanmak için kullanılan makineler şunlardır: müşteriler. Bir arama sorgusu gerçekleştirmek veya hizmetlerinden herhangi birini kullanmak için Google'a bağlandığınızda, Google, isteğinize hizmet vermek için kendi bilgisayarını (muhtemelen güçlü bilgisayarlardan oluşan bir kümenin tamamını) sağlar. Yani sunucuyu Google sağlıyor. Makineniz ayrıca İnternet'teki birine de hizmet sağlayabilir. Bu nedenle, kullanıcı makinesi genellikle bir istemcidir, ancak gerektiğinde bir sunucu da olabilir.

Bir sunucu internette bir veya daha fazla hizmet sağlayabilir. Örneğin, bir sunucu bilgisayarda, Web sunucusu, e-posta sunucusu ve FTP sunucusu olarak görev yapmasına olanak tanıyan bir yazılım yüklü olabilir. Sunucuya katılan istemci bilgisayarlar, isteklerini paylaşımlı sunucu bilgisayarda çalışan özel yazılımlara yönlendirirler. Örneğin, bilgisayarınızda bir Web tarayıcısı kullanıyorsanız, sunucu bilgisayardaki Web sunucusuyla "konuşacaktır". E-posta uygulamanız sunucuyla "konuşacak" E-posta, ve benzeri.

IP adresleri

Tüm bu makineleri bir ağa bağlamak için İnternet'teki her bilgisayarın benzersiz bir adresi vardır. IP adresi. Tipik bir IP adresi şuna benzer:

Bir IP adresindeki dört sayıya denir sekizliçünkü 0 ile 255 arasında değerler veya 2 8 olası değer alabilirler.

İnternetteki her bilgisayarın kendine özgü bir IP adresi vardır. Sunucunun nadiren değişen statik bir IP adresi vardır. Bir ev bilgisayarında, makine ona bağlandığında genellikle ISP tarafından atanan bir IP adresi bulunur. Bu IP adresi bu oturum için benzersizdir ancak bir dahaki sefere farklı olabilir. Bu şekilde ISP, her istemci için değil, desteklediği her yönlendirici için yalnızca bir IP adresine ihtiyaç duyar.

Windows makinesindeyseniz, şu komutu kullanarak, geçerli IP adresiniz ve ana bilgisayar adınız da dahil olmak üzere, bilgisayarınızda İnternet ile ilgili birçok bilgiyi görüntüleyebilirsiniz. ip yapılandırması. UNIX makinesinde şunu yazmanız gerekir: nslookup V Komut satırı makinenin IP adresini görüntülemek için.

Alan isimleri

Çoğu kişi IP adreslerini oluşturan sayıların sırasını hatırlamakta güçlük çektiğinden ve IP adreslerinin bazen değiştirilmesi gerektiğinden, İnternet'teki tüm sunucular ve siteler de insan tarafından okunabilen adlara sahiptir. alan isimleri. Örneğin www.. Çoğumuzun hatırlaması daha kolaydır www.site hatırlamaktan daha 5.9.205.233

Www.site adı aslında üç bölümden oluşur:

1. World Wide Web adı (www). Aslında, açıkça "www" belirtmeden de yapabilirsiniz, ancak resmi olarak bu farklı bir ağ olacaktır.

2. Alan adı (Qriosity)

3. Üst düzey etki alanı bölgesinde (ru)

Alan isimleriüstesinden gelmek Alan adı kayıt şirketleri. Kayıt şirketleri üst düzey alan adları oluşturur ve alan adının üst düzey bölgesindeki tüm adların benzersiz olmasını sağlar. Kayıt şirketi ayrıca her alan adı için iletişim bilgilerini sağlar ve hizmeti başlatır kim, alan adının sahibini belirtir. Ana bilgisayar adı, alan adının sahibi tarafından oluşturulur.

Alan adı sunucuları

Bir dizi sunucu çağrıldı alan adı sunucuları(DNS), insanların okuyabildiği adları IP adresleriyle eşler. Bu sunucular basit ad ve IP adres veritabanları içerir ve İnternet'e dağıtılır. Çoğu bireysel şirket, İnternet servis sağlayıcısı ve büyük üniversite küçük DNS'yi destekler. Ayrıca Alan Adı Kayıt Kuruluşları tarafından sağlanan verileri kullanan merkezi DNS'ler de vardır.

http://www..site URL'sini girdiğinizde, bunu alan adı sunucusuna ilettiğinizde, sunucu www.site için doğru IP adresini döndürür. Doğru IP adresinin alınmasında bir dizi ad sunucusu rol oynayabilir.

O halde okuduklarımızı tekrarlayalım: İnternet, her biri benzersiz bir IP adresine sahip milyonlarca makineden oluşur. Bu arabaların çoğu sunucular. Bu, internetteki diğer bilgisayarlara hizmet verdikleri anlamına gelir. Bu sunucuların birçoğu e-posta sunucuları, Web sunucuları, FTP sunucuları, bulut hizmeti sunucularıdır.

Limanlar

Herhangi bir sunucu, numaralarını kullanarak hizmetlerini İnternet üzerinden kullanılabilir hale getirir. limanlar, sunucuda bulunan her hizmet için bir tane. Örneğin, bir Web sunucusunu ve bir FTP sunucusunu çalıştıran bir sunucu bilgisayar var. Web sunucusu genellikle 80 numaralı bağlantı noktasında bulunur ve FTP sunucusu 21 numaralı bağlantı noktasında bulunur. İstemciler hizmete belirli bir IP adresinden ve belirli bir bağlantı noktasından bağlanır.

En popüler hizmetlerin her biri önceden bilinen bir bağlantı noktası numarasında mevcuttur, ancak kendi bağlantı noktası numaranızı herhangi bir hizmete atayabilirsiniz.

Sunucu bir bağlantı noktasındaki bağlantıları kabul ederse dış dünya, eğer güvenlik duvarı portları korumuyorsa internetteki herhangi bir bilgisayardan önceden belirlenmiş bir porta bağlanıp hizmeti kullanabilirsiniz. Sizi örneğin Web Sunucusunu 80 numaralı bağlantı noktasında tutmaya zorlayan hiçbir şeyin olmadığını unutmayın. Sunucunuzu kurduysanız ve Web Sunucusu yazılımını üzerine yüklediyseniz, Web Sunucusunu 999 numaralı bağlantı noktasına veya kullanılmayan başka bir bağlantı noktasına yerleştirebilirsiniz. . Daha sonra, örneğin makineniz xxx.yyy.com olarak biliniyorsa, makinenize URL'den bağlanabilirler. http://xxx.yyy.com:999 -":999", Web sunucunuza erişilebilecek bağlantı noktası numarasını açıkça belirtir. Bağlantı noktası belirtilmemişse, tarayıcı, Web sunucusuna iyi bilinen bağlantı noktası 80 kullanılarak erişilebildiğini varsayar.

Protokoller

Bir istemci belirli bir bağlantı noktasındaki bir hizmete bağlandığında, hizmete özel bir ağ kullanarak erişir. protokol. Protokol programların veri alışverişinde bulunmasına olanak tanıyan bir dizi mantıksal düzeydeki kuraldır. İnternet üzerindeki bilgisayarlar arasında birlikte çalışmak için TCP/IP protokol ailesi kullanılır. Web sunucusu HTTP protokolünü kullanır.

Ek: Güvenlik

Bu açıklamadan Web Sunucusunun oldukça basit bir iş olduğunu görebilirsiniz. yazılım. GET komutunu kullanarak gönderilen dosyanın adını alır, dosyayı alır ve tarayıcıya gönderir. Bağlantı noktalarını işlemeye yönelik tüm kodu hesaba katsanız bile, basit bir Web sunucusu programı 500'den fazla kod satırından oluşmaz. Tam ölçekli Web sunucuları daha karmaşıktır ancak özünde çok basittirler.

Çoğu sunucu bir seviye belirler güvenlik hizmet süreçlerine. En basit seçenek, sunucuya erişim sağlamak için kullanıcı adı ve şifre istemektir. Daha gelişmiş sunucular, sunucu ile tarayıcı arasında şifreli bir bağlantı kurarak ek güvenlik sağlar; kesin bilgi(örn. kredi kartı numaraları) internet üzerinden gönderilebilir.

Bu aslında standart hizmet veren bir Web sunucusu için gerekli olan tek şeydir. statik web sayfaları. Statik sayfalar, web yöneticisinin kendisi düzenlemediği sürece değişmeyen sayfalardır.

Ek olarak: Dinamik sayfalar

Ne oldu dinamik internet sayfaları? Örneğin:

1. Herhangi bir ziyaretçi defteri, HTML biçiminde bir mesaj girmenize olanak tanır ve yeni ve eski girişleri otomatik olarak görüntüler.

2. Herhangi bir arama motoru, bir HTML sorgu formuna anahtar kelimeler girmenize olanak tanır ve ardından bu anahtar kelimeleri kullanarak bilgi aramaya dayalı olarak dinamik olarak bir sayfa oluşturur.

Tüm bu durumlarda, Web sunucusu yalnızca "dosya aramaktan" fazlasını yapar. Bilgileri işler ve isteklerin özelliklerine göre sayfalar oluşturur. Hemen hemen her durumda, Web sunucusu sözde Kodlar- Bu işlemi tamamlamak için PHP, Perl, Java ve diğer programlama dillerinde yazılmış program kodu.

Web sitemizin sayfaları da dinamik olup, PHP yardımı MySQL veritabanlarını kullanma.

Web sunucusu (Web sunucusu), istemcilerden bir web sitesine yönelik istekleri (HTTP istekleri) almak ve işlemekten sorumlu bir sunucudur. İstemciler genellikle çeşitli web tarayıcılarıdır. Buna yanıt olarak web sunucusu, çoğu durumda her türlü dosya, resim, medya akışı veya diğer verileri içerebilen bir HTML sayfasıyla birlikte istemcilere HTTP yanıtları gönderir.

Web sunucusu ayrıca ağ hizmetlerine, veritabanlarına, dosya erişimine, e-posta iletmeye ve diğer e-ticaret uygulamalarına yönelik isteklerin düzenlenmesinden sorumlu olan CGI, JSP, ASP ve PHP gibi komut dosyalarını yürütme işlevini de yerine getirir.

“Web sunucusu” terimi aynı zamanda bir web sunucusunun işlevlerini yerine getiren teknik cihazlar ve yazılımlar için de geçerlidir. Bu, bir grup kişisel bilgisayar arasından özel olarak seçilmiş bir bilgisayar veya üzerinde servis yazılımının kurulu olduğu ve çalıştığı bir iş istasyonu olabilir.

Temel olarak bir web tarayıcısı olan kullanıcının istemcisi, URL'ler tarafından tanımlanan kaynakları elde etmek için web sunucusuna istekte bulunur. Kaynaklar HTML sayfaları, dijital medya içeriği, medya akışları, çeşitli resimler, veri dosyaları veya müşterinin ihtiyaç duyduğu diğer verilerdir. Buna yanıt olarak web sunucusu istemciye istenen verileri gönderir. Bu değişim HTTP protokolü kullanılarak gerçekleşir.

HTTP (İngilizce: HyperText Transfer Protokolü), veri aktarımının uygulama katmanına yönelik bir ağ protokolüdür. HTTP protokolünün temel prensibi, ağ ile kullanıcı arasındaki etkileşimi sağlayan istemci-sunucu teknolojisidir.

Küçük bir kuruluş durumunda, bir web sunucusu aşağıdakilerden oluşacak entegre bir sistem olabilir: HTTP sunucusu - web sayfalarına yapılan istekler için kullanılır; FTP sunucusu – dosyaları İnternet üzerinden indirmek için kullanılır; NNTP sunucuları – haber gruplarına erişim sağlar; SMTP sunucusu – e-posta için.

Hikaye

İngiliz bilim adamı Tim Berners-Lee, ilk web sunucusunun mucidi olarak kabul ediliyor. 1980 yılından bu yana Avrupa Nükleer Araştırma Laboratuvarı'nda (Conseil Européen pour la Recherche Nucléaire, CERN) yazılım danışmanı olarak çalışarak geliştirme çalışmalarına başladı. Cenevre'de kendi ihtiyaçları için, verileri depolamak için rastgele ilişkilendirmeleri kullanan ve World Wide Web'in temelini oluşturan Inquire programını geliştirdi.

1989 yılında, CERN intraneti üzerinde çalışan Tim Berners-Lee, hiperlinklerle birbirine bağlanan hipermetin belgelerinin yayınlanmasından oluşan küresel bir hipermetin projesinin kurulmasını önerdi. Ona göre bu projenin uygulanması, CERN bilim adamlarının bilgi birleştirmesini, aramasını ve alışverişini kolaylaştıracaktır. Projeyi uygulamak için Tim Berners-Lee, asistanlarıyla birlikte URI ve URL tanımlayıcılarını, HTTP protokolünü ve HTML dilini icat etti. Tüm bu teknolojiler artık modern internette yaygın olarak kullanılmaktadır ve artık onlarsız yapılamaz.


Bu projenin sonucunda Berners-Lee, "httpd" adı verilen dünyanın ilk web sunucusunu ve ayrıca NeXT bilgisayarı için WorldWideWeb adı verilen dünyanın ilk hiper metin web tarayıcısını geliştirdi.

İlk web tarayıcısı, nesne yönelimli, çok görevli bir işletim sistemi olan NeXTSTEP platformunda çalışıyordu ve Interface Builder kullanılarak geliştirildi. Web tarayıcısının arayüzü çok basitti ve hemen hemen tüm bilgiler yalnızca birkaç resimle birlikte metin biçiminde görüntüleniyordu. Tim Berners-Lee, standart FTP protokolüne ek olarak kendi icat ettiği yeni HTTP protokolünü kullandı. 1991 ile 1993 yılları arasında Berners-Lee, yeni geliştirmelerinin teknik özelliklerini geliştirdi ve yayınladı: URI'ler ve URL'ler, HTTP protokolü ve HTML dili. Web tarayıcısı daha sonra, tarayıcının geliştirildiği işletim sistemi ve adıyla karıştırılmaması için "Nexus" olarak yeniden adlandırıldı.

Dünyanın ilk web sunucusu ve ilk web tarayıcısı NeXTSTEP kişisel bilgisayarında çalışıyordu; bu bilgisayar şu anda CERN (Microcosm) müzesinde sergileniyor.

Tim Berners-Lee, http://info.cern.ch adresinde dünyanın ilk web sitesine ev sahipliği yaptı; Bu site artık arşivlendi. İlk site 6 Ağustos 1991'de internette göründü. Bu web sitesinde şunlar verildi:

  • World Wide Web'in tanımı;
  • talimatlar doğru kurulum Web sunucusu;
  • bir web tarayıcısının nasıl satın alınacağı hakkında bilgi;
  • diğer teknik bilgiler.

Bu site aynı zamanda dünyanın ilk çevrimiçi rehberiydi. Berners-Lee, diğer sitelere olan bağlantıların bir listesini burada yayınladı ve bunu düzenli olarak güncelledi.

12 Aralık 1991'de dünyanın ilk web sunucusu Amerika Birleşik Devletleri'ndeki Stanford Doğrusal Hızlandırıcı Merkezine (SLAC) kuruldu.

Temel ve ek işlevler

Web sunucusunun tüm temel ve ek fonksiyonları:

  • TCP/IP ağ protokollerini kullanarak HTTP standardı aracılığıyla web tarayıcılarından isteklerin alınması;
  • Köprü metni içeren dosyaları veya herhangi bir belgeyi arama ve HTTP aracılığıyla tarayıcıya gönderme;
  • Taleplerin servisi ve işlenmesi, örneğin: mailto, FTP, Telnet, vb.;
  • Uygulama programlarının bir web sunucusunda başlatılması ve ardından CGI arayüz standardı aracılığıyla işlem parametrelerinin aktarılması ve geri gönderilmesi;
  • Navigasyon görüntü haritalarının (Görüntü haritası) işletimi ve bakımı;
  • Sunucunun yönetimi ve operasyonel yönetimi;
  • Kullanıcıların yetkilendirilmesi ve kimlik doğrulaması;
  • Çeşitli kaynaklara yönelik kullanıcı isteklerinin bir günlüğünün tutulması;
  • Web sayfalarının otomatik çalışması;
  • Dinamik olarak oluşturulan sayfalar için destek;
  • İstemcilerle güvenli bağlantılar için HTTPS protokolü desteği.

Web sunucusunun açıklaması

Web tarayıcıları, Köprü Metni Aktarım Protokolü'nü (HTTP) kullanarak web sunucularıyla iletişim kurar. TCP/IP protokolünü kullanarak bilgi göndermek için kullanılan basit bir istek ve yanıt protokolüdür. Web sunucusu isteği alır, dosyayı algılar, tarayıcıya gönderir ve ardından bağlantıyı kapatır. Sayfada bulunan grafik bilgileri de aynı şekilde işlenir. Daha sonra, internetten indirilen HTML belgesini kullanıcının monitöründe görüntüleme sırası web tarayıcısına gelir.

Web sunucuları, HTML sayfalarına ve grafiklere ek olarak, metin belgeleri, kelime işlemci belgeleri, video dosyaları ve ses bilgileri de dahil olmak üzere her türlü dosyayı depolayabilir. Bugün, kullanıcıların doldurduğu anketleri dikkate almazsanız, web trafiğinin büyük kısmı tek yönde iletilir - tarayıcılar dosyaları web sunucusundan okur. Ancak bu durum, HTTP 1.1 taslağında açıklanan ve dosyaların Web sunucusuna yazılmasına olanak tanıyan PUT yönteminin genel olarak benimsenmesiyle değişecektir. Günümüzde PUT yöntemi ağırlıklı olarak web sayfası oluşturan kullanıcılar tarafından kullanılmaktadır ancak gelecekte diğer kullanıcıların da bilgi merkezlerine geri bildirimde bulunmaları yararlı olabilir. PUT istekleri, dosyaları bir web sunucusuna normal POST yüklemekten çok daha basittir.

Çeşitli uygulamalar da çalışmalarını web sunucusu üzerinde gerçekleştirir; bunların en popülerleri arama motorları ve veritabanlarıyla iletişim kurmaya yönelik araçlardır. Bu uygulamaları geliştirmek için kullanılan standartlar arasında Ortak Ağ Geçidi Arayüzü (CGI), JavaScript kodlama dilleri ve Java programlama ve VisualBasic. CGI standardına ek olarak, bazı web sunucusu şirketleri, Microsoft ve Process Software AG tarafından oluşturulan Netscape Server API ve Internet Server API gibi uygulama programlama arayüzleri (API'ler) oluşturmuştur. Bu arayüzler geliştiricilerin belirli web sunucusu işlevlerine doğrudan erişmesine olanak tanır. Bazı web sunucuları, veritabanlarına bağlanmak için, çalışması için ileri düzeyde programlama bilgisi gerektirebilecek ara yazılımlar sağlar.

Temel arama işlevleri, kullanıcıların ihtiyaç duydukları bilgileri sıralamasına yardımcı olur ve veritabanı yardımcı programları, Web tarayıcısı kullanıcılarının bu bilgilere erişmesini sağlar.

Web Sunucusuna Genel Bakış

Bir web sunucusu seçme kriterleri farklı özellikleri içerebilir: kurulum, yapılandırma, sunucu yönetimi, yönetim, sunucuda barındırılan bilgilerin yönetimi, bu bilgilerin korunması, erişim kontrolü, uygulama geliştirme işlevleri ve performans.

Çoğu web sunucusunun kurulumu kolay ve hızlıdır.

Kurulum sürecinin en zor kısmı birden fazla alan adının tek bir alanda yapılandırılmasıdır. fiziksel cihaz veya başka bir deyişle sanal sunucuların organizasyonu.

Web sunucuları, web sitesinin genel organizasyonunu karakterize eden bilgi modülünü yönetmek için araçlara ve ayrıca iç ve dış hiper metin bağlantılarının doğruluğunu kontrol etmek için araçlara sahiptir. Netscape Communications'ın Novell Open Enterprise Server (OES) ile birlikte gelen ve isteğe bağlı olarak FastTrack Server ile birlikte sunulan LiveWire paketi, seçilen bir sayfaya ilişkin tüm bağlantıları listeleyen bir ana bilgisayar yönetimi yardımcı programına sahiptir. Bu yardımcı program aynı zamanda algıladığı tüm hatalı bağlantıların genel bir listesini de sağlar. O'Reilly & Associates'in Web Görünümü aynı işlevselliğe sahiptir ve tüm geçersiz bağlantıların kırmızıyla vurgulandığı ayrıntılı bir dosya ağacı görüntüleyebilir.

İçerik materyalini yönetmek için temel araçlar da vardır. Web yöneticileri, dosyaların nerede saklanacağını ve web sunucusuna erişen kullanıcılar tarafından bu dosyalara nasıl erişileceğini seçmelidir. Bu, mantıksal URL'ler ve fiziksel dosya dizinleri arasında eşleme gerektirir. Her yazılım bu işlemi kendine özgü bir şekilde gerçekleştirir.

Web sunucularının popülaritesinin artması ve intranetlerde kullanımının artmasıyla birlikte İnternet üzerindeki ticari faaliyet artmakta, dolayısıyla bilginin korunmasının önemi de artmaktadır. Çoğu zaman, web sunucusu güvenlik sistemleri günümüzün intranet'leri için ya aşırıya kaçıyor ya da yetersiz kalıyor. Şirket içerisinde belirli bilgilere erişimin kısıtlanması gerekiyorsa iletişim kanalları üzerinden iletilen şifresiz şifrelerin kullanılması ile şifresiz şifrelerin kullanılması arasında seçim yapılabilir. SSL protokolü(İngilizce: Güvenli Yuva Katmanı), şifreleri ve verileri şifrelemek için kullanılan karmaşık ve yavaş bir yöntemdir.

Bireysel kullanıcıların ve gruplarının çalışmalarını organize etmek için kullanılabilir. dahili uygulamalar sunucu veya belirli işletim sistemi işlevleri. Bireysel kullanıcıların ve gruplarının çalışmalarını organize etmek için dahili sunucu uygulamalarından veya işletim sisteminin belirli işlevlerinden yararlanılabilir. Microsoft IIS Toplu Hizmeti, temeldeki Windows NT ağ işletim sistemi için destek sağlar.

Novell, Inc.'den NetWare Web Sunucusu. Adres dizini hizmetleriyle (NetWare Dizin Hizmetleri, NDS) tam entegre. Kullanıcıları ortak bir merkezden yönetmek uygundur ancak güvenlik riski oluşturabilir. Şifreler iletişim kanalları üzerinden şifrelenmeden dağıtılır ve ele geçirilmeleri halinde sadece web sunucusu değil, tüm ağ işletim sisteminin güvenliği de risk altına girer.

Uygulama geliştirme, bir web sunucusunun ana işlevlerinden biridir. Uygulama geliştirme ortamı ve veritabanı bağlantı araçları, web sunucusunun yeteneklerini genişletmek için çok önemlidir, çünkü uygulama geliştirme, uygulama programlama arayüzünün (API) çeşitli kendine özgü ayrıntılarının yanı sıra programlama dillerinin veya uygulama programlama dilinin özelliklerine de bağlıdır. programcıların bireysel tercihleri.

Web sunucuları, küçük kurumsal intranetlerden, milyonlarca insan tarafından kullanılan büyük web bilgi merkezlerine kadar çeşitli sistemlere hizmet verebilir.

Küçük kurumsal intranetler için kullanılacak en iyi paket, Microsoft tarafından oluşturulup dağıtılan Internet Information Server'dır (IIS). IIS oldukça basit bir kuruluma sahiptir ve basit ayarlar konfigürasyonlar. Bu web sunucusu paketi erişim kontrolleri, Performans Monitörü sistem izleme aracı ve Olay Görüntüleyici ile iyi bir şekilde entegre edilmiştir. IIS web sunucusu ayrıca veritabanlarından dinamik olarak bilgi aktarımı için çeşitli araçlar sağlar. IIS çok hızlıdır. IIS bileşenleri aşağıdaki gibi protokolleri destekler: HTTP, HTTPS, FTP, NNTP, SMTP, POP3.

Web bilgi merkezleri oluşturmayı kolaylaştırmak için çoğu web sunucusu, içeriği yönetmeye yönelik yardımcı programlar ve araçlarla birlikte gelir. HTML düzenleyicileri ve belge formatı dönüştürücülerinin yanı sıra en kullanışlı araçlar, Web sitenizdeki tüm hiper metin bağlantılarının çalışmasını sağlayan URL kontrolleridir.

İnternete bağlı herhangi bir kişisel bilgisayar, üzerine özel sunucu yazılımı yüklendiğinde bir web sunucusuna dönüştürülebilir.

En yaygın web sunucuları Apache (Apache Software Foundation), IIS (Microsoft) ve iPlanet sunucusudur (Sun Microsystems ve Netscape Communications Corporation'dan). Artık web sunucusu yazılımı pazarında hem ticari hem de ücretsiz çok çeşitli ürünler var.

En yaygın web sunucularından biri Apache Yazılım Vakfı'nın Apache'sidir. Dünyadaki tüm web sunucularının %65'inde kullanıldığı tahmin edilmektedir. Apache yazılımının ana avantajlarından biri dağıtımının ücretsiz olmasıdır. Geliştiriciler düzenli olarak bulunan hataları düzeltiyor ve iyi bir kullanıcı desteği sağlıyor. Bu web sunucusu çok sayıda modülü, yardımcı programı ve eklentiyi destekler. Apache, en başından beri yöneticiler ve ileri düzey kullanıcılar için bir yazılım olarak geliştirildiğinden, dezavantajı, deneyimsiz web yöneticileri için yapılandırmanın ve bakımının zor olmasıdır.

Bir sonraki popülerlik ise Microsoft'un IIS web sunucusudur. Netcraft'a göre IIS web sunucusu, toplam web sunucusu sayısının %12,46'sını oluşturuyor. Bu ürün Windows NT sunucu yazılımı ailesinin bir parçasıdır. Başlıca avantajları stabilite, yüksek hız ve ek modülleri bağlama yeteneğidir. Microsoft, standart sorunları çözmeleri gerektiğinde herhangi bir kullanıcının ürünlerini uzmanların yardımı olmadan kullanabilmesini sağlamaya çalışmaktadır. Bu nedenle IIS'nin kurulumu, yapılandırılması ve bakımı çok kolaydır. Web sunucusu, son zamanlarda geliştiriciler ve profesyonel kullanıcılar arasında popülerlik kazanan .NET teknolojisini desteklemektedir. Bu avantajlar IIS web sunucusunu bir sonraki seviyeye taşır ve kullanımının artmasını bekleyebilirsiniz.

Diğer ünlü web sunucuları:

  • Nginx Igor Sysoev tarafından geliştirilen ücretsiz bir web sunucusu ve posta proxy sunucusudur. Basit, hızlı ve güvenilir sunucu. Linux ve diğer Unix benzeri sistemlerde çalışır işletim sistemleri, ayrıca Windows'ta. Büyük web sitelerinde popüler;
  • lighttpd- ücretsiz web sunucusu. Jan Kneschke tarafından geliştirilmiştir. Hızlı ve güvenli web sunucusu. Windows'un yanı sıra Linux ve diğer Unix benzeri işletim sistemlerinde çalışır;
  • Google Web Sunucusu- Apache'yi temel alan ve Google tarafından web altyapısını düzenlemek için kullanılan bir web sunucusu;
  • Reçine- Java için ücretsiz bir web sunucusu ve uygulama sunucusu. Caucho Technology Inc. tarafından geliştirilen;
  • Çeroki- yalnızca web arayüzü üzerinden kontrol edilen ücretsiz bir web sunucusu. C programlama dilinde yazılmış;
  • Köklendirme- Java programlama dilinde yazılmış bir web sunucusu. Linux ve Windows'ta çalışır;
  • THTTPD- basit, küçük, hızlı ve güvenli bir web sunucusu. ACME Labs Yazılımı tarafından geliştirilmiştir.

Web sunucusu istemcileri

Tipik olarak istemci bir web tarayıcısıdır. Ancak diğer çeşitli cihazlar ve programlar da web sunucusuna erişebilir:

  • Masaüstü kişisel bilgisayara yüklenen bir web tarayıcısı;
  • Bir PDA'ya veya başka bir taşınabilir cihaza kurulu bir web tarayıcısı;
  • Kullanıcının WAP protokolü aracılığıyla web sunucusu kaynaklarına erişim sağladığı cep telefonları ve akıllı telefonlar;
  • Diğer bilgileri güncellemek veya almak için web sunucusuna bağımsız olarak erişebilen çeşitli programlar. Veritabanını güncellemek için periyodik olarak web sunucusuyla iletişim kuran çeşitli antivirüsler bunun bir örneğidir;
  • Çeşitli dijital cihazların yanı sıra bazı ev aletleri.

Bu makale, halihazırda kendi web sitesi olan veya açmayı planlayan kişiler için faydalı olacaktır. Makale, projelerinin en güzel saatinin çok yakında olduğunu düşünen ve sayfa ziyaretçi akınına hazırlanmak isteyen hırslı web yöneticileri için özellikle ilgi çekici olacaktır.

Web sitelerinde yalnızca binlerce kullanıcının hayalini kuranlar bile muhtemelen şunu merak etmiştir: "Web sitem aynı anda giriş yaparsa kaç kullanıcıyı destekler?" İnternette bir bağlantı göründükten sonra siteye çok sayıda geçişe hazır olmayan bir site hatası olgusu olan iyi bilinen "Habra effect" ifadesini hemen hatırlıyorum.

Halihazırda bir web sitesi olduğunu varsayalım (ya da yakında olacak): onu nereye yerleştirmeliyiz? Klasik bir barındırma mı yoksa VPS sunucusu mu olmalı? Vps ise hangisi ve en iyi nasıl yapılandırılır? Ya da belki hiçbir fark yoktur ve daha ucuz olanı seçmek daha kolaydır? Bu yazıda çeşitli seçeneklere bakacağız ve hangisinin sitemiz için daha uygun olduğunu pratikte göreceğiz.

Deney yapacağız: farklı sunucu çalışma modlarını ayarlayacağız ve performansı ölçeceğiz. Loaddy.com hizmetini kullanarak sitedeki yükü simüle edeceğiz. Burada kullanıcı sayısını, artan yük türünü ayarlayabilirsiniz ve grafik, sunucunun bunlara nasıl tepki verdiğini gösterecektir. Bir kullanıcının siteye 10 saniye içinde yaklaşık bir istek oluşturduğuna inanılmaktadır. Bir test sitesi olarak cms moguta'daki çevrimiçi mağazanın demosunu ele alalım. Ana sayfada çeşitli kriterlere göre görüntülenen test "ürünleri" ile doldurulacaktır (yani, sayfa oluşturulurken veritabanı ile çalışma yapılır vb.). Öyle ya da böyle, bu, modları birbiriyle karşılaştırmanıza olanak tanır.

Test sitesi olarak Ubuntu OS üzerinde bir VPS sunucusu oluşturacağız. Yapılandırması olacaktır. Bunların sunucular olduğunu varsayacağız. giriş seviyesiçoğu durumda yeni projeler için yaratılmıştır. Çevrimiçi mağazanın test sürümüne http://130.193.44.219/ IP adresinden ulaşılabilir.

Testleri gerçekleştirmek için aynı çevrimiçi mağazayı da yükleyeceğimiz klasik barındırma da kullanışlı olacaktır. Siz de bizim yolumuzu takip edebilir ve aynı testleri projeniz üzerinde yapabilirsiniz!

Çoğu durumda vps ile birlikte bir kontrol paneli sunulduğundan, ayarlarda ana değişiklikleri yapacağız. Vps sunucusunda 3 çalışma modumuz mevcuttur:

  • Apaçi;
  • Apache CGI modunda;
  • Nginx + php-fpm (Apache olmadan).
Ama önce barındırmada test edelim:

Klasik ucuz barındırma

Ziyaretçi sayısı 50 kişiyi aştığında hatalar ortaya çıkıyor. Barındırma içerik sunmayı durdurur ve barındırma kontrol paneline gidersek aşağıdakine benzer bir şey görebiliriz:

Siteniz son 24 saat içinde kısıtlandı. Siteniz için CPU kaynakları sınırlıdır. Giriş işlemlerindeki sınırlara (aynı anda çalıştırılan PHP ve CGI komut dosyalarının, zamanlanmış işlerin ve konsol oturumlarının sayısı) 126 kez ulaştınız.
Tabii ki, barındırma, barındırmadır, özellikle de ucuzdur. Elbette daha fazla fırsat sağlayacak bir tarife bulabilirsiniz, ancak tüm bunların dikkate alınması ve her bir barındırma sağlayıcısından gelen kısıtlamaların kesin verilerini bir şekilde öğrenmeniz gerekiyor.

VPS: Apaçi

Sırada, ISP kontrol panelini kurarken varsayılan olarak sunulan Apache modlu test VPS'miz var.

Kullanıcı sayısı 90'ı aştığında sorunlar başlıyor. Sunucumuza ssh ile giriş yapıp şu anda top komutuyla yapılan işlemlerin listesine Shift+M (tüketilen hafıza miktarına göre) ile sıralanmış olarak bakarsak, şunu görürüz: bunun gibi bir şey:

Apache2 sürecinin birçok çocuğa büyüdüğünü ve vps sunucumuzun tüm RAM'ini tükettiklerini görüyoruz.

Burada küçük bir açıklama yapmamız gerekiyor. Gerçek şu ki, Apache sunucusu için teorik olarak, her bağlantı için çok sayıda alt süreç yerine, her biri birkaç bağlantıya hizmet edecek çoklu iş parçacığı adı verilen birkaç iş parçacığı oluşturmaya izin veren bir mod vardır. Bu mod denir çalışan varsayılanın aksine ön çatal. Ancak kurulumu kolay değil, ISP gibi panellerde bunu yapmak imkansız ve eğer kafanız karışırsa ve ssh üzerinden yapmaya çalışırsanız bunun için prefork'u kapatıp işçiyi açmanın yeterli olmadığını göreceksiniz. Ayrıca php'nin iş parçacığı açısından güvenli bir sürümüne de ihtiyacınız var. Zend veya IonCube gibi modüller kullanılıyorsa, bunların aynı zamanda iş parçacığı açısından güvenli olması gerekir. Ve genel olarak, resmi PHP web sitesi bu modun kurulmasını önermiyor.

VPS: CGI

CGI modunu kullanırken neler olacağını görelim. Bunu yapmak için ISP kontrol panelinde PHP'nin CGI modunda kullanılmasına izin vermeniz gerekir, bu " Hesaplar– kullanıcılar – kullanıcı için ayarlar.”

Kasvetli bir tablo olduğu ortaya çıktı. Sunucu 55'ten fazla ziyaretçiye bile içerik sunmayı reddediyor, RAM'in tamamı "php" işlemleri tarafından tüketiliyor. Daha sonra işlevselliği geri yükleme girişimi gelir, ancak yine de neredeyse% 100 başarısızlıkla sonuçlanır.

VPS: Nginx + PHP-FPM

Apache sunucusunun hiç kullanılmadığı, bunun yerine Nginx'in çalıştığı ve php'nin php-fpm modülü tarafından işlendiği bir modun zamanı geldi. Bir ISP kontrol paneli kullanıyorsanız kullanıcı için bu modu etkinleştirmeniz gerekir. Bu aynı zamanda “Hesaplar - Kullanıcılar - Kullanıcı Ayarları” bölümünde de yapılır. Bu modun aynı zamanda “Ayarlar – Özellikler – Web sunucusu (www)” bölümünde de mevcut olması gerekmektedir.

Tam olarak ihtiyaç duyulan şey! %100 kullanılabilirlik, yükleme hızı ve sunucu yanıt süresi, yük arttıkça artmasına rağmen kabul edilebilir seviyelerdedir. Yine de sunucu başa çıkıyor!

Sunucudaki maksimum yük anındaki işlemler tablosuna bakalım:

Hala uygun fiyata stoklarımızın olduğunu görüyoruz rasgele erişim belleği. Ve php-fpm7.0'ın alt süreçleri büyük miktarlarda büyümez, ancak her biri birkaç iş parçacığına hizmet eden 5 kopyayla sınırlıdır.

Artık “kazanan rejim” belirlenmiş gibi görünüyor. Sunucumuzun bu modda eş zamanlı kaç ziyaretçiye hizmet verebileceğini öğrenelim. Ancak ondan önce küçük bir “ayarlama” yapacağız. Öncelikle sunucu bu şekilde çalışırken apache kullanılmadığı için tamamen devre dışı bırakılabilmektedir. Bunu ISP kontrol panelinde “Sistem - Hizmetler” bölümünde yapacağız. İkinci olarak, php-fpm işlemlerini başlatma prensibini biraz değiştirelim. Varsayılan olarak dinamiktir. Bu, alt süreçlerin ihtiyaç duyulmadığında bile bellekte kalacağı anlamına gelir. Aynı zamanda hafıza serbest bırakılmaz ve zamanla bu süreçler istediğimizden daha fazla büyüyebilir. Bu nedenle, talep üzerine “talep üzerine” modunun kurulması önerilmektedir. Ve alt süreçlerin sayısını ve onlar için zaman aşımı süresini ayarlayın.

Bunun için sunucuya ssh üzerinden giriş yapıp bu ayarları konfigürasyona yazmanız gerekecektir. php dosyası. Bunu, ISP'de kendisi için alan adının oluşturulduğu kullanıcı için bir dosyada yapmak uygundur.

Genellikle /etc/php/7.0/fpm/pool.d konumunda bulunur.

Yani: sudo nano /etc/php/7.0/fpm/pool.d/www-root.conf

Orada aşağıdaki varsayılan ayarları görüyoruz:

Pm = dinamik pm.start_servers = 13:00.min_spare_servers = 13:00.max_children = 17:00.max_spare_servers = 5
İsteğe bağlı modun çalışması için bunu şununla değiştirmeniz gerekir:
pm = ondemand pm.max_children = 17:00.process_idle_timeout = 10s
Ve php-fpm'yi şu komutla yeniden başlatın

Sudo hizmeti php7.0-fpm yeniden başlat
Bundan sonra, talep üzerine php-fpm7.0 işlemleri oluşturulacak (eğer bir yük varsa), bunların maksimum sayısı = 5 olacak ve 10 saniyelik boşta kalma süresinden sonra işlem sonlandırılarak RAM'de yer açılacak.

Her ihtimale karşı, tüm bu amatör faaliyetlerin sitenin performansını olumsuz etkilemediğinden emin olmak için testimizi tekrar yapalım:

Şimdi sunucumuzun kaç bağlantıyı idare edebileceğini görmek için Loaddy'yi çok sayıda ziyaretçiyle çalıştıralım:

İyi haber şu ki, tüm istekler, uzun bir gecikmeyle de olsa, saniyede çok sayıda istekle işlendi. Sunucu yanıt süresi, 190'dan fazla istekle 10 saniyeye yaklaşıyor.Ancak, 80'den fazla kullanıcıyla zaten 4 saniyelik sunucu yanıtı aldığımız Apache modunun grafiğini hatırlayalım, php-fpm modunda ise benzer gecikmeler Yukarıdaki grafikte imleci özellikle vurguladığımız 130 istekle gözlemleniyor.
Ama bu aynı VPS.

Testin sonundaki en önemli süreçlerin tablosu (200 kullanıcıyla):

Test tamamlandıktan sonra pfp-fpm tarafından kullanılan belleğin serbest bırakıldığını unutmayın:

Bu, sunucumuzun yeni yüklemelere hazır olduğu anlamına gelir.

Sitenin nginx+php-fpm modunda çalıştığını unutmamak gerekir, bu da çalışmada apache2 kullanılmadığı ve bunun sonucunda .htaccess kullanılmadığı anlamına gelir. Bu rahatsız edici görünebilir, ancak mevcut en hızlı seçenektir ve arama motorları hızlı olan siteleri daha iyi sıralar.

Çözüm

Sonuç olarak küçük bir nokta daha: Sunucuda istediğiniz her şeyi yapılandırdıysanız ve ISP kontrol panelini devre dışı bırakmaya karar verdiyseniz veya lisansınızın süresi dolduysa, buradaki "temel" sürecin askıda kalacağını unutmayın. sunucunuz. Aylar geçtikçe büyüyebilir, bu nedenle onu "öldürmek" ve otomatik çalıştırma ve crona'dan çıkarmak daha iyidir.

Siteyi Loaddy veya diğer yöntemleri kullanarak kendiniz test etmek istiyorsanız, şu adreste mevcuttur:

Web barındırma endüstrisi, faaliyet göstermek için en azından bazı temel bilgileri gerektirir.Her web yöneticisinin bilmesi gereken birkaç web barındırma terimi vardır.En temel olanlardan biri: Web sunucusu Gerçekte web hosting, web sitenize alan sağlayan web sunucularından oluşur. HP Micro AMD N40L Sunucu, iş bilgilerini düzenlemek ve korumak, etkili müşteri iletişimi sağlamak ve mevcut ofis ekipmanınızdan ve kaynaklarınızdan en iyi şekilde yararlanmak için bir platform sağlayabilen çok yönlü bir sunucudur. HP MicroServer, 10'dan az istemciye sahip işletmeler için uygun maliyetli bir başlangıç ​​sunucusudur ve işletmenizi yeni üretkenlik ve verimlilik düzeylerine taşıyabilir.HP Micro AMD N40L Sunucu hakkında daha fazla bilgi edinmek için bu bağlantıyı izleyin http://vint.com.ua/product/computers/dir_3010558/dir_3010559 .

Web sunucusu iki anlama gelebilir - bilgisayar Web sitesini barındıran ve programı Böyle bir bilgisayarda çalışan bu nedenle web sunucusuyla ilgili terim hem donanım hem yazılım . Bu iki türü teker teker ele alacağız.

Web sunucusu donanımı

Web sitesi bir koleksiyondur internet sayfaları bunlar genellikle köprü metni biçimlendirme dili HTML kullanılarak yazılan dijital dosyalardır. Web sitesi her zaman tüm dünyaya açık olacak, bunun için ya bir hostingde ya da 7/24/365 internete bağlı bir bilgisayarda saklanması gerekiyor. Böyle bir bilgisayara denir Web sunucusu (ilk harflerin büyük olduğuna dikkat edin).

Potansiyel olarak ev bilgisayarınızda bir web sitesi barındırabilirsiniz, ancak bu çok fazla çalışma ve sürekli izleme gerektirir.Bir şirketten web barındırma satın almak daha kolaydır çünkü bu hizmeti makul fiyatlarla sunan binlerce şirket vardır. Kısaca en iyi şirketlerden biri hakkında yazının sonunda sadece web hosting değil, aynı zamanda alan adı ve web sitesi de alabilirsiniz ve gerçekten çok ucuz!

Bir bilgisayar sunucusu için bir takım gereksinimler vardır - yeterince hızlı olmalı, büyük miktarda RAM'e sahip olmalı ve Sabit disk Ancak en önemlisi, IP - İnternet Protokol adresi olarak da bilinen, İnternet üzerinde kalıcı bir adrese sahip olmaktır. Web sitesinin IP adresi bulunamazsa ve çalışacaktır çevrimdışı- tarayıcı bir hata görüntüleyecektir web sitesini bulamıyorum.

Web sunucusu programları ve yazılımı

Programlar Web sunucusu Bu, bir web sitesini barındırma sunucusu bilgisayarında çalıştıran bir yazılımdır. Ana hedefi: sorun internet sayfaları; bu, web tarayıcılarından gelen istekleri dinlediği anlamına gelir (aynı zamanda müşteriler ) ve gerekli verileri geri göndererek yanıt verir. Bu istemci-sunucu etkileşimi, bir web sunucusunun nasıl çalıştığının ayırt edici bir parçasıdır..

Birçok web sunucusu programı vardır. Bunlardan en ünlüsü ve popüler olanı Apaçi Apache Vakfı tarafından geliştirilen Apache yalnızca ücretsiz değil, aynı zamanda Windows, Macintosh ve Linux/Unix dahil olmak üzere birçok işletim sistemi için de mevcuttur.

Her ne kadar Web sunucusu ve uygulama sunucusu terimleri aynı şeyi ifade etmek, yani bir web sitesinin düzgün çalışmasını sağlamak için sıklıkla birbirinin yerine kullanılsa da, bunlar aynı şey değildir. Bunun yerine, web sitelerinden son kullanıcılara içerik sunmak için birlikte çalışırlar. Bir web sunucusu, dünya çapındaki web kaynakları için istemcilerden gelen istekleri kabul eden ve yerine getiren bir programa atıfta bulunabilir. Bu istekleri genellikle HTML sayfaları, görüntü dosyaları, video dosyaları vb. olan isteğe bağlı içerikle birlikte sunar. Uygulama sunucusu, son kullanıcılara HTTP dahil farklı protokoller kullanarak dinamik içerik sunar. Bu makalede ikisi arasındaki fark açıklanmaktadır.

internet sunucusu nedir?

Bir web sunucusu, web isteklerini işlemek için tasarlanmış bir yazılım programından başka bir şey değildir. Temel olarak HTML sayfaları, grafikler ve video dosyaları vb. içeren web sitesi bileşenleri olan statik içerik biçiminde gelen istekleri kabul eder. Daha sonra isteklere ek veri içeriğiyle birlikte HTTP üzerinden yanıt verir. Bir web sunucusunun asıl görevi, World Wide Web'e içerik sağlayarak onu son kullanıcılar için erişilebilir kılmaktır. Donanım veya yazılımdan oluşan veya web içeriğinin depolandığı bir sistemi ifade edebilir. Konuşuyorum basit kelimelerle Bir web sunucusu, web sayfalarını istendiği gibi sunan bir bilgisayardır. Apache, Apache Yazılım Vakfı tarafından geliştirilen ve bakımı yapılan en popüler ve yaygın olarak kullanılan açık kaynaklı web sunucusudur.

Uygulama sunucusu nedir?

Uygulama sunucusu, web sunucusu tarafından başlatılan istekleri işlemek için farklı stratejiler kullanabilmesi dışında sıklıkla web sunucusuyla karıştırılan bir terimdir. Bu, yüksek kaliteli iş uygulamalarını barındırmayı ve sunmayı kolaylaştırır. Genellikle aşağıdakilerden oluşan üç katmanlı bir uygulama olarak görülür: GUI kullanıcı (GUI), uygulama sunucusu ve veritabanı ve işlem sunucusu. HTTP dahil ancak bununla sınırlı olmamak üzere çeşitli protokoller aracılığıyla uygulama programlarına iş mantığı sunar. Web tabanlı ve kurumsal uygulamalar oluşturmak ve çalıştırmak için gereken tüm yetenekleri sağlayan bir yazılım çerçevesidir. Statik içerik sunmak yerine dinamik içerik sunmak ve uygulamaları bir cihazdan diğerine aktarmak için en uygunudur.

Web sunucusu ile uygulama sunucusu arasındaki fark

Web ve Uygulama Sunucusu Temelleri

Web sunucusu, World Wide Web üzerinden son kullanıcılara içerik veya hizmet sağlayan donanım veya yazılım veya her ikisini ifade eder. Daha çok web kaynakları için gelen ağ isteklerine HTTP protokolünü kullanarak yanıt veren bir programa benzer. İnternet sunucusu olarak da bilinir. Öte yandan uygulama sunucusu, web uygulamalarının geliştirilmesini ve çalıştırılmasını kolaylaştıran bileşen tabanlı bir yazılım çerçevesidir. Esas itibarıyla uygulama programlarına iş mantığı sağlamak üzere tasarlanmış orta düzey bir sunucu programıdır.

Web sunucusu yalnızca HTTP içeriğiyle sınırlıdır; bu, içeriği depolamak, işlemek ve istemcilere iletmek için HTT protokolünü kullandığı anlamına gelir. Web sitelerine İnternet üzerinden erişilmesini sağlayan güçlü bir bilgisayardır ve istemci ile sunucu arasındaki iletişim HTTP kullanılarak yapılır. Uygulama sunucusu statik HTML içeriği göndermekle sınırlı değildir; Aslında iş mantığını birden fazla protokol kullanarak istemci uygulamalarına iletir.

Web sunucusu ve uygulama sunucusu işlevi

Bir web sunucusunun görevi, bilgisayarlarının HTTP istemcileri tarafından yönlendirilen kullanıcılardan gelen istekleri kabul etmek ve bunlara yanıt vermektir; bu istekler, bir web tarayıcısından veya başka bir kaynaktan olabilir. mobil uygulama. Bir web sunucusunun temel amacı, kullanıcıların web tarayıcılarında görüntüleyebileceği statik içeriği kullanılabilir hale getirmektir. Bir uygulama sunucusunun görevi, uygulamaları ve iş mantığı süreçlerini birkaç farklı protokol kullanarak barındırmak ve yayınlamaktır. Bir web sunucusuyla birlikte çalışır.

Çoklu iş parçacığı

Web sunucusu aynı anda birden fazla bağlantıdan gelen isteklere yanıt verir, ancak aynı anda birden fazla isteği paralel olarak işleyemez. İşlem hızını artırmak için iş parçacığı kullanma fikri web sunucularında işe yaramıyor. Öte yandan, uygulama sunucuları çoklu iş parçacığının yanı sıra izolasyon paylaşımı, havuzlama, yük dengeleme, kümeleme vb. gibi diğer birçok özelliği de destekler.

Web sunucusu ve uygulama sunucusu kapasitesi

Web sunucusu, e-posta ve indirme isteklerini sunmak için internet ve intranet ile ilgili programları temel alır. FTP dosyaları ve HTTP protokolünü kullanarak istemciler için web sayfaları oluşturup yayınlamak. Tek başına veya bir uygulama sunucusunda bileşen olarak kullanılabilir. Öte yandan uygulama sunucuları, uygulama sunucularının yapabildiği her şeyi ve çok daha fazlasını yapabilir. Hem web hem de kurumsal uygulamalara hizmet etmek için dinamik içerik oluşturma konusunda daha yeteneklidirler.

Web Sunucusu ve Uygulama Sunucusu: Karşılaştırma Tablosu

Web Sunucusu vs. Özeti Uygulama sunucusu

Web sunucuları, İnternet'in nasıl çalıştığı konusunda temel bir rol oynar ve bu sunucular olmadan İnternet'in varlığı sona erer. Basit bir ifadeyle web sunucuları, kullanıcı ile World Wide Web arasında bir ağ geçidi görevi görür. Statik içeriğin internet üzerinden son kullanıcılara ulaştırılması amacıyla tasarlanmış bir sistemdir. İstemcilere yalnızca HTTP protokolü aracılığıyla hizmet verme isteğiyle sınırlıdır. Bunun aksine, uygulama sunucuları daha fazla kaynak yoğundur ve HTTP dahil çeşitli protokoller aracılığıyla istemci uygulamalarına ara yazılım hizmetleri sağlar. Son kullanıcılara yönelik uygulama ve hizmetlerin kurulumu, çalıştırılması ve barındırılması için tasarlanmış bir platformdur. Her ne kadar her ikisi de web sitesinin düzgün çalışması için gerekli olsa da birbirlerinden çok farklıdırlar.


Tepe