AI Engineering Tools

Lập trình

Thuật ngữ mạng chính

Hướng dẫn tra cứu thuật ngữ mạng trong phát triển cục bộ, yêu cầu trình duyệt, API, Docker và triển khai.

42 mục

Địa chỉ và tên

Địa chỉ IP

IP address

192.168.1.25

Ý nghĩa

Một địa chỉ số được sử dụng để tìm một thiết bị trên mạng.

Khi dùng

Sử dụng khi một thiết bị khác cần truy cập vào máy tính, máy chủ hoặc máy chủ container của bạn.

Ví dụ

192.168.1.25

Ví dụ yêu cầu

Giải thích địa chỉ IP nào tôi nên sử dụng từ một thiết bị khác.

Địa chỉ và tên

IPv4

IPv4

192.168.0.10

Ý nghĩa

Định dạng địa chỉ IP phổ biến gồm bốn phần.

Khi dùng

Hầu hết các ví dụ về mạng cục bộ sử dụng địa chỉ IPv4 như 192.168.x.x hoặc 10.x.x.x.

Ví dụ

192.168.0.10

Ví dụ yêu cầu

Hãy cho tôi biết địa chỉ này có phải là địa chỉ mạng IPv4 cục bộ hay không.

Địa chỉ và tên

IPv6

IPv6

::1

Ý nghĩa

Một định dạng địa chỉ IP mới hơn, dài hơn được thiết kế để cung cấp nhiều địa chỉ hơn.

Khi dùng

Bạn có thể thấy IPv6 trong nhật ký, kết nối localhost hoặc đầu ra mạng của máy chủ.

Ví dụ

::1

Ví dụ yêu cầu

Giải thích xem nhật ký này đang sử dụng giao thức IPv4 hay IPv6.

Địa chỉ và tên

localhost

localhost

http://localhost:3000

Ý nghĩa

Một tên chỉ máy tính nơi mã hoặc trình duyệt đang chạy.

Khi dùng

Sử dụng nó từ cùng một máy tính mà máy chủ phát triển đang chạy.

Lưu ý

Trên điện thoại, localhost nghĩa là chính điện thoại, không phải máy tính phát triển của bạn.

Ví dụ

http://localhost:3000

Ví dụ yêu cầu

Giải thích tại sao localhost hoạt động trên máy tính của tôi nhưng không hoạt động trên điện thoại của tôi.

Địa chỉ và tên

127.0.0.1

127.0.0.1

http://127.0.0.1:3000

Ý nghĩa

Địa chỉ vòng lặp IPv4 phổ biến cho máy hiện tại.

Khi dùng

Sử dụng nó như một lựa chọn số cho `localhost`.

Ví dụ

http://127.0.0.1:3000

Ví dụ yêu cầu

Giải thích xem localhost và 127.0.0.1 có tương đương nhau trong trường hợp này hay không.

Địa chỉ và tên

0.0.0.0

0.0.0.0

next dev -H 0.0.0.0

Ý nghĩa

Một địa chỉ được sử dụng bởi các máy chủ để lắng nghe trên tất cả các giao diện mạng khả dụng.

Khi dùng

Sử dụng khi một thiết bị khác trên cùng một mạng cần truy cập vào máy chủ phát triển của bạn.

Lưu ý

Nó có thể hiển thị máy chủ phát triển rộng hơn so với localhost.

Ví dụ

next dev -H 0.0.0.0

Ví dụ yêu cầu

Giải thích xem máy chủ phát triển (dev server) này có nên được gán địa chỉ 0.0.0.0 hay không.

Địa chỉ và tên

Tên máy chủ

Hostname

my-laptop.local

Ý nghĩa

Một tên dễ đọc cho một thiết bị hoặc máy chủ.

Khi dùng

Sử dụng nó khi một tên mạng dễ nhớ hơn một địa chỉ IP.

Ví dụ

my-laptop.local

