Web Server là gì?

Khi nói đến web server, đó có thể là phần cứng hoặc mềm.

  • Phần cứng: web server là các máy tính vật lý hoặc máy ảo (VPS) chứa các phần mềm và website.
  • Phần mềm: đây là phần mềm xử lý các HTTP request từ client và gởi trả phản hồi, hay còn gọi là HTTP server. Nó tạo môi trường để chạy các web application, điều hướng các request đến đúng các web application. Có một số web server thông dụng như IIS (windows), Apache và Ngnix.

Mô hình web server

Mô hình web server

Web application là gì?

Web application là các chương trình chạy trên nền web, nó cung cấp các giao diện, chức năng để user có thể xem và sửa đổi thông tin từ database ... Khi một lập trình viên nói về viết web, tức là họ đang nói về việc code web application chứ không phải web server.

Sự liên quan giữa web server và web application!

Web server cung cấp môi trường để chạy các web application. Để hiểu rõ hơn, bạn có thể xem hình dưới đây. Đây là điều thực sự xảy ra khi kết nối với hocdai.com

 

Web Server hocdai.com

Web Server hocdai.com

  1. Trình duyệt gởi yêu cầu GET hocdai.com
  2. HTTP Request đến được với server hocdai.com đặt tại Singapore.
  3. Lúc này request đến cổng 80 của server hocdai.com, cổng 80 đang được chạy bởi web server NGINX
  4. Khi thấy request host là hocdai.com, NGINX chuyển dữ liệu từ request đến web application hocdai.com đang được chạy trên port 3000.
  5. Web application xử lý request và chuyển dữ liệu cho NGINX, NGNIX phản hồi lại cho client.

Như vậy đối với hocdai.com, web server NGINX đóng vai trò trung gian xử lý các request.

Tôi có thể chạy web application mà không cần web server không?

Được, bạn hoàn toàn có thể khởi tạo một web application và cho nó chạy trên port 80, sau đó mở cổng 80 kết nối với internet.

Tại sao tôi cần web server?

Web server không chỉ dùng để điều hướng trang web như hình ví dụ trên, nó còn giúp bạn xử lý các tác vụ khác như caching, load balancing, quản lý tài nguyên server … Những tính năng này rất hữu ích nếu bạn muốn xây dựng một website to bự.

Tham khảo:

https://developer.mozilla.org/en-US/docs/Learn/Common_questions/What_is_a_web_server

Các môn học khác

SQL là ngôn ngữ truy vấn mang tính cấu trúc, nó cho phép bạn truy cập và sử dụng database.

Khoa học về dinh dưỡng, giáo trình giảm cân cho mọi người.

Khóa học này cung cấp cho ta kiến thức nền tảng về công nghệ Blockchain, Bitcoin. Vì sao nó được gọi là công nghệ của tương lai, vì sao giá Bitcoin lại cao đến vậy. Làm sao để mua Bitcoin, ETH.