Máy chủ gốc là gì? Dù bạn có dùng CDN hay không thì cũng nên hiểu rõ khái niệm này

Vài lời của người biên tập: Công nghệ CDN phát triển vượt trội giúp cải thiện khả năng chịu tải & gia tăng tốc độ website. Điều đó làm giảm tầm quan trọng, cũng như chi phí đầu tư cho máy chủ gốc. Tuy nhiên CDN không hoàn toàn thay thế hosting gốc. Chúng là sự bổ trợ hoàn hảo cho nhau.


Mục đích của máy chủ gốc là xử lý và phản hồi các yêu cầu đến từ các máy khách trên mạng. Khái niệm máy chủ gốc (origin server) thường được sử dụng cùng với khái niệm máy chủ biên (edge server) hoặc máy chủ bộ nhớ đệm (caching).

Về bản chất, máy chủ gốc là một máy tính chạy một hoặc nhiều chương trình, được thiết kế để lắng nghe và xử lý các yêu cầu internet đi tới nó. Máy chủ gốc có thể đảm nhận tất cả trách nhiệm cung cấp nội dung cho một thành phần trên internet chẳng hạn như website, với điều kiện là lưu lượng truy cập không vượt quá khả năng xử lý của máy chủ (tức không bị quá tải) và độ trễ (latency) không phải là mối quan tâm chính yếu.

Khoảng cách vật lý giữa máy chủ gốc và máy khách thực hiện yêu cầu sẽ làm tăng thêm độ trễ cho kết nối, làm tăng thời gian tải các tài nguyên internet chẳng hạn như website. 

Ngoài ra Round-trip time (RTT) giữa máy khách và máy chủ gốc (cần thiết cho kết nối internet an toàn sử dụng SSL / TLS) cũng làm tăng thêm độ trễ cho yêu cầu, tác động trực tiếp đến trải nghiệm của khách hàng yêu cầu dữ liệu từ máy chủ gốc. Bằng cách sử dụng mạng phân phối nội dung (CDN), thời gian khứ hồi (RTT) có thể được giảm bớt và lượng yêu cầu đến máy chủ gốc cũng có thể giảm đi nhiều.

Sự khác biệt giữa máy chủ gốc và máy chủ biên CDN là gì?

Nói một cách đơn giản, máy chủ biên CDN là các máy tính được đặt ở các điểm giao tiếp quan trọng giữa các nhà cung cấp internet lớn ở các địa điểm trên toàn cầu để cung cấp nội dung nhanh nhất có thể. Máy chủ biên nằm bên trong CDN ở “rìa” của mạng và được chủ động thiết kế đặc biệt để xử lý nhanh các yêu cầu. Bằng cách đặt các máy chủ biên một cách chiến lược bên trong Điểm trao đổi Internet (IxP / Internet Exchange Points) tồn tại giữa các mạng, CDN có thể giảm lượng thời gian cần thiết để đến một vị trí cụ thể trên mạng.

Các máy chủ biên này lưu nội dung vào bộ nhớ cache để giảm tải một hoặc nhiều máy chủ gốc. Bằng cách di chuyển các nội dung tĩnh như hình ảnh, tệp HTML và JavaScript (và các nội dung tiềm năng khác) đến gần máy khách yêu cầu nhất có thể, bộ đệm của máy chủ biên có thể giảm thời gian tải tài nguyên web.

Máy chủ gốc vẫn có một chức năng quan trọng ngay cả khi bạn sử dụng CDN, vì mã quan trọng phía máy chủ (server-side code) như cơ sở dữ liệu được sử dụng để xác thực thường được duy trì bên trong máy chủ gốc.

Dưới đây là một ví dụ đơn giản về cách một máy chủ biên và một máy chủ gốc phối hợp hoạt động cùng nhau để tạo ra một trang đăng nhập và cho phép người dùng đăng nhập vào dịch vụ. Một trang đăng nhập rất đơn giản yêu cầu tải xuống các nội dung tĩnh sau để trang web hiển thị đúng:

  1. Tệp HTML cho trang web;
  2. Tệp CSS để định kiểu trang web;
  3. Một số tệp hình ảnh;
  4. Một số thư viện JavaScript.

Các tệp này đều là tệp tĩnh; chúng không được tạo động và giống nhau đối với tất cả khách truy cập vào trang web. Do đó, các tệp này có thể được lưu vào bộ nhớ đệm và phân phát cho máy khách từ máy chủ biên. Tất cả các tệp này có thể được tải gần hơn với máy khách và không tiêu tốn băng thông của máy chủ gốc (hosting gốc).

tài nguyên tĩnh trao đổi với máy chủ biên CDN

Tiếp theo, khi người dùng nhập thông tin đăng nhập, mật khẩu của họ và nhấn “đăng nhập”, yêu cầu nội dung động sẽ quay trở lại máy chủ biên, sau đó ủy quyền (proxy) yêu cầu quay lại máy chủ gốc. Máy chủ gốc sau đó xác minh danh tính của người dùng trong bảng cơ sở dữ liệu được liên kết trước khi gửi lại thông tin tài khoản cụ thể.

dữ liệu động thì buộc phải trao đổi với máy chủ gốc

Sự tác động lẫn nhau này giữa các máy chủ biên xử lý nội dung tĩnh và các máy chủ gốc phục vụ nội dung động là một sự tách bạch điển hình về các mối quan tâm chính khi sử dụng CDN. Khả năng của một số CDN cũng có thể mở rộng ra ngoài mô hình đơn giản này (chẳng hạn caching cả nội dung động).

Có phải máy chủ gốc vẫn có thể bị tấn công khi đang sử dụng CDN?

Câu trả lời ngắn gọn là CÓ. CDN không giúp máy chủ gốc trở thành chiến binh bất khả chiến bại, nhưng khi được sử dụng đúng cách, nó có thể làm cho máy chủ gốc trở nên vô hình, hoạt động như một lá chắn (shield) cho các yêu cầu đến. 

Ẩn địa chỉ IP thực của máy chủ gốc là một phần quan trọng trong việc thiết lập CDN. Do đó, nhà cung cấp CDN nên khuyến nghị thay đổi địa chỉ IP của máy chủ gốc khi thực hiện triển khai chiến lược CDN để ngăn các cuộc tấn công DDoS khôn ngoan bỏ qua lá chắn bảo vệ và tấn công trực tiếp vào máy chủ gốc. CDN của Cloudflare bao gồm bảo vệ DDoS toàn diện cho bạn.

(Dịch từ bài viết What is an Origin Server? của Cloudflare)

Leave a Comment