Ví dụ yêu cầu

Giải thích xem tên miền này có được phân giải thành địa chỉ IP mong muốn hay không.

Địa chỉ và tên

Miền (Domain)

Domain

example.com

Ý nghĩa

Một tên miền internet dễ đọc dành cho một trang web hoặc dịch vụ.

Khi dùng

Sử dụng tên miền cho các trang web công khai thay vì yêu cầu người dùng nhớ địa chỉ IP của máy chủ.

Ví dụ

example.com

Ví dụ yêu cầu

Giải thích tên miền nào mà trang web đã triển khai này nên sử dụng.

Địa chỉ và tên

DNS

DNS

example.com -> 93.184.216.34

Ý nghĩa

Hệ thống dịch tên miền thành địa chỉ IP.

Khi dùng

Sử dụng bản ghi DNS khi kết nối một tên miền với dịch vụ lưu trữ hoặc máy chủ.

Ví dụ

example.com -> 93.184.216.34

Ví dụ yêu cầu

Giải thích loại bản ghi DNS nào là cần thiết cho tên miền này.

Port và kết nối

Cổng

Port

3000

Ý nghĩa

Một số nhận dạng ứng dụng hoặc dịch vụ nào đang nhận lưu lượng trên một máy.

Khi dùng

Các máy chủ phát triển thường sử dụng các cổng như 3000, 3001, 5173 hoặc 8000.

Ví dụ

3000

Ví dụ yêu cầu

Hãy cho tôi biết cổng nào mà máy chủ này đang sử dụng.

Port và kết nối

Lắng nghe

Listen

Đã sẵn sàng tại http://localhost:3000.

Ý nghĩa

Một máy chủ đang lắng nghe khi nó sẵn sàng chấp nhận các yêu cầu trên một địa chỉ và cổng.

Khi dùng

Kiểm tra đầu ra đang nghe để biết URL nào có thể được mở trong trình duyệt.

Ví dụ

Đã sẵn sàng tại http://localhost:3000.

Ví dụ yêu cầu

Giải thích máy chủ nào đang lắng nghe (listening).

Port và kết nối

Chuyển tiếp cổng

Port forwarding

8080 -> 3000

Ý nghĩa

Chuyển tiếp lưu lượng từ một cổng hoặc máy tính sang một cổng hoặc máy tính khác.

Khi dùng

Sử dụng nó trong bộ định tuyến, đường hầm, thùng chứa và môi trường phát triển từ xa.

Ví dụ

8080 -> 3000

Ví dụ yêu cầu

Giải thích cổng nào đang được chuyển tiếp (forwarded).

Port và kết nối

Tường lửa.

Firewall

Cho phép kết nối đến trên cổng 3000

Ý nghĩa

Một hệ thống quy tắc cho phép hoặc chặn lưu lượng mạng.

Khi dùng

Kiểm tra thông tin này khi máy chủ chạy cục bộ nhưng một thiết bị khác không thể kết nối.

Ví dụ

Cho phép kết nối đến trên cổng 3000

Ví dụ yêu cầu

Giải thích xem tường lửa (firewall) có thể chặn kết nối cục bộ này hay không.

Yêu cầu web

URL

URL

https://example.com/docs?page=1

Ý nghĩa

Địa chỉ đầy đủ được sử dụng để yêu cầu một tài nguyên web.

Khi dùng

Một URL bao gồm giao thức, máy chủ, cổng (tùy chọn), đường dẫn, chuỗi truy vấn và đôi khi là một phần tử.

Ví dụ

https://example.com/docs?page=1

Ví dụ yêu cầu

Chia URL này thành giao thức, máy chủ, cổng, đường dẫn và truy vấn.

Yêu cầu web

Đường dẫn

Path

/ko/reference/docker

Ý nghĩa

Phần của URL xác định một đường dẫn hoặc tài nguyên trên máy chủ.

Khi dùng

