Kamis, 26 Maret 2015

Web Server

Web Server

Sumber : http://translate.google.com/translate?hl=id&sl=en&u=http://en.wikipedia.org/wiki/Web_server&prev=search
Sebuah server web adalah sebuah teknologi informasi yang memproses permintaan melalui HTTP , dasar protokol jaringan yang digunakan untuk mendistribusikan informasi tentang World Wide Web . Istilah ini dapat merujuk baik ke seluruh sistem komputer , suatu alat , atau khusus untuk software yang menerima dan mengawasi permintaan HTTP. [1]

Ikhtisar

Fungsi utama dari web server adalah untuk menyimpan, mengolah dan menyampaikan halaman web ke klien . Komunikasi antara klien dan server berlangsung dengan menggunakan Hypertext Transfer Protocol (HTTP) . Halaman yang paling sering disampaikan adalah dokumen HTML , yang mungkin termasuk gambar , style sheet dan skrip di samping konten teks.
Seorang agen pengguna , biasanya sebuah web browser atau web crawler , memulai komunikasi dengan membuat permintaan untuk sumber daya tertentu menggunakan HTTP dan server merespon dengan isi yang sumber daya atau pesan kesalahan jika mampu melakukannya. Sumber daya biasanya file nyata pada server penyimpanan sekunder , tetapi hal ini belum tentu demikian dan tergantung pada bagaimana web server diimplementasikan .
Sementara fungsi utama adalah untuk melayani konten, implementasi penuh HTTP juga mencakup cara untuk menerima konten dari klien. Fitur ini digunakan untuk mengirimkan formulir web , termasuk upload file.
Banyak server web generik juga mendukung server-side scripting menggunakan Active Server Pages (ASP), PHP , atau lainnya bahasa scripting . Ini berarti bahwa perilaku dari server web dapat ditulis dalam file terpisah, sedangkan perangkat lunak server yang sebenarnya tetap tidak berubah. Biasanya, fungsi ini digunakan untuk menghasilkan dokumen HTML secara dinamis ("on-the-fly") sebagai lawan untuk kembali dokumen statis . Yang pertama terutama digunakan untuk mengambil dan / atau memodifikasi informasi dari database . Yang terakhir ini biasanya jauh lebih cepat dan lebih mudah cache tetapi tidak dapat memberikan konten dinamis .
Server web tidak selalu digunakan untuk melayani World Wide Web . Mereka juga dapat ditemukan tertanam dalam perangkat seperti printer , router , Webcam dan melayani hanya jaringan lokal . Web server kemudian dapat digunakan sebagai bagian dari sistem untuk memantau dan / atau pemberian perangkat yang bersangkutan. Ini biasanya berarti bahwa tidak ada perangkat lunak tambahan harus diinstal pada komputer klien, karena hanya browser web diperlukan (yang sekarang disertakan dengan sebagian besar sistem operasi ).

Sejarah

Web server pertama di dunia, sebuah komputer NeXT workstation dengan Ethernet, 1990, label kasus berbunyi: "Mesin ini adalah server JANGAN mematikannya !!."
Sun Cobalt Qube 3 - komputer alat Server (2002, dihentikan)
Pada tahun 1989 Tim Berners-Lee mengajukan sebuah proyek baru untuk majikannya CERN , dengan tujuan meringankan pertukaran informasi antara para ilmuwan dengan menggunakan hypertext sistem. Proyek ini menghasilkan Berners-Lee menulis dua program pada tahun 1990:
Antara 1991 dan 1994, kesederhanaan dan efektivitas teknologi awal yang digunakan untuk surfing dan pertukaran data melalui World Wide Web pada port membantu mereka untuk banyak sistem operasi yang berbeda dan menyebarkan penggunaannya di antara organisasi ilmiah dan universitas, dan kemudian ke industri.
Pada tahun 1994 Tim Berners-Lee memutuskan untuk membentuk World Wide Web Consortium (W3C) untuk mengatur pengembangan lebih lanjut dari banyak teknologi yang terlibat ( HTTP , HTML , dll) melalui proses standarisasi.

Fitur umum

Terjemahan jalur

