Domain (tên miền) là một chuỗi ký tự dễ nhớ đại diện cho một địa chỉ IP trên Internet. Thay vì người dùng phải nhớ dãy số địa chỉ (IPv4 hoặc IPv6), họ chỉ cần gõ tên miền (ví dụ: example.com
, vnexpress.net
) để truy cập đến trang web hoặc dịch vụ tương ứng. Về mặt kỹ thuật, tên miền là một phần của hệ thống DNS (Domain Name System), cho phép ánh xạ (map) giữa tên miền và địa chỉ IP của máy chủ.
Cấu trúc phân cấp của Domain
DNS hoạt động theo mô hình phân cấp dạng cây, bao gồm các cấp chính:
Root (gốc)
Được ký hiệu bằng dấu chấm (.
) ở cuối tên miền (thực tế khi gõ trình duyệt, dấu chấm này có thể bỏ).
Top-Level Domains (TLDs)
Chia thành hai nhóm chính:
- gTLDs (Generic TLDs): .com, .net, .org, .info, .edu, .gov…
- ccTLDs (Country-code TLDs): .vn, .jp, .us, .de, .fr…
Các TLD server lưu trữ thông tin về máy chủ quản lý SLD (ví dụ, máy chủ TLD .vn
biết máy chủ Authoritative cho example.vn
).
Second-Level Domains (SLDs)
- Là tên miền đăng ký (ví dụ:
example.com
, google.vn
). Được tổ chức quản lý bởi các registry (như VNNIC với .vn).
- Dưới SLD có thể có nhiều subdomain (ví dụ:
www.example.com
, mail.example.com
, dev.blog.example.com
).
Subdomain (Tên miền con)
- Là phần được thêm vào bên trái SLD, cách nhau bằng dấu chấm. Ví dụ:
shop.example.com
, trong đó shop
là subdomain bậc một của example.com
.
- Subdomain có thể tiếp tục phân chia thêm (ví dụ
news.vnexpress.net
, blog.vnexpress.net
). Subdomain giúp tổ chức nội dung hoặc dịch vụ khác nhau trên cùng một SLD mà không cần đăng ký thêm SLD mới.
Bài viết khác
Sử dụng Request/Response trong ứng dụng RESTful mô hình MVC
DTO là gì? DTO (Data Transfer Object) là một object trung gian dùng để truyền dữ liệu giữa client – server hoặc giữa các service trong ứng dụng web/API theo kiến trúc RESTful API. DTO chỉ chứa các thông tin cần thiết mà client hoặc service khác cần (ví dụ: Login Form chỉ cần thông […]
Docker
Docker là gì? Docker là một nền tảng mã nguồn mở cho phép bạn đóng gói, phân phối và chạy ứng dụng bên trong các “container” – những môi trường ảo nhẹ, cô lập nhưng vẫn chia sẻ nhân hệ điều hành của máy chủ. Khái niệm then chốt ở đây là “containerization”: thay vì […]
Kiểm thử phần mềm
Testing là gì? Quá trình kiểm thử phần mềm (software testing) là một chuỗi hoạt động có hệ thống nhằm đánh giá chất lượng, độ ổn định và tính đúng đắn của một ứng dụng so với yêu cầu ban đầu. Không đơn thuần chỉ là tìm ra lỗi, testing còn giúp đảm bảo rằng […]
Cache
Cache là gì? Cache là một bộ nhớ tạm (nhanh) được sử dụng để lưu trữ tạm thời dữ liệu thường xuyên được truy cập, nhằm giảm độ trễ và tăng hiệu suất của hệ thống. Cache thường được sử dụng ở Client, như CPU, applications, web browsers hoặc operating systems (OSes). Một số Cache phổ […]
Tìm hiểu Kafka
Kafka là gì? Apache Kafka là một nền tảng phân phối sự kiện phân tán mã nguồn mở được phát triển bởi Apache Software Foundation và được viết bằng Java và Scala. Kafka ban đầu được phát triển bởi LinkedIn và sau đó được mở nguồn cho Quỹ phần mềm Apache (Apache Software Foundation) vào đầu năm 2011. (đồng sáng lập […]
Tìm hiểu RabbitMQ
RabbitMQ là gì? RabbitMQ là một phần mềm trung gian giúp các hệ thống, server, ứng dụng có thể giao tiếp, trao đổi dữ liệu với nhau. Nhiệm vụ của RabbitMQ được hiểu đơn giản là: nhận message từ nhiều nguồn => lưu trữ, sắp xếp sao cho hợp lý => đẩy tới đích đến. Là […]