Sử dụng nó để hiểu trang hoặc điểm cuối API nào đang được yêu cầu.

Ví dụ

/ko/reference/docker

Ví dụ yêu cầu

Hãy cho tôi biết đường dẫn URL này được ánh xạ đến tuyến (route) ứng dụng nào.

Yêu cầu web

Chuỗi truy vấn.

Query string

?page=1&lang=ko

Ý nghĩa

Phần của URL sau dấu ? để truyền các tham số bổ sung.

Khi dùng

Sử dụng nó cho bộ lọc, số trang, các thuật ngữ tìm kiếm và các tùy chọn nhẹ.

Ví dụ

?page=1&lang=ko

Ví dụ yêu cầu

Giải thích các tham số truy vấn mà URL này gửi.

Yêu cầu web

HTTP

HTTP

http://localhost:3000

Ý nghĩa

Giao thức cơ bản mà trình duyệt và máy chủ sử dụng cho các yêu cầu và phản hồi web.

Khi dùng

Phát triển cục bộ thường sử dụng HTTP trước khi cấu hình HTTPS cho môi trường sản xuất.

Ví dụ

http://localhost:3000

Ví dụ yêu cầu

Giải thích xem URL cục bộ này sử dụng giao thức HTTP hay HTTPS.

Yêu cầu web

HTTPS

HTTPS

https://example.com

Ý nghĩa

HTTP được bảo vệ bằng mã hóa TLS.

Khi dùng

Sử dụng HTTPS cho các trang web công khai, đăng nhập, cookie, thanh toán, API và lưu lượng truy cập sản xuất.

Ví dụ

https://example.com

Ví dụ yêu cầu

Giải thích xem trang web đã triển khai này có cần sử dụng HTTPS hay không.

Yêu cầu web

Phương thức HTTP

HTTP method

GET /api/tools

Ý nghĩa

Một động từ cho biết máy chủ muốn thực hiện loại hành động nào.

Khi dùng

`GET` thường đọc dữ liệu, trong khi `POST` thường tạo hoặc gửi dữ liệu.

Ví dụ

GET /api/tools

Ví dụ yêu cầu

Giải thích phương thức HTTP nào mà yêu cầu API này nên sử dụng.

Yêu cầu web

Mã trạng thái

Status code

200 OK / 404 Not Found / 500 Internal Server Error

Ý nghĩa

Một số tóm tắt kết quả của một phản hồi HTTP.

Khi dùng

Sử dụng nó để nhanh chóng phân tách các phản hồi thành công, chuyển hướng, lỗi của máy khách và lỗi của máy chủ.

Ví dụ

200 OK / 404 Not Found / 500 Internal Server Error

Ví dụ yêu cầu

Giải thích mã trạng thái HTTP này có nghĩa là gì.

Yêu cầu web

Tiêu đề

Header

Content-Type: application/json

Ý nghĩa

Metadata sent with an HTTP request or response. (Siêu dữ liệu được gửi kèm theo yêu cầu hoặc phản hồi HTTP.)

Khi dùng

Tiêu đề chứa loại nội dung, ủy quyền, cookie, quy tắc bộ nhớ đệm và cài đặt CORS.

Ví dụ

Content-Type: application/json

Ví dụ yêu cầu

Giải thích các tiêu đề quan trọng trong phản hồi này.

Yêu cầu web

Nội dung

Body

{"name":"demo"}

Ý nghĩa

Nội dung dữ liệu chính được gửi trong một yêu cầu hoặc phản hồi HTTP.

Khi dùng

Các yêu cầu POST và PUT thường gửi dữ liệu JSON trong phần thân.

Ví dụ

{"name":"demo"}

Ví dụ yêu cầu

Giải thích dữ liệu nào mà yêu cầu này gửi.

Bảo mật trình duyệt

Nguồn gốc.

Origin

http://192.168.1.25:3000

Ý nghĩa

Sự kết hợp của giao thức, máy chủ và cổng.