Web server mampu memetakan jalan komponen dari Uniform Resource Locator (URL) ke:
  • Sebuah sumber daya sistem file lokal (untuk permintaan statis)
  • Sebuah nama program internal atau eksternal (untuk permintaan dinamis)
Untuk permintaan statis arah URL ditentukan oleh klien relatif ke direktori root web server.
Pertimbangkan URL berikut karena akan diminta oleh klien:
 http://www.example.com/path/file.html
Klien agen pengguna akan menerjemahkannya ke dalam koneksi ke www.example.com dengan HTTP 1.1 permintaan berikut:
 GET /path/file.html HTTP / 1.1
 Host: www.example.com
Web server pada www.example.com akan menambahkan path yang diberikan jalan dari direktori root. Pada server Apache , ini biasanya / home / www (Pada Unix mesin, biasanya / var / www). Hasilnya adalah sumber daya sistem file lokal:
 / Home / www /path/file.html
Web server kemudian membaca file, jika ada dan mengirimkan respon ke web browser klien. Tanggapan akan menjelaskan isi dari file dan berisi file itu sendiri atau pesan kesalahan akan kembali mengatakan bahwa file tersebut tidak ada atau tidak tersedia.

Kernel-mode dan user-mode server web

Sebuah server web dapat baik diimplementasikan ke dalam OS kernel , atau di ruang pengguna (seperti aplikasi biasa lainnya).
Sebuah web server-kernel (seperti Microsoft IIS pada Windows atau TUX pada GNU / Linux) biasanya akan bekerja lebih cepat, karena, sebagai bagian dari sistem, dapat langsung menggunakan semua sumber daya perangkat keras yang dibutuhkan, seperti memori non-paged, CPU waktu-iris, adapter jaringan, atau buffer.
Web server yang berjalan dalam mode pengguna harus meminta sistem izin untuk menggunakan lebih banyak memori atau lebih sumber daya CPU. Tidak hanya melakukan permintaan ini ke kernel memakan waktu, tetapi mereka tidak selalu puas karena sumber daya cadangan sistem untuk penggunaan sendiri dan memiliki tanggung jawab untuk berbagi sumber daya perangkat keras dengan semua aplikasi yang berjalan lainnya. Pelaksana dalam modus pengguna juga dapat berarti salinan penyangga tidak berguna yang cacat lain untuk user-mode server web.

Beban batas

Sebuah server web (program) telah menentukan batas beban, karena hanya dapat menangani sejumlah klien konkuren koneksi (biasanya antara 2 dan 80.000, secara default antara 500 dan 1.000) per alamat IP (dan TCP port) dan dapat melayani hanya jumlah maksimum tertentu permintaan per detik tergantung pada:
  • pengaturan sendiri,
  • jenis permintaan HTTP,
  • apakah konten yang statis atau dinamis,
  • apakah konten tersebut cache , dan
  • yang keras dan lunak keterbatasan OS dari komputer yang menjalankan Web server.
Ketika web server dekat dengan atau di atas batas, ia menjadi tidak responsif.

Penyebab kelebihan

Setiap saat server web dapat kelebihan beban karena:
  • Terlalu banyak lalu lintas web yang sah. Ribuan atau bahkan jutaan klien yang menghubungkan ke situs web dalam interval pendek, misalnya, efek Slashdot ;
  • Distributed Denial of Service serangan. Sebuah denial-of-service attack (DoS attack) atau didistribusikan denial-of-service attack (DDoS) merupakan upaya untuk membuat komputer atau jaringan sumber daya tersedia bagi pengguna yang dimaksudkan;
  • Cacing komputer yang kadang-kadang menyebabkan lalu lintas normal karena jutaan komputer yang terinfeksi (tidak terkoordinir di antara mereka);
  • Virus XSS dapat menyebabkan lalu lintas tinggi karena jutaan terinfeksi browser dan / atau web server;
  • Internet bots Lalu Lintas tidak disaring / terbatas pada situs web yang besar dengan sangat sedikit sumber daya (bandwith, dll);
  • Internet (jaringan) slowdowns, sehingga permintaan klien dilayani lebih lambat dan jumlah koneksi meningkat sehingga mencapai batas server;
  • Web server ( komputer ) tidak tersedianya parsial. Hal ini dapat terjadi karena dibutuhkan atau mendesak pemeliharaan atau upgrade, perangkat keras atau perangkat lunak kegagalan, back-end (misalnya, basis data ) kegagalan, dll .; dalam kasus ini server web yang tersisa terlalu banyak lalu lintas dan menjadi kelebihan beban.

