Vì sao chỉ test từ Việt Nam là chưa đủ
Hình dung một nhóm phát triển ở TP.HCM vừa ra mắt cửa hàng trực tuyến bán cho khách Mỹ, Đức và Nhật Bản. Mọi bài test trên máy văn phòng đều chạy đạt. Một tuần sau, khách ở Đức báo không thấy banner xin phép cookie, khách ở Nhật bị đẩy sang trang tiếng Anh, còn khách ở bờ Đông nước Mỹ vẫn thấy giá cũ vì CDN giữ bản cache từ trước đợt cập nhật. Không có dòng code nào sai rõ ràng. Chỉ là website được thiết kế để phản ứng khác nhau theo vị trí người truy cập, và nhóm chưa bao giờ nhìn nó qua con mắt của từng thị trường.
Những thứ thường thay đổi theo vị trí của người dùng:
- Chuyển hướng theo quốc gia và ngôn ngữ. Quy tắc chuyển hướng dựa trên IP, thẻ hreflang, trang chọn khu vực có thể đưa khách tới sai phiên bản.
- Giá, tiền tệ, thuế và phương thức thanh toán. Trang thanh toán thường hiện phương thức khác nhau theo nước, và lỗi cấu hình chỉ lộ ra với khách ở nước đó.
- Thông báo quyền riêng tư và cookie. Nhiều website chỉ bật banner xin phép cho khách châu Âu hoặc một số bang của Mỹ.
- Bản cache trên CDN. Mỗi điểm biên giữ bản riêng; lệnh xóa cache bị lỗi có khi chỉ ảnh hưởng vài khu vực.
- DNS và cân bằng tải theo vùng. GeoDNS có thể trả về máy chủ khác nhau cho từng nước, nên một bản ghi sai chỉ làm hỏng một vùng.
- Quy tắc chặn theo khu vực của chính bạn. Tường lửa hoặc danh sách chặn quốc gia đôi khi chặn nhầm cả khách hợp lệ.
- Thời gian tải khi đi qua tuyến mạng quốc tế. Ảnh nặng, quá nhiều request hay máy chủ đặt xa khách chỉ thấy rõ khi đo từ chính thị trường đó.
Cách chắc chắn nhất để thấy đúng những gì khách thấy là gửi request từ một địa chỉ IP thật sự nằm ở thị trường đó. Với những phép đo cần lặp lại theo lịch, bạn đặt luôn một máy chạy kiểm thử tại đó. Đó là việc của proxy và VPS đa quốc gia đặt ở nước ngoài, và phần còn lại của trang chỉ cách ghép hai thứ này thành một quy trình gọn, rẻ, dễ bảo trì.
Proxy hay VPS: chọn đúng công cụ cho từng loại kiểm thử
Proxy và VPS giải hai bài toán khác nhau. Proxy giống như mượn một cửa ra ở nước khác: trình duyệt, curl hay công cụ kiểm thử vẫn chạy trên máy của bạn tại Việt Nam, chỉ có địa chỉ IP mà website nhìn thấy là của nước kia. VPS là cả một máy chủ đặt tại nước đó: script chạy ngay tại chỗ, đo được tuyến mạng từ chỗ đó và vẫn chạy theo lịch khi máy văn phòng đã tắt.
| Loại kiểm thử | Proxy có đủ không? | Nên dùng VPS khi | Gói gợi ý |
|---|---|---|---|
| Xem ngôn ngữ, giá, tiền tệ, banner hiển thị theo nước | Có, một proxy IPv4 tĩnh của nước đó | Khi cần chụp màn hình tự động mỗi ngày | Proxy IPv4 tĩnh riêng; VPS Mini |
| Kiểm tra chuyển hướng theo quốc gia và thẻ hreflang | Có, dùng curl hoặc trình duyệt qua proxy | Khi phải soát hàng trăm URL theo lịch | Proxy IPv4 tĩnh riêng; VPS Mini hoặc Custom |
| Đo thời gian tải trang, traceroute, tuyến mạng | Không, kết quả lẫn chặng từ Việt Nam tới proxy | Luôn cần | VPS Mini hoặc Custom đặt đúng bang, đúng nước |
| Kiểm tra CDN, cache, GeoDNS | Một phần: xem được header trả về | Khi cần phân giải DNS từ chính nước đó | VPS Mini hoặc VPS Global |
| Xem website đối xử với IP dân cư, IP di động | Có, proxy dân cư hoặc proxy 4G | Không cần VPS | Proxy dân cư tĩnh, dân cư xoay, 4G Vinaphone |
| Kiểm thử tải vừa phải cho hệ thống của bạn | Không | Cần máy có băng thông lớn | VPS Bandwidth (Phần Lan, Đức) |
| Kiểm tra website có phục vụ qua IPv6 | Có, proxy IPv6 | Khi script cần chạy trên máy có IPv6 riêng | Proxy IPv6; VPS Bandwidth (có dải /64 IPv6) |
Quy tắc ngắn gọn: câu hỏi website hiển thị gì với khách ở nước X thì proxy thường là đủ; câu hỏi khách ở nước X chờ bao lâu, dữ liệu đi qua tuyến nào, kết quả có ổn định suốt ngày không thì cần VPS. Nếu chưa quen các loại proxy, hướng dẫn chọn proxy theo nhu cầu giải thích từ đầu, còn bài so sánh proxy dân cư và proxy datacenter giúp bạn quyết định khi nào cần IP dân cư thay vì IP datacenter.
Bộ công cụ gợi ý: ba lớp, chọn từ các gói đang bán
Một bộ kiểm thử đa quốc gia hợp lý thường có ba lớp: proxy để xem nhanh, VPS tại thị trường để đo và chạy lịch, và một máy ở Việt Nam để gom kết quả. Bạn không cần cả ba lớp ngay ngày đầu; hãy bắt đầu từ lớp đáp ứng câu hỏi gấp nhất.
Lớp 1: proxy cho kiểm tra hiển thị nhanh
Đây là lớp rẻ và nhanh nhất. Bạn khai báo proxy trong trình duyệt hoặc trong lệnh curl, mở trang cần kiểm tra và ghi lại điều mình thấy. Bảng dưới liệt kê các gói proxy đang bán hợp với việc kiểm thử, kèm giá niêm yết của từng gói.
| Loại proxy | Vị trí | Giá từ | Dùng để kiểm tra |
|---|---|---|---|
| Dân cư xoay toàn cầu (Global plan) | Chọn 1 trong hơn 200 quốc gia khi mua; xoay 15 giây, 30 giây hoặc 1 phút | 12.000đ/ngày | Đợt kiểm tra ngắn ở nước chưa có VPS; kỳ 1, 15 hoặc 30 ngày |
| Dân cư xoay tính theo GB | Chọn theo quốc gia, khu vực và thành phố | 55.000đ/GB | Kiểm tra hiển thị theo thành phố, lưu lượng ít |
| IPv4 datacenter riêng, Dedicated plan 1 | 41 vị trí, có Hàn Quốc, Ấn Độ, Brazil, Mexico, Nam Phi | 40.000đ/tháng | Theo dõi hiển thị dài hạn ở một nước bằng một IP cố định |
| IPv4 datacenter riêng, Dedicated plan 2 | 34 vị trí: nhiều bang của Mỹ, Canada, Anh, Đức, Hà Lan, Nhật Bản, Singapore, Úc, Việt Nam (FPT, Viettel) | 50.000đ/tháng | Ghép cặp với VPS Mini đặt cùng bang Mỹ |
| Dân cư IPv4 tĩnh riêng | 25 vị trí (Dedicated plan 1) hoặc hơn 70 vị trí kèm chọn nhà mạng (Dedicated plan 2, 120.000đ/tháng) | 80.000đ/tháng | So sánh cách website đối xử với IP dân cư và IP datacenter |
| IPv4 xoay | Châu Âu, Mỹ, Việt Nam hoặc ngẫu nhiên hơn 50 quốc gia | 6.000đ/ngày | Lấy mẫu nhiều IP để soát quy tắc chặn theo khu vực |
| Dân cư xoay Mỹ | Mỹ | 9.000đ/ngày | Xem trang như khách dùng mạng gia đình ở Mỹ |
| Dân cư xoay Việt Nam | Việt Nam, chọn FPT, VNPT hoặc Viettel | 6.000đ/ngày | So sánh trải nghiệm giữa các nhà mạng trong nước |
| Mobile 4G Vinaphone | Việt Nam | 8.000đ/ngày | Kiểm tra trang và API trên mạng di động |
| Datacenter dùng chung Việt Nam | Việt Nam, mua tối thiểu 7 ngày | 326đ/ngày | Mốc so sánh rẻ nhất cho khách trong nước |
| IPv6 tĩnh riêng | 13 vị trí ở Mỹ, Canada, Anh, Pháp, Đức, Phần Lan, Ba Lan, Singapore, Việt Nam | 5.000đ/tháng | Kiểm tra website có phục vụ được qua IPv6 |
Proxy IPv4 tĩnh giữ nguyên một địa chỉ, nên kết quả giữa các lần kiểm tra so sánh được với nhau; đọc thêm về proxy IPv4 datacenter tĩnh nếu đây là lần đầu bạn dùng. Khi muốn biết website có đối xử khác với khách dùng mạng gia đình hay không, hãy thêm proxy dân cư IPv4 tĩnh. Còn nếu cần so sánh FPT, VNPT và Viettel, proxy dân cư xoay chọn nhà mạng và proxy 4G Vinaphone cho bạn góc nhìn của người dùng trong nước. Với nước chưa có VPS hoặc chỉ cần kiểm tra vài ngày, proxy dân cư xoay toàn cầu cho chọn một quốc gia trong hơn 200 nước lúc mua, với kỳ ngắn nhất 1 ngày; xem thêm về proxy IPv4 xoay theo khu vực nếu bạn cần lấy mẫu nhiều địa chỉ.
Chỉ cần xem website hiển thị ở vài nước? Chọn loại proxy và vị trí ngay ở trang đặt hàng, không cần thuê VPS.
Chọn proxy theo quốc giaLớp 2: VPS đặt tại thị trường cho script chạy theo lịch
Khi cần đo thời gian tải, chạy traceroute, phân giải DNS tại chỗ hay chụp màn hình mỗi sáng, bạn cần một máy nằm ngay trong thị trường đó. Dòng VPS đa quốc gia hiện có 5 gói đang bán là Mini, Custom, Sale, Bandwidth và Global; bảng dưới ghép thêm gói Intel gold / platinum đặt tại Việt Nam để bạn thấy đủ các điểm đặt máy:
| Gói | Vị trí | Cấu hình | Mạng ghi trong gói | Giá từ |
|---|---|---|---|---|
| Mini | 29 vị trí: 21 bang Mỹ (gồm Georgia (Mỹ)), Canada, Anh, Pháp, Đức, Hà Lan, Nhật Bản, Singapore, Úc | 1 core · 1 GB RAM · 12 GB (100.000đ/tháng) hoặc 2 core · 2 GB RAM · 12 GB (160.000đ/tháng) | Download 100 Mbps, upload 10 Mbps, 1TB/tháng, 1 IPv4 | 100.000đ/tháng |
| Custom | 12 vị trí: 10 bang Mỹ, Anh, Pháp | Tự chọn ở form đặt hàng: CPU 1 – 16 core, RAM 1 – 32 GB, ổ 15 – 240 GB | Download 100 Mbps, upload 10 Mbps, 1TB/tháng, 1 IPv4 | 100.000đ/tháng |
| Sale | California, New Jersey, Washington (Mỹ) | Gói ghi dung lượng 15GB; form cho chọn CPU 1 – 16 core, RAM 1 – 32 GB | Download 100 Mbps, upload 10 Mbps, 1TB/tháng, 1 IPv4 | 80.000đ/tháng |
| Bandwidth | Phần Lan, Đức | 4 cấu hình, từ 2 core · 4 GB RAM · 40 GB tới 16 core · 32 GB RAM · 320 GB | 500 Mbps hai chiều, 20TB/tháng, 1 IPv4 và dải /64 IPv6 | 225.000đ/tháng |
| Global | 15 quốc gia: Úc, Canada, Pháp, Đức, Hồng Kông, Indonesia, Ý, Nhật Bản, Malaysia, Hà Lan, Singapore, Hàn Quốc, Thái Lan, Anh, Mỹ | Từ 2 vCores · 4 GB RAM · 30 GB SSD tới 20 vCores · 64 GB RAM; chu kỳ 1, 2, 3, 6 tháng hoặc 1 năm | Gói không ghi số Mbps cụ thể | 250.000đ/tháng |
| Intel gold / platinum (đặt tại Việt Nam) | Việt Nam | 6 cấu hình, từ 1 core · 1 GB RAM · 20 GB tới 16 core · 32 GB RAM · 100 GB | 100 Mbps/10 Mbps, 1 IPv4 riêng; nâng 1 Gbps cho cấu hình 4-8-50 trở lên | 45.500đ/tháng |
Với phần lớn đội QA, VPS đa quốc gia Mini là điểm khởi đầu: nhiều vị trí nhất, nhất là các bang của Mỹ, cấu hình nhỏ nhưng đủ cho curl, mtr và một trình duyệt headless chạy lần lượt từng trang. Gói Custom hợp khi bạn cần máy ở 10 bang lớn của Mỹ, Anh hoặc Pháp và muốn tự chọn CPU, RAM, ổ đĩa ở form đặt hàng. Gói Sale có giá thấp nhất trong dòng VPS đa quốc gia, 80.000đ/tháng, đặt tại California, New Jersey hoặc Washington, hợp làm máy chạy trình duyệt ở hai bờ nước Mỹ. Gói Bandwidth ở Phần Lan và Đức dành cho đợt kiểm thử tải, vì băng thông ghi trong gói là 500 Mbps hai chiều với 20TB/tháng, và cho kiểm thử IPv6 từ chính máy chủ, vì gói cấp kèm dải /64 IPv6.
Khi thị trường của bạn nằm ở châu Á ngoài Nhật Bản và Singapore, VPS Global đặt tại 15 quốc gia là lựa chọn duy nhất có máy tại Hàn Quốc, Thái Lan, Indonesia, Malaysia và Hồng Kông, cùng Ý ở châu Âu. Gói này đắt hơn Mini (từ 250.000đ/tháng) nhưng cấu hình khởi điểm cũng lớn hơn: 2 vCores · 4 GB RAM · 30 GB SSD, đủ chạy trình duyệt headless thoải mái. Gói Global không ghi tốc độ mạng cụ thể, nên nếu kiểm thử của bạn phụ thuộc vào băng thông, hãy hỏi qua trang liên hệ trước khi đặt.
Máy cho kiểm thử tải hoặc cần IPv6 riêng chỉ có ở gói Bandwidth, đặt tại Phần Lan và Đức. Các gói Mini, Custom, Sale không có vị trí ở Việt Nam; máy đặt tại Việt Nam là gói Intel gold / platinum. Ở châu Á ngoài Nhật Bản và Singapore, gồm Hàn Quốc, Thái Lan, Indonesia, Malaysia, Hồng Kông, cũng như ở Ý, chỉ gói Global có máy.
Đã biết thị trường cần đo đầu tiên? Đặt một máy Mini ở đúng bang hoặc đúng nước, chạy thử script vài ngày rồi mới nhân rộng.
Đặt VPS Mini theo vị tríCần máy ở Hàn Quốc, Thái Lan hay Indonesia? Chọn quốc gia, cấu hình và chu kỳ của gói Global ngay ở form đặt hàng.
Đặt VPS Global theo quốc giaLớp 3: máy gom kết quả và mốc so sánh tại Việt Nam
Các máy ở nước ngoài nên gửi kết quả về một chỗ để bạn xem trên một bảng. Máy gom này cũng là mốc so sánh: cùng một script chạy ở Việt Nam cho bạn biết khách trong nước thấy gì. VPS Intel gold / platinum tại Việt Nam có 6 cấu hình từ 45.500đ/tháng (1 core · 1 GB RAM · 20 GB) tới 715.000đ/tháng, CPU Intel Gold 6133, Gold 6138 hoặc Platinum 8171M, ổ SSD, băng thông 100 Mbps/10 Mbps và 1 IPv4 riêng. Cấu hình nhỏ nhất đủ cho việc nhận log, lưu kết quả và chạy một bảng theo dõi nhỏ; gói có ghi bao test 24h. Nếu cần so sánh FPT, VNPT và Viettel, hãy dùng proxy dân cư xoay Việt Nam chọn nhà mạng thay vì đặt thêm máy. Bài so sánh VPS NVMe và VPS đa quốc gia phân tích kỹ hơn khi nào nên đặt máy trong nước, khi nào nên đặt ở nước ngoài.
Cần một máy gom ở Việt Nam? Bắt đầu với cấu hình 1 core · 1 GB RAM, nâng cấp khi số thị trường tăng.
Đặt VPS Intel gold / platinumChọn vị trí theo thị trường bạn phục vụ
Đừng bắt đầu từ danh sách vị trí, hãy bắt đầu từ số liệu của bạn: mở công cụ phân tích, lấy các nước mang lại nhiều doanh thu hoặc nhiều lượt truy cập nhất, rồi chọn một vị trí cho mỗi nước. Riêng nước Mỹ, nên đặt ít nhất một máy ở bờ Tây và một máy ở bờ Đông, vì CDN và tuyến mạng ở hai đầu nước Mỹ thường khác nhau.
| Thị trường | VPS có sẵn tại đó | Proxy phù hợp |
|---|---|---|
| Mỹ, miền Tây | Mini: California, Oregon, Washington, Arizona, Utah, Colorado, New Mexico. Custom: California, Oregon, Washington. Sale: California, Washington. Global: vị trí Mỹ | IPv4 datacenter riêng theo bang, dân cư xoay Mỹ |
| Mỹ, miền Trung | Mini: Texas, Illinois, Indiana, Michigan, Wisconsin, Missouri, Ohio. Custom: Texas, Illinois | IPv4 datacenter riêng theo bang |
| Mỹ, bờ Đông | Mini: New York, New Jersey, Massachusetts, Virginia, North Carolina, Florida, Georgia (Mỹ). Custom: New York, New Jersey, Virginia, North Carolina, Florida. Sale: New Jersey | IPv4 datacenter riêng theo bang |
| Canada | Mini, Global | IPv4 datacenter riêng, dân cư tĩnh, IPv6 |
| Tây Âu | Anh, Pháp: Mini, Custom, Global. Đức: Mini, Bandwidth, Global. Hà Lan: Mini, Global. Ý: Global | IPv4 datacenter riêng, dân cư tĩnh |
| Bắc Âu | Phần Lan: Bandwidth | IPv4 datacenter riêng, IPv6 |
| Nhật Bản | Mini, Global | IPv4 datacenter riêng, dân cư tĩnh |
| Hàn Quốc | Global | IPv4 datacenter riêng, dân cư tĩnh |
| Singapore | Mini, Global | IPv4 datacenter riêng, dân cư tĩnh, IPv6 |
| Úc | Mini, Global (từ cấu hình 3 vCores · 6 GB RAM) | IPv4 datacenter riêng |
| Đông Nam Á, Hồng Kông | Global: Thái Lan, Hồng Kông (từ cấu hình 3 vCores · 6 GB RAM), Indonesia, Malaysia | Dân cư tĩnh ở cả bốn nơi; IPv4 datacenter riêng chỉ có ở Indonesia và Malaysia |
| Ấn Độ, Brazil, Mexico và nhiều nước khác | Chưa có VPS ở các nước này | IPv4 datacenter riêng, dân cư tĩnh hoặc dân cư xoay toàn cầu |
| Việt Nam | Intel gold / platinum | Dân cư xoay chọn nhà mạng, 4G Vinaphone, datacenter dùng chung |
Mỗi vị trí lớn đều có trang riêng để bạn xem kỹ hơn: VPS đặt tại Mỹ, VPS đặt tại Đức, VPS đặt tại Nhật Bản, VPS đặt tại Singapore, VPS đặt tại Hàn Quốc, VPS đặt tại Thái Lan và VPS đặt tại Việt Nam. Nếu chỉ cần xem hiển thị, hãy mở proxy Mỹ, proxy Nhật Bản hay proxy Vương quốc Anh. Với thị trường chưa có VPS như Ấn Độ hay Brazil, dùng proxy Ấn Độ hoặc proxy Brazil kết hợp script chạy trên máy gom. Toàn bộ danh sách nằm ở VPS theo quốc gia và proxy theo quốc gia.
Trong gói VPS Mini, vị trí Georgia là bang Georgia của Mỹ, nên trang này ghi là Georgia (Mỹ), không phải quốc gia Georgia ở vùng Kavkaz. Gói proxy IPv4 datacenter Dedicated plan 2 cũng có một vị trí ghi Georgia; nếu kiểm thử của bạn phụ thuộc vào điểm này, hãy hỏi qua trang liên hệ trước khi đặt.
Triển khai từng bước: từ ma trận kiểm thử tới báo cáo mỗi ngày
Quy trình dưới đây dùng Linux trên các máy kiểm thử vì nhẹ và dễ tự động hóa. Các lệnh viết cho Ubuntu; nếu bạn quen dòng lệnh ít, trang VPS Linux tối ưu chi phí có checklist bảo mật SSH và tường lửa cơ bản.
-
Lập ma trận kiểm thử. Mỗi dòng là một cặp thị trường và URL, kèm kết quả mong đợi: ngôn ngữ, tiền tệ,
đích chuyển hướng, banner cookie, header cache. Lưu thành file CSV trong kho mã nguồn để cả nhóm cùng sửa.
thi_truong,url,mong_doi US,https://example.com/,chuyen-huong:/en-us/ DE,https://example.com/,chuyen-huong:/de/ JP,https://example.com/,chuyen-huong:/ja/ -
Thử nhanh bằng proxy trước khi thuê máy. Từ máy văn phòng, gửi request qua proxy của từng nước và xem mã trả về,
đích chuyển hướng. Nếu đã thấy lỗi ở bước này, bạn sửa được ngay mà chưa tốn đồng nào cho VPS.
curl -s -o /dev/null -w "%{http_code} %{redirect_url}\n" \ -x http://USER:PASS@IP_PROXY:PORT https://example.com/ - Đặt VPS cho những thị trường cần đo. Chọn gói và vị trí theo bảng ở trên, rồi chọn bản Ubuntu mới nhất mà form đặt hàng của gói đó cho chọn: form gói Mini hiện liệt kê Ubuntu 18.04 và Ubuntu 20.04; gói Custom và Sale có thêm Ubuntu 22.04; gói Bandwidth có Ubuntu 22.04, Ubuntu 24.04 và Debian 12; gói Global có Ubuntu tới 24.04 và Debian 12; gói Intel gold / platinum có Ubuntu 20.04, 22.04, 24.04 và Debian 11. Nếu định chạy trình duyệt headless, chọn cấu hình 2 core · 2 GB RAM của gói Mini thay vì cấu hình 1 GB.
-
Kết nối và khóa máy. Đăng nhập bằng thông tin được cấp, cập nhật hệ thống, tạo user riêng cho việc kiểm thử và bật tường lửa:
ssh root@IP_VPS apt update && apt -y upgrade adduser qa usermod -aG sudo qa ufw allow OpenSSH ufw enable -
Cài công cụ đo. Bộ công cụ dòng lệnh dưới đây đủ cho phần lớn kiểm tra. Nếu cần chụp màn hình, cài thêm Node.js
rồi chạy
npx playwright install --with-deps chromiumđể có trình duyệt headless. Bản Playwright mới chỉ hỗ trợ chính thức một số bản hệ điều hành còn được cập nhật, nên trên Ubuntu 18.04 hoặc Ubuntu 20.04 hãy xem yêu cầu hệ thống của Playwright trước khi cài.apt install -y curl mtr-tiny dnsutils jq -
Viết script kiểm tra. Mỗi máy chạy cùng một script, chỉ khác tên vùng và ngôn ngữ trình duyệt của thị trường đó.
Đặt check.sh và file urls.txt trong /home/qa; urls.txt là cột url trong ma trận, lọc riêng cho vùng của máy. Script in ra mã trả về, đích chuyển hướng,
thời gian tới byte đầu tiên, rồi ghi lại tuyến mạng và kết quả DNS:
#!/usr/bin/env bash VUNG="$1" NGON_NGU="$2" while read -r url; do curl -s -o /dev/null -H "Accept-Language: $NGON_NGU" \ -w "$VUNG %{http_code} %{redirect_url} %{time_starttransfer}\n" "$url" done < urls.txt mtr -rwc 10 example.com dig +short example.com -
Lên lịch và gom kết quả. Cấp quyền chạy cho script bằng
chmod +x check.sh, mởcrontab -ebằng user qa để chạy định kỳ, rồi đẩy log về máy gom ở Việt Nam bằng rsync qua SSH với một SSH key riêng cho việc này. Giữ kết quả ở dạng văn bản hoặc JSON cho nhẹ, vì gói Mini, Custom và Sale có chiều upload 10 Mbps.*/30 * * * * /home/qa/check.sh US-Virginia en-US >> /home/qa/ket-qua.log 2>&1 0 * * * * rsync -az /home/qa/ket-qua.log qa@IP_MAY_GOM:/data/US-Virginia/ - Đọc kết quả và dọn dẹp. So sánh từng vùng với cột kết quả mong đợi trong ma trận, chỉ gửi cảnh báo khi có chênh lệch. Khi đợt kiểm thử kết thúc, chép script và log về kho chung, rồi chỉ gia hạn những máy còn dùng cho việc theo dõi lâu dài.
Bộ kiểm thử đa quốc gia tốn bao nhiêu: ví dụ theo tình huống
Chi phí của một bộ kiểm thử đa quốc gia phụ thuộc chủ yếu vào số máy bạn đặt ở nước ngoài. Bảng dưới ghép các gói theo vài tình huống hay gặp. Giá ghi là giá khởi điểm của từng gói; số tiền thực tế thay đổi theo cấu hình, hệ điều hành, chu kỳ và được hiển thị ở trang đặt hàng trước khi bạn thanh toán.
| Tình huống | Thành phần gợi ý | Giá khởi điểm | Ghi chú |
|---|---|---|---|
| Kiểm tra nhanh vài thị trường trước ngày ra mắt | Mỗi thị trường một proxy dân cư xoay toàn cầu, chọn quốc gia khi mua | Mỗi proxy 12.000đ/ngày, kỳ ngắn nhất 1 ngày | Chạy trình duyệt và curl ngay trên máy văn phòng |
| Theo dõi hiển thị lâu dài ở một nước chưa có VPS, ví dụ Ấn Độ hoặc Brazil | 1 proxy IPv4 datacenter riêng Dedicated plan 1 | 40.000đ/tháng | Script chạy trên máy gom ở Việt Nam, đi ra qua proxy |
| Đo thời gian tải mỗi ngày ở Mỹ, Đức, Nhật Bản | 3 VPS Mini, mỗi nước một máy | Mỗi máy 100.000đ/tháng, hoặc 160.000đ/tháng với 2 core · 2 GB RAM | Chọn cấu hình 2 core · 2 GB RAM nếu chạy trình duyệt headless |
| Đo thời gian tải ở Hàn Quốc hoặc Indonesia | 1 VPS Global cho mỗi nước | Từ 250.000đ/tháng (2 vCores · 4 GB RAM · 30 GB SSD) | Ở Thái Lan, Hồng Kông, Úc, cấu hình thấp nhất của Global là 330.000đ/tháng |
| Máy gom kết quả và mốc đo tại Việt Nam | 1 VPS Intel gold / platinum | 45.500đ/tháng (1 core · 1 GB · 20 GB) hoặc 58.500đ/tháng (1 core · 2 GB · 25 GB) | Đặt tại Việt Nam, 1 IPv4 riêng |
| Kiểm thử tải vừa phải cho hệ thống của bạn ở châu Âu | 1 VPS Bandwidth ở Phần Lan hoặc Đức | Từ 225.000đ/tháng (2 core · 4 GB RAM · 40 GB) | Chỉ tạo tải vào hạ tầng của bạn và báo trước cho đội vận hành |
| So sánh trải nghiệm mạng di động và mạng gia đình ở Việt Nam | 1 proxy 4G Vinaphone và 1 proxy dân cư xoay Việt Nam | 8.000đ/ngày và 6.000đ/ngày | Proxy dân cư xoay cho chọn FPT, VNPT hoặc Viettel |
Nguyên tắc tiết kiệm đơn giản: số VPS bằng số thị trường cần đo thời gian hoặc chạy theo lịch, mọi việc còn lại giao cho proxy. Một nhóm nhỏ hoàn toàn có thể bắt đầu bằng vài proxy cho đợt ra mắt, sau đó thêm máy Mini ở thị trường quan trọng nhất khi đã biết mình cần đo những gì.
Sai lầm hay gặp khiến kết quả test đa vùng bị lệch
Trình duyệt vẫn nói tiếng Việt dù IP ở nước ngoài
Website không chỉ nhìn IP. Header Accept-Language, múi giờ, cookie và quyền vị trí đã lưu trong trình duyệt đều có thể kéo bạn về phiên bản tiếng Việt. Hãy dùng hồ sơ trình duyệt mới cho mỗi nước, hoặc khai báo ngôn ngữ và múi giờ trong Playwright:
const context = await browser.newContext({
locale: 'en-US',
timezoneId: 'America/New_York'
});
Tin vào một nguồn định vị IP duy nhất
Các cơ sở dữ liệu định vị IP không phải lúc nào cũng thống nhất với nhau. Thay vì tra một trang bên ngoài, hãy ghi lại quốc gia mà chính website của bạn nhận diện cho mỗi request; đó mới là thứ quyết định khách thấy gì. Nếu kết quả lệch với vị trí bạn đặt, hãy gửi địa chỉ IP qua trang liên hệ Cloud Cheap để hỏi thêm.
Đo tốc độ qua proxy rồi kết luận website chậm
Khi đi qua proxy, request đi từ Việt Nam tới proxy rồi mới tới website, nên thời gian đo được luôn cộng thêm chặng đầu. Proxy chỉ dùng để xem nội dung; mọi con số về thời gian tải hay tuyến mạng nên lấy từ VPS đặt tại chỗ.
Cache làm kết quả đẹp hơn thực tế
Lần truy cập đầu sau khi phát hành thường đi về máy chủ gốc, những lần sau lấy từ điểm biên của CDN. Hãy ghi lại các header như Age hoặc X-Cache cùng với kết quả, chạy cả lần đầu lẫn lần lặp, và chỉ thêm tham số phá cache trên website của chính bạn.
Máy kiểm thử trở thành nút thắt
Gói Mini, Custom và Sale ghi upload 10 Mbps và 1TB/tháng, đủ cho request kiểm tra nhưng không hợp để tạo tải lớn hay gửi ảnh chụp màn hình sau mỗi lần chạy. Khi kiểm thử tải, máy nhỏ sẽ nghẽn trước máy chủ của bạn và kết quả mất ý nghĩa; lúc đó hãy dùng Bandwidth (500 Mbps hai chiều, 20TB/tháng) ở Phần Lan hoặc Đức, và chỉ gửi ảnh khi có lỗi. Nếu cần tạo tải từ châu Á hay châu Mỹ, hãy trao đổi qua trang liên hệ trước, vì các gói đặt ở đó không ghi băng thông lớn như Bandwidth.
Để SSH mở cho mọi địa chỉ
Mỗi máy kiểm thử là một máy chủ có IP công khai. Dùng SSH key thay cho mật khẩu, và khi quy trình đã ổn định, chỉ cho phép SSH từ IP của máy gom và văn phòng bằng ufw. Ghi danh sách máy vào một bảng chung gồm vị trí, gói, ngày hết hạn và người phụ trách để không quên máy nào sau đợt test.
Kiểm thử đúng phạm vi và có trách nhiệm
Kiểm thử theo vị trí là việc QA bình thường, nhưng có trong tay IP của nhiều nước thì cũng dễ bị dùng sai. Vài nguyên tắc giúp đội của bạn luôn ở phía đúng:
- Chỉ kiểm thử website, ứng dụng, API của bạn hoặc của khách hàng đã đồng ý bằng văn bản, ghi rõ tên miền và thời gian kiểm thử.
- Kiểm thử tải chỉ nhắm vào hạ tầng của bạn và báo trước cho đội vận hành; tạo tải vào hệ thống của người khác là tấn công, không phải kiểm thử.
- Không dùng IP nước ngoài để vượt giới hạn bản quyền nội dung, mua hàng với giá dành riêng cho khu vực khác, tạo tài khoản hàng loạt hay vượt bước xác minh danh tính của nền tảng.
- Khi kiểm tra quảng cáo của chính bạn ở từng nước, chỉ xem trang đích; không tự bấm vào quảng cáo vì làm sai số liệu và có thể trái chính sách của nền tảng quảng cáo.
- Dùng tài khoản thử nghiệm và dữ liệu giả cho luồng đăng ký, thanh toán; không lưu dữ liệu cá nhân của khách thật trên máy kiểm thử.
Nếu bạn cũng theo dõi dữ liệu công khai của trang khác, như giá niêm yết, hãy giữ tần suất thấp và tôn trọng robots.txt theo hướng dẫn thu thập và theo dõi dữ liệu web đúng cách.
Ai nên dựng bộ kiểm thử đa quốc gia, ai chưa cần
Hợp với bạn nếu
- Bạn làm QA hoặc phát triển cho website thương mại điện tử, phần mềm SaaS bán ra nước ngoài.
- Bạn là agency làm website đa ngôn ngữ và cần bằng chứng hiển thị ở từng nước để bàn giao cho khách.
- Đội vận hành của bạn cần giám sát CDN, DNS, chứng chỉ TLS từ nhiều vùng.
- Bạn phát triển game hoặc ứng dụng và muốn kiểm tra API, trang tải bản cập nhật ở nhiều khu vực.
- Đội marketing của bạn cần kiểm tra trang đích và nội dung theo quốc gia trên website của chính mình.
Nên chọn hướng khác nếu
- Bạn chỉ cần xem một trang ở một nước vài lần: một proxy là đủ, không cần VPS.
- Bạn cần đo trải nghiệm thật của khách dùng di động ở nước ngoài: VPS trong datacenter không thay được dữ liệu đo từ khách thật.
- Bạn cần mô phỏng tải rất lớn từ nhiều vùng cùng lúc: hãy trao đổi qua trang liên hệ trước khi lên kế hoạch.
- Việc chính của bạn là theo dõi thứ hạng từ khóa ở nhiều nước: xem giải pháp theo dõi thứ hạng SEO theo quốc gia.
- Mục tiêu là vượt giới hạn khu vực của dịch vụ khác hoặc giả vị trí cho tài khoản: đó không phải mục đích của giải pháp này.
Câu hỏi thường gặp về test đa quốc gia
Cần bao nhiêu VPS để bắt đầu kiểm thử đa quốc gia?
Chỉ cần một VPS cho mỗi thị trường mà bạn phải đo thời gian tải hoặc chạy kiểm tra theo lịch, thường là hai hay ba thị trường mang lại nhiều doanh thu nhất. Những kiểm tra chỉ xem nội dung hiển thị có thể làm qua proxy, nên bạn không cần thuê VPS ở mọi nước ngay từ đầu.
Chỉ dùng proxy thay cho VPS có được không?
Được, nếu việc của bạn là xem website hiển thị ngôn ngữ, giá, banner hay chuyển hướng ra sao với khách ở một nước. Proxy không hợp để đo thời gian tải, traceroute hay kiểm tra GeoDNS, vì request vẫn xuất phát từ máy bạn ở Việt Nam và đi thêm một chặng tới proxy.
Gói VPS nào có nhiều vị trí nhất để đặt máy kiểm thử?
Tính theo số vị trí chọn được, VPS đa quốc gia Mini nhiều nhất với 29 vị trí: 21 bang của Mỹ (gồm Georgia (Mỹ)), Canada, Anh, Pháp, Đức, Hà Lan, Nhật Bản, Singapore và Úc, giá từ 100.000đ/tháng. Tính theo số quốc gia thì gói Global rộng nhất với 15 nước, có cả Hàn Quốc, Thái Lan, Indonesia, Malaysia, Hồng Kông và Ý, giá từ 250.000đ/tháng. Cấu hình 1 core · 1 GB RAM của Mini đủ cho curl, mtr và dig; nếu chạy thêm trình duyệt headless, hãy chọn 2 core · 2 GB RAM với giá 160.000đ/tháng.
Có VPS đặt ở Hàn Quốc, Thái Lan hay Indonesia để test không?
Có, qua gói VPS Global. Gói này đặt máy tại 15 quốc gia, trong đó có Hàn Quốc, Thái Lan, Indonesia, Malaysia và Hồng Kông. Ở Hàn Quốc và Indonesia, cấu hình thấp nhất là 2 vCores · 4 GB RAM · 30 GB SSD với giá 250.000đ/tháng; ở Thái Lan và Hồng Kông, cấu hình thấp nhất là 3 vCores · 6 GB RAM · 40 GB SSD với giá 330.000đ/tháng. Các nước chưa có VPS như Ấn Độ hay Brazil thì kiểm tra qua proxy của nước đó.
VPS Mini có chạy Windows để test bằng trình duyệt thông thường được không?
Form đặt hàng của gói Mini hiện liệt kê Windows Server 2012 và Windows Server 2019, bên cạnh CentOS 8, Ubuntu 18.04 và Ubuntu 20.04. Tuy vậy, Windows Server với 2 GB RAM sẽ khá chật khi mở trình duyệt có giao diện, nên nếu cần máy Windows ở Mỹ, gói Sale (California, New Jersey, Washington) và gói Custom cho phép tự chọn RAM trong khoảng 1 – 32 GB.
Thời gian tải đo từ VPS có giống trải nghiệm của khách thật không?
Không hoàn toàn, vì VPS nằm trong datacenter còn khách dùng mạng gia đình hoặc mạng di động. Hãy dùng số liệu từ VPS làm mốc ổn định để so sánh giữa các vùng và giữa các lần phát hành, rồi đối chiếu với dữ liệu đo từ trình duyệt của khách thật trong công cụ phân tích của bạn.
Có kiểm thử được ứng dụng di động theo từng quốc gia không?
Được, ở hai mức. Bạn có thể gọi API và mở các trang web view của ứng dụng từ VPS đặt tại nước đó, hoặc khai báo proxy HTTP trong phần cài đặt Wi-Fi của điện thoại thử nghiệm để ứng dụng đi ra bằng IP của nước cần kiểm tra; lưu ý ô proxy Wi-Fi trên nhiều máy Android không có chỗ nhập tài khoản, khi đó cần một ứng dụng hỗ trợ proxy có xác thực. Nếu định chạy trình giả lập Android ngay trên VPS, hãy hỏi trước qua trang liên hệ để chọn cấu hình phù hợp.
Xong đợt kiểm thử thì xử lý máy và proxy thế nào?
Các gói Mini, Custom, Sale và Bandwidth đặt theo chu kỳ 1 tháng, gói Global cho chọn 1, 2, 3, 6 tháng hoặc 1 năm, còn nhiều gói proxy xoay có kỳ 1, 7, 15 hoặc 30 ngày, nên bạn chọn được sát với độ dài đợt test. Trước ngày hết hạn, hãy chép kết quả và script về kho mã nguồn; riêng máy Intel gold / platinum đặt tại Việt Nam sẽ bị xóa sau 5 ngày nếu không gia hạn, nên đừng để dữ liệu duy nhất trên máy đó.
Kiểm tra quy tắc chặn theo khu vực có hợp lệ không?
Kiểm tra quy tắc chặn theo khu vực trên website, hệ thống của chính bạn hoặc của khách hàng đã đồng ý bằng văn bản là việc QA bình thường. Dùng IP nước ngoài để vượt giới hạn bản quyền nội dung, giả vị trí khi xác minh tài khoản hay dò hệ thống của người khác thì không nên làm, vì có thể vi phạm pháp luật và điều khoản dịch vụ.
Muốn thử trước ở một thị trường? Đặt một máy Mini chu kỳ 1 tháng, chạy script của bạn và quyết định có nhân rộng hay không.
Đặt một VPS Mini để thửBắt đầu với một máy ở thị trường quan trọng nhất
Chọn vị trí gần khách nhất trong 29 vị trí của gói Mini, hoặc một trong 15 quốc gia của gói Global nếu thị trường nằm ở Hàn Quốc hay Đông Nam Á, cài script kiểm tra theo các bước ở trên và để cron chạy cho tới khi có báo cáo đầu tiên. Cần tư vấn chọn vị trí cho dự án cụ thể? Gửi câu hỏi qua trang liên hệ trước khi đặt.