Khi dùng

Sử dụng "origin" để suy luận về CORS, cookie và các quy tắc bảo mật của trình duyệt.

Lưu ý

Thay đổi chỉ cổng sẽ tạo ra một nguồn gốc (origin) khác.

Ví dụ

http://192.168.1.25:3000

Ví dụ yêu cầu

Xác định nguồn gốc của URL này.

Bảo mật trình duyệt

Chính sách cùng nguồn

Same-origin policy

https://app.example.com cannot freely read https://api.example.com

Ý nghĩa

Một quy tắc trình duyệt hạn chế cách các trang có thể đọc dữ liệu từ các nguồn gốc khác.

Khi dùng

Sử dụng nó để hiểu tại sao các yêu cầu API của trình duyệt có thể thất bại ngay cả khi máy chủ có thể truy cập được.

Ví dụ

https://app.example.com cannot freely read https://api.example.com

Ví dụ yêu cầu

Giải thích xem đây có phải là vấn đề về chính sách cùng nguồn (same-origin policy) hay không.

Bảo mật trình duyệt

CORS

CORS

Access-Control-Allow-Origin: https://app.example.com | app.example.com

Ý nghĩa

Một hệ thống cấp phép phía máy chủ cho phép trình duyệt sử dụng các phản hồi từ một nguồn khác.

Khi dùng

Sử dụng nó khi một ứng dụng frontend gọi một API được lưu trữ trên một nguồn gốc khác.

Lưu ý

CORS phải được cho phép bởi máy chủ gửi phản hồi.

Ví dụ

Access-Control-Allow-Origin: https://app.example.com | app.example.com

Ví dụ yêu cầu

Hãy cho tôi biết lỗi CORS này có nên được sửa trong mã giao diện người dùng (frontend) hay trong cấu hình máy chủ (server).

Bảo mật trình duyệt

Cookie

Cookie

`Set-Cookie: session=abc; HttpOnly`

Ý nghĩa

Dữ liệu nhỏ được lưu trữ bởi trình duyệt và gửi lại cho các trang web phù hợp.

Khi dùng

Các cookie thường được sử dụng cho các phiên, cài đặt và trạng thái xác thực.

Ví dụ

`Set-Cookie: session=abc; HttpOnly`

Ví dụ yêu cầu

Giải thích xem trạng thái đăng nhập này có được lưu trữ trong một cookie hay không.

Bảo mật trình duyệt

Phiên

Session

session_id=abc123

Ý nghĩa

Một cách để ghi nhớ trạng thái của người dùng trên nhiều yêu cầu.

Khi dùng

Sử dụng phiên làm việc để duy trì trạng thái đăng nhập hoặc dữ liệu người dùng tạm thời ở phía máy chủ.

Ví dụ

session_id=abc123

Ví dụ yêu cầu

Giải thích cách ứng dụng này duy trì phiên người dùng.

Bảo mật trình duyệt

Token

Token

Authorization: Bearer <token>

Ý nghĩa

Một chuỗi được sử dụng để chứng minh danh tính hoặc quyền.

Khi dùng

Sử dụng token cho xác thực API, quyền truy cập tạm thời và các yêu cầu giữa các dịch vụ.

Lưu ý

Các token có thể cấp quyền truy cập, vì vậy chúng không nên được hiển thị trong mã hoặc nhật ký công khai.

Ví dụ

Authorization: Bearer <token>

Ví dụ yêu cầu

Kiểm tra xem token này có đang được hiển thị cho trình duyệt hay không.

Bảo mật trình duyệt

Chứng chỉ TLS

TLS certificate

Chứng chỉ Let's Encrypt

Ý nghĩa

Một chứng chỉ được sử dụng bởi HTTPS để chứng minh danh tính của một trang web và mã hóa lưu lượng truy cập.

Khi dùng

Sử dụng khi cung cấp một trang web sản xuất qua HTTPS.