Gejala overload

Gejala server web kelebihan beban adalah:
  • Permintaan dilayani dengan (mungkin panjang) penundaan (dari 1 detik untuk beberapa ratus detik).
  • Web server mengembalikan kode kesalahan HTTP , seperti 500, 502, 503, 504, 408, atau bahkan 404 , yang pantas untuk kondisi kelebihan beban.
  • Web server menolak atau me-reset (interupsi) TCP koneksi sebelum kembali isi situs.
  • Dalam kasus yang sangat jarang, web server mengembalikan hanya sebagian dari konten yang diminta. Perilaku ini dapat dianggap sebagai bug , bahkan jika itu biasanya muncul sebagai gejala overload.

Teknik anti-kelebihan

Untuk sebagian mengatasi batasan di atas rata-rata beban dan untuk mencegah overload, situs web yang paling populer menggunakan teknik umum seperti:
  • Mengelola lalu lintas jaringan, dengan menggunakan:
    • Firewall untuk memblokir lalu lintas yang tidak diinginkan yang berasal dari sumber IP yang buruk atau memiliki pola yang buruk
    • Manajer lalu lintas HTTP untuk menjatuhkan, mengarahkan atau menulis ulang permintaan memiliki buruk HTTP pola
    • Manajemen bandwidth dan traffic shaping , dalam rangka untuk merapikan puncak dalam penggunaan jaringan
  • Menyebarkan web cache teknik
  • Menggunakan berbagai nama domain untuk melayani berbeda (statis dan dinamis) dengan server web yang terpisah, yaitu:
    • http://images.example.com
    • http://www.example.com
  • Menggunakan nama domain yang berbeda dan / atau komputer untuk memisahkan file-file besar dari file kecil dan menengah; idenya adalah untuk dapat sepenuhnya cache yang file kecil dan menengah dan melayani secara efisien besar atau besar (lebih dari 10-1.000 MB) file dengan menggunakan pengaturan yang berbeda
  • Menggunakan banyak web server (program) per komputer, masing-masing terikat sendiri kartu jaringan dan alamat IP
  • Menggunakan banyak web server (komputer) yang dikelompokkan bersama-sama di belakang penyeimbang beban sehingga mereka bertindak atau dianggap sebagai salah satu web server yang besar
  • Menambahkan sumber daya perangkat keras yang lebih (yaitu RAM , disk ) untuk setiap komputer
  • Tuning parameter OS untuk kemampuan hardware dan penggunaan
  • Menggunakan lebih efisien program komputer untuk server web, dll
  • Menggunakan lainnya workarounds , terutama jika konten dinamis yang terlibat

Pangsa pasar

The LAMP (bundel software) (di sini tambahan dengan Squid ), seluruhnya terdiri dari perangkat lunak bebas dan open source , adalah tugas berat kinerja tinggi dan ketersediaan tinggi solusi untuk lingkungan yang tidak bersahabat
Pangsa pasar server web utama
Untuk rincian lebih lanjut tentang program HTTP server, lihat Kategori: perangkat lunak server Web .
Berikut adalah statistik terbaru dari pangsa pasar server web atas di Internet dengan Netcraft Survey April, Mei 2014 .
Produk Penjaja April 2014 Persen Mei 2014 Persen Perubahan
Apache Apache 361.853.003 37,74% 366.262.346 37,56% -0.18%
IIS Microsoft 316.843.695 33,04% 325.854.054 33,41% + 0.37%
nginx Nginx, Inc. 146.204.067 15,25% 142.426.538 14,60% -0,64%
GWS Google 20.983.310 2.19% 20.685.165 2.12% -0,07%
Apache, IIS dan Nginx adalah server web yang paling sering digunakan di Internet.

Lihat juga

Referensi

  1. "Apa itu web server yang? '" . webdevelopersnotes. 2010/11/23. Diperoleh 2010/11/23.

Pranala luar

0 komentar:

Posting Komentar