Ví dụ

Chứng chỉ Let's Encrypt

Ví dụ yêu cầu

Giải thích tại sao trình duyệt này nói rằng chứng chỉ không hợp lệ.

Phát triển cục bộ

Mạng cục bộ

Local network

Máy tính xách tay và điện thoại trên cùng một mạng Wi-Fi.

Ý nghĩa

Một mạng riêng tư mà các thiết bị gần đó có thể giao tiếp, chẳng hạn như mạng Wi-Fi.

Khi dùng

Sử dụng khi kiểm tra một máy chủ phát triển cục bộ từ điện thoại hoặc máy tính bảng.

Ví dụ

Máy tính xách tay và điện thoại trên cùng một mạng Wi-Fi.

Ví dụ yêu cầu

Giải thích xem các thiết bị này có nằm trên cùng một mạng cục bộ hay không.

Phát triển cục bộ

LAN IP

LAN IP

192.168.1.25

Ý nghĩa

Một địa chỉ IP được sử dụng trong mạng cục bộ.

Khi dùng

Sử dụng nó từ một thiết bị khác trên cùng một mạng để truy cập máy phát triển của bạn.

Ví dụ

192.168.1.25

Ví dụ yêu cầu

Cho tôi biết sự khác biệt giữa localhost và một địa chỉ IP LAN.

Phát triển cục bộ

URL mạng

Network URL

http://192.168.1.25:3000

Ý nghĩa

Một URL mà một thiết bị khác trên cùng một mạng có thể sử dụng để truy cập một máy chủ cục bộ.

Khi dùng

Sử dụng khi kiểm tra một trang đáp ứng trên điện thoại hoặc máy tính bảng.

Lưu ý

Máy chủ phát triển cũng có thể cần lắng nghe trên 0.0.0.0 và cho phép nguồn gốc.

Ví dụ

http://192.168.1.25:3000

Ví dụ yêu cầu

Giải thích cách mở máy chủ phát triển này từ điện thoại.

Phát triển cục bộ

Dev server

Dev server

npm run dev

Ý nghĩa

Một máy chủ cục bộ được sử dụng trong quá trình phát triển và kiểm thử một ứng dụng.

Khi dùng

Sử dụng nó để tải lại nhanh, xem trước cục bộ và gỡ lỗi trước khi xây dựng phiên bản cuối cùng.

Ví dụ

npm run dev

Ví dụ yêu cầu

Giải thích URL cục bộ và URL mạng nào mà máy chủ phát triển (dev server) này cung cấp.

Phát triển cục bộ

HMR

HMR

/_next/webpack-hmr

Ý nghĩa

Một tính năng phát triển cập nhật trình duyệt khi có thay đổi mã.

Khi dùng

Sử dụng nó để giữ trạng thái của trình duyệt trong khi chỉnh sửa mã UI.

Ví dụ

/_next/webpack-hmr

Ví dụ yêu cầu

Giải thích xem yêu cầu bị chặn này có liên quan đến HMR hay không.

Server và Docker

Máy chủ trung gian.

Proxy

Browser -> proxy -> API

Ý nghĩa

Một máy chủ gửi các yêu cầu thay mặt cho một máy khách.

Khi dùng

Sử dụng nó để định tuyến yêu cầu, ẩn các chi tiết phía sau hoặc tránh các cuộc gọi trực tiếp từ trình duyệt đến API trong quá trình phát triển.

Ví dụ

Browser -> proxy -> API

Ví dụ yêu cầu

Giải thích xem yêu cầu API này có đi qua một máy chủ proxy hay không.

Server và Docker

Máy chủ proxy ngược.

Reverse proxy

Nginx -> app:3000

Ý nghĩa

Một máy chủ nhận lưu lượng truy cập công khai và chuyển tiếp nó đến các dịch vụ nội bộ.

Khi dùng

Sử dụng nó để chấm dứt HTTPS, định tuyến, nén, bộ đệm và chuyển tiếp đến các máy chủ ứng dụng.

Ví dụ

Nginx -> app:3000

Ví dụ yêu cầu

Giải thích cách máy chủ proxy ngược này định tuyến lưu lượng truy cập đến ứng dụng.

Server và Docker

Docker port mapping

Docker port mapping

3000:3000

Ý nghĩa

Một ánh xạ từ một cổng máy chủ sang một cổng container.

Khi dùng

Sử dụng để trình duyệt trên máy chủ có thể truy cập ứng dụng web đang chạy bên trong một container.

Lưu ý

Trong các cổng Docker, phía bên trái là cổng của máy chủ và phía bên phải là cổng của container.

Ví dụ

3000:3000

Ví dụ yêu cầu

Giải thích URL trình duyệt cho ánh xạ cổng Docker này.

Server và Docker

host.docker.internal

host.docker.internal

http://host.docker.internal:3000

Ý nghĩa

Một tên máy chủ đặc biệt mà các container có thể sử dụng để kết nối với máy chủ trong nhiều cấu hình Docker Desktop.

Khi dùng

Sử dụng nó khi một container cần gọi một dịch vụ đang chạy trên máy chủ.

Ví dụ

http://host.docker.internal:3000

Ví dụ yêu cầu

Giải thích xem container này có nên sử dụng host.docker.internal hay không.

Server và Docker

Tên dịch vụ

Service name

postgres://db:5432/app

Ý nghĩa

Trong Docker Compose, các dịch vụ thường có thể kết nối với nhau bằng tên dịch vụ.

Khi dùng

Sử dụng tên dịch vụ compose như `db`, `api`, `redis` hoặc các tên khác thay vì `localhost` giữa các container.

Ví dụ

postgres://db:5432/app

Ví dụ yêu cầu

Giải thích tại sao container này nên sử dụng tên dịch vụ cơ sở dữ liệu (db service name) thay vì localhost.

Server và Docker

Load balancer (Cân bằng tải)

Load balancer

Client -> load balancer -> app servers

Ý nghĩa

Một hệ thống phân phối lưu lượng truy cập đến nhiều máy chủ.

Khi dùng

Sử dụng khi một ứng dụng có nhiều phiên bản đang chạy để mở rộng quy mô hoặc tăng độ tin cậy.

Ví dụ

Client -> load balancer -> app servers

Ví dụ yêu cầu

Giải thích vai trò của bộ cân bằng tải (load balancer) trong quá trình triển khai này.

Server và Docker

CDN

CDN

Tài sản tĩnh được phục vụ từ bộ nhớ cache biên

Ý nghĩa

Một mạng phân phối cung cấp nội dung từ các vị trí gần người dùng hơn.

Khi dùng

Sử dụng nó để tăng tốc độ tải các tài sản tĩnh, hình ảnh, tập lệnh, kiểu và các trang được lưu trong bộ nhớ cache.

Ví dụ

Tài sản tĩnh được phục vụ từ bộ nhớ cache biên

Ví dụ yêu cầu

Giải thích xem trang web tĩnh này có được hưởng lợi từ mạng phân phối nội dung (CDN) hay không.

Server và Docker

Bộ nhớ đệm

Cache

Cache-Control: max-age=3600

Ý nghĩa

Dữ liệu hoặc phản hồi đã lưu được sử dụng lại để làm cho các yêu cầu trong tương lai nhanh hơn.

Khi dùng

Sử dụng bộ nhớ đệm cho các tệp tĩnh, phản hồi API, trang và nội dung biên CDN.

Lưu ý

Nội dung được lưu trong bộ nhớ cache cũ có thể khiến một lỗi cố định có vẻ như chưa được sửa.

Ví dụ

Cache-Control: max-age=3600

Ví dụ yêu cầu

Giải thích xem vấn đề này có thể do bộ nhớ đệm (cache) gây ra hay không.