So sánh lựa chọn thay thế DigitalOcean cho developer
So sánh giá mỗi GB RAM, transfer, NVMe và backup của các lựa chọn thay DigitalOcean, kèm kế hoạch chuyển máy chủ không downtime và lưu ý giá kiểm tra ngày 5/8/2026.
Các lựa chọn thay thế DigitalOcean thực sự thay đổi điều gì
Phần lớn lựa chọn thay thế DigitalOcean chỉ thay đổi hóa đơn, không thay đổi máy chủ. Dù chọn nhà cung cấp nào, bạn vẫn có một máy ảo Linux với IP public, ổ đĩa virtio và quyền truy cập root; kernel không quan tâm logo nào hiển thị trên control panel. Những khác biệt quyết định lựa chọn là giá cho mỗi GB RAM, dung lượng transfer được bao gồm và chi phí cho mỗi byte vượt hạn mức, bản chất thực sự của ổ đĩa, cùng mức độ mà nhà cung cấp sẽ vận hành phần stack phía trên hệ điều hành thay bạn.
Guide này so sánh các nhà cung cấp theo những tiêu chí đó, vì developer có thể kiểm tra từng tiêu chí từ terminal hoặc bảng giá được công bố. Guide cũng nêu những trường hợp DigitalOcean là lựa chọn phù hợp, vì một bài so sánh không thừa nhận ưu điểm của sản phẩm nào thì chỉ là quảng cáo.
Mọi mức giá bên dưới đều là giá niêm yết được công bố, kiểm tra vào ngày 5 August 2026. Giá có thể thay đổi, và đã có hơn một nhà cung cấp trong danh sách này thay đổi giá trong năm 2026. Cấu trúc giá thay đổi chậm hơn nhiều, vì vậy trước tiên hãy đọc các tỷ lệ và mô hình tính phí, sau đó xác nhận mức giá hiện tại trên trang chính thức của nhà cung cấp trước khi triển khai.
Giá trên mỗi GB RAM mới là con số cần so sánh
The data behind this chart
[
{
"provider": "DigitalOcean 1 GB",
"ram_gb": 1,
"monthly_usd": "6.00",
"usd_per_gb_ram": "6.00"
},
{
"provider": "DigitalOcean 4 GB",
"ram_gb": 4,
"monthly_usd": "24.00",
"usd_per_gb_ram": "6.00"
},
{
"provider": "Akamai Nanode 1 GB",
"ram_gb": 1,
"monthly_usd": "5.00",
"usd_per_gb_ram": "5.00"
},
{
"provider": "Vultr NVMe 1 GB",
"ram_gb": 1,
"monthly_usd": "6.00",
"usd_per_gb_ram": "6.00"
},
{
"provider": "Hetzner CX23 4 GB",
"ram_gb": 4,
"monthly_usd": "6.49",
"usd_per_gb_ram": "1.62"
}
]Trong cùng một nhà cung cấp, giá trên mỗi GB RAM hầu như không thay đổi. DigitalOcean tính $6.00 cho mỗi GB trong gói 1 GB và cũng tính $6.00 cho mỗi GB trong gói 4 GB, có giá $24.00 mỗi tháng. Chọn gói lớn hơn ở cùng nhà cung cấp không giúp giảm giá, nên kích thước gói không phải yếu tố quyết định. Nhà cung cấp mới là yếu tố quyết định.
Akamai, hiện cung cấp các gói từng được Linode bán, có giá $12 và $24 cho các gói shared 2 GB và 4 GB, giống DigitalOcean đến từng dollar. Gói thấp nhất của họ có giá thấp hơn, ở mức $5.00. Hai công ty có giá hoàn toàn giống nhau là một tín hiệu đáng chú ý: mức giá này được đặt theo đối thủ cạnh tranh, không dựa trên phần cứng, và sẽ tiếp tục bám theo đối thủ đó.
Khoảng cách bắt đầu rõ rệt ở những nhà cung cấp tự xây datacentre và niêm yết giá bằng euro. Hetzner CX23 cung cấp 4 GB RAM với giá khoảng $6.49 mỗi tháng, tương đương $1.62 cho mỗi GB, gần bằng một phần tư mức giá của DigitalOcean. Con số tính theo dollar này được quy đổi từ giá niêm yết bằng euro, nên sẽ thay đổi theo tỷ giá. Hetzner cũng đã tăng giá cloud trong năm 2026, vì vậy các bài so sánh cũ có thể ghi những mức giá hiện không còn tồn tại.
Giá trên mỗi GB RAM không cho biết bạn nhận được CPU như thế nào. vCPU shared nghĩa là hypervisor phải lập lịch cho core của bạn cùng với các tenant khác. Cách kiểm tra chính xác là chạy trên một máy bạn đã thuê thực tế:
vmstat 1 10Đọc cột st. Cột này cho biết phần trăm thời gian vCPU của bạn đã sẵn sàng chạy nhưng hypervisor lại cấp physical core cho tenant khác. Khi hệ thống đang tải, vài phần trăm là bình thường. Nếu con số này liên tục ở mức hai chữ số, host đang bị oversubscribe. Khi đó, không mức giá trên mỗi GB nào có thể bù cho một core mà bạn không thể sử dụng. Hãy chạy kiểm tra vào giờ hệ thống bận nhất, vì steal time phụ thuộc vào hoạt động của các máy lân cận và lịch hoạt động của họ. Để có cái nhìn đầy đủ hơn về chi phí hosting thực tế mỗi tháng sau khi cộng storage và traffic, hãy đọc chi phí VPS theo từng tháng.
Chi phí thực tế của dung lượng transfer được bao gồm
The data behind this chart
[
{
"provider": "DigitalOcean 1 GB",
"included_tb": 1,
"overage_usd_per_tb": "10.00"
},
{
"provider": "Akamai Nanode 1 GB",
"included_tb": 1,
"overage_usd_per_tb": "5.00"
},
{
"provider": "Vultr NVMe 1 GB",
"included_tb": 2,
"overage_usd_per_tb": "10.00"
},
{
"provider": "Hetzner CX23 4 GB",
"included_tb": 20,
"overage_usd_per_tb": "1.20"
}
]DigitalOcean bao gồm 1 TB outbound transfer trong gói entry và tính phí phần vượt theo GiB, tương đương khoảng $10.00 cho mỗi TB thêm. Akamai bao gồm cùng dung lượng TB và tính khoảng một nửa mức đó, khoảng $5.00 mỗi TB. Vultr bao gồm 2 TB với mức phí vượt tương tự. Hetzner bao gồm 20 TB và tính khoảng $1.20 mỗi TB sau đó, chênh lệch một bậc độ lớn so với các nhà cung cấp còn lại.
Ba chi tiết về cấu trúc quan trọng hơn các con số nổi bật. Inbound traffic miễn phí ở cả bốn nhà cung cấp, nên chỉ outbound traffic mới được tính. DigitalOcean và Vultr dùng chung allowance cho mọi server trong account. Vì vậy, một máy bận có thể dùng hết quota của máy khác, còn một fleet gồm nhiều server nhỏ sẽ cùng chia sẻ một pool lớn. Traffic giữa các server qua private network hoặc VPC thường không được tính. Vì thế, đặt database trên private interface vừa là quyết định về billing vừa là quyết định về bảo mật.
Những điều này không quan trọng nếu bạn còn cách xa giới hạn. Một blog, một API trả về JSON hoặc một SaaS nhỏ sẽ không đạt 1 TB mỗi tháng. Video, gallery ảnh, game server, package mirror và đích backup off-site thì có thể. Hãy đo trước khi giả định:
sudo apt update && sudo apt install -y vnstat
sudo systemctl enable --now vnstat
vnstat -mvnstat -m in transfer theo tháng, tách thành received và transmitted. Chỉ cột transmitted bị tính phí. Database bắt đầu rỗng, nên số liệu hữu ích đầu tiên xuất hiện một ngày sau khi bạn cài đặt nó, còn tháng đầy đủ đầu tiên xuất hiện sau một tháng. Trước thời điểm đó, bandwidth graph của chính nhà cung cấp là bản ghi duy nhất bạn có.
Hãy hỏi thêm một câu mà không bảng giá nào trả lời: khi vượt allowance, nhà cung cấp sẽ tính phí hay throttle port. Tính phí làm phát sinh chi phí. Throttle làm ảnh hưởng đến người dùng, đúng vào lúc bạn có nhiều người dùng nhất. Bạn cần biết traffic spike sẽ dẫn đến trường hợp nào.
NVMe hay SATA, và cách kiểm tra loại ổ bạn thực sự nhận được
Panel hiển thị NVMe. Đây là thông tin về các ổ đĩa trong host, nhưng virtual machine của bạn có thể không chạy trên những ổ đó. Local storage đặt virtual disk trên các ổ bên trong cùng một máy vật lý. Network storage đặt virtual disk trên một storage cluster riêng, được truy cập qua network của datacenter. Đây là yếu tố cho phép resize tức thì, live migration và tạo snapshot tại chỗ.
Bên trong guest, cả hai loại đều hiển thị giống nhau:
lsblk -d -o NAME,ROTA,MODEL,SIZE
cat /sys/block/vda/queue/rotationalROTA và rotational báo cáo 0 cho mọi thiết bị mà host khai báo là non-rotational. Vì vậy, network volume dùng NVMe làm backend sẽ báo cáo chính xác giống local NVMe. Giá trị này cho biết disk không phải là platter quay. Nó không cho biết disk nằm ở đâu. Xác nhận disk NVMe trên Linux giải thích tên thiết bị và ý nghĩa của từng loại.
Cách phân biệt hai loại storage là đo latency ở queue depth 1, vì một lần đọc nhỏ không có I/O khác để che giấu độ trễ. Local NVMe trả lời từ cùng chassis. Network volume phải thêm một round trip qua network của datacenter cho mỗi lần đọc, nên latency floor cao hơn, ngay cả khi throughput ở queue depth lớn có vẻ tương đương.
sudo apt update && sudo apt install -y fio
fio --name=lat --filename=/var/tmp/fiotest --size=1G --rw=randread --bs=4k \
--ioengine=libaio --direct=1 --iodepth=1 --runtime=30 --time_based --group_reporting
fio --name=iops --filename=/var/tmp/fiotest --size=1G --rw=randread --bs=4k \
--ioengine=libaio --direct=1 --iodepth=32 --runtime=30 --time_based --group_reporting
rm -f /var/tmp/fiotestLần chạy đầu tiên in ra một block clat, đây là completion latency. Hãy đọc dòng percentile 99 thay vì giá trị trung bình, vì giá trị trung bình che khuất các lần stall mà người dùng thực sự cảm nhận. Lần chạy thứ hai in IOPS= trên dòng summary. Hãy chạy cả hai bài test trên provider bạn đang dùng và trên một trial instance của provider bạn đang cân nhắc, trong cùng ngày, rồi so sánh hai số đo của chính bạn. Số liệu do vendor công bố được đo trên một máy mà bạn không thể kiểm tra. Hãy chạy thêm 3 lần vào các khung giờ khác nhau, vì host ít tải và host nhiều tải sẽ cho kết quả khác nhau dù cùng một plan. Benchmark VPS đúng cách trình bày phương pháp, còn VPS SSD thực sự có nghĩa là gì giải thích các thuật ngữ marketing đằng sau đó.
Khu vực: đo độ trễ, đừng chỉ xem bản đồ
Danh sách khu vực chỉ mang tính marketing nếu bạn chưa đo thực tế. Điều người dùng cảm nhận là thời gian khứ hồi từ mạng của họ đến server của bạn. Giá trị này phụ thuộc vào tuyến đường các packet đi qua, không phụ thuộc vào khoảng cách trên bản đồ. Một server cách 300 km nhưng nằm sau một đường transit đang bị nghẽn sẽ kém hơn server cách 1,500 km nhưng có tuyến đường ổn định.
ping -c 20 203.0.113.10
mtr -rwc 50 203.0.113.10
curl -o /dev/null -s -w 'dns %{time_namelookup} connect %{time_connect} tls %{time_appconnect} total %{time_total}\n' https://example.commtr hiển thị từng hop cùng với packet loss và độ trễ của hop đó. Vì vậy, một mức tăng 60 ms giữa hai hop sẽ cho biết đường link nào đang gây vấn đề, thay vì quy lỗi cho đích đến. Hãy chạy lệnh này từ một máy nằm trên mạng mà người dùng của bạn đang sử dụng. Các tuyến datacentre-to-datacentre thường là những tuyến tốt nhất trên Internet và khiến mọi provider đều có vẻ tốt hơn thực tế.
Có một điểm mang tính cấu trúc vẫn đúng dù giá thay đổi. Nếu một provider chỉ có một khu vực trong lục địa của bạn, kế hoạch disaster recovery của bạn thực chất là kế hoạch chuyển sang lục địa khác, với độ trễ đi kèm. Hãy đếm số khu vực mà bạn thực sự có thể failover đến, không phải số khu vực được liệt kê trên trang web.
Snapshot và backup được tính phí riêng
Các add-on lưu trữ là nơi một gói giá rẻ trở nên đắt. DigitalOcean tính $0.06 mỗi GiB mỗi tháng cho snapshot, còn backup tự động được tính theo tỷ lệ giá server: 20% giá gói cho backup hàng tuần, 30% cho backup hàng ngày, cùng một tùy chọn tính theo mức sử dụng dựa trên mỗi GiB. Cả hai mô hình đều có lý do hợp lý, nhưng chúng bất lợi theo hai hướng ngược nhau. Giá theo tỷ lệ tăng theo kích thước server, nên server lớn chứa ít dữ liệu sẽ trả thừa. Giá theo mỗi GiB tăng theo lượng dữ liệu, nên server nhỏ gắn với volume lớn sẽ trả thừa.
Hãy hỏi chi phí restore là bao nhiêu và mất bao lâu, vì chi phí lưu backup chỉ là phần ít đáng chú ý của vấn đề. Hãy hỏi việc destroy server có đồng thời destroy các snapshot của server đó hay không.
Sau đó, hãy giữ một bản sao mà provider không kiểm soát. Snapshot của provider nằm trong account của provider, nên mất thông tin đăng nhập, thanh toán thất bại hoặc account bị suspend sẽ làm server và backup của bạn mất cùng lúc. backup restic vào storage do bạn sở hữu chỉ tốn vài đô la cho object storage, cho phép restore lên bất kỳ provider nào và biến việc migration thành thao tác có thể hoàn tác thay vì kết thúc không thể đảo ngược.
Bạn muốn tự vận hành bao nhiêu phần của stack
Các nhà cung cấp nằm trên một dải lựa chọn. Ở một đầu, bạn thuê một máy chủ và tự vận hành mọi thứ trên đó. Ở đầu kia, bạn push một git branch và không bao giờ phải thấy máy chủ. Giá trên mỗi GB RAM chỉ là cách so sánh phù hợp ở đầu thứ nhất, vì ở đầu thứ hai, bạn đang mua công sức vận hành chứ không phải bộ nhớ, và công sức không có giá trên mỗi GB.
Hãy xác định đúng vị trí của bạn trên dải này trước khi so sánh. Một managed database có giá $15.15 mỗi tháng có vẻ đắt so với một server $6, cho đến khi bạn tính số giờ cần bỏ ra cho việc đó: replication, failover, point-in-time restore, nâng cấp minor version và cảnh báo đánh thức ai đó lúc 03:00. Nếu đó là công việc của bạn, hãy tự vận hành và giữ lại phần chênh lệch. Nếu công việc của bạn là phát triển ứng dụng, mua dịch vụ đó sẽ tiết kiệm chi phí. Lựa chọn managed và unmanaged quyết định bạn nên đọc cột nào trong bảng giá. Nếu câu trả lời chính xác là bạn muốn toàn quyền sử dụng máy và các disk của nó, đó là câu hỏi về VPS hay dedicated server chứ không chỉ là câu hỏi về nhà cung cấp. Câu hỏi tương tự cũng xuất hiện trong các khoản chi hàng tháng khác của developer, khi so sánh các gói Claude và ChatGPT phụ thuộc vào mức độ công việc bạn muốn bàn giao hơn là giá niêm yết.
DigitalOcean là lựa chọn phù hợp
DigitalOcean phù hợp khi bạn mua cả nền tảng, thay vì chỉ mua một máy ảo.
- Database được quản lý. PostgreSQL và MySQL được quản lý có giá từ $15.15 mỗi tháng cho 1 GiB RAM và 10 GiB storage. Storage bổ sung được tính phí theo GiB, còn standby node được tính phí theo từng node. Tự xây dựng cùng mức độ tin cậy cần Patroni hoặc repmgr, một consensus store, một connection proxy và quy trình failover đã được diễn tập thực tế. Một team hai người không thể vừa duy trì hệ thống đó vừa phát triển và phát hành tính năng.
- App Platform. Push một branch, nhận được một bản build, một certificate và một service đang chạy mà không cần patch operating system. Phiên bản VPS giá rẻ của sản phẩm này chính là bạn, vào một ngày thứ Bảy.
- Object storage và load balancer có mature Terraform provider hỗ trợ. Một fleet có thể destroy và rebuild từ code đáng giá hơn đơn giá thấp hơn.
- Công ty đứng sau sản phẩm. Các support tier được công bố, một status page có lịch sử, và một tổ chức sẽ trả lời security questionnaire của khách hàng. Nếu bạn resell hosting, điều đó đáng giá hơn vài dollar trên mỗi GB.
DigitalOcean trở nên đắt khi bạn dùng plain virtual machine với số lượng lớn và có outbound traffic thực tế. Đây chính xác là trường hợp mà một lựa chọn thay thế có thể giải quyết, đồng thời cũng là phần lớn nhu cầu của một developer tự host.
Chuyển sang nhà cung cấp mới mà không downtime
Downtime trong quá trình migration chỉ có một nguyên nhân: traffic đến IP cũ sau khi dữ liệu đã được chuyển sang IP mới. Mỗi bước dưới đây đều nhằm rút ngắn và kiểm soát được khoảng thời gian đó.
Bắt đầu với DNS, ít nhất 48 giờ trước khi chuyển. Resolver cache bản ghi A trong khoảng thời gian bằng TTL (time to live) của bản ghi đó. Vì vậy, bản ghi có TTL 24 giờ vẫn có thể tiếp tục đưa người dùng đến server cũ trong tối đa một ngày sau khi bạn thay đổi bản ghi. Giảm TTL tại thời điểm cutover không giúp được gì, vì resolver đã lưu giá trị cũ cùng thời điểm hết hạn cũ. Hãy giảm TTL trước, chờ giá trị cũ hết hạn, rồi mới migration.
dig +noall +answer example.com A
dig +noall +authority example.com SOALệnh đầu tiên in TTL hiện tại ở cột thứ hai của kết quả. Đặt TTL thành 300 tại DNS provider, rồi chờ lâu hơn giá trị bạn vừa thay thế.
Sau đó thực hiện theo thứ tự này.
- Provision server mới và harden server trước khi đưa bất kỳ thành phần nào lên đó. 10 phút đầu tiên trên một VPS mới trình bày phần mà nhiều người bỏ qua khi đang vội.
- Cài application stack và thực hiện lần copy dữ liệu đầu tiên bằng rsync trong khi server cũ vẫn phục vụ bình thường.
- Cấp TLS certificate trên host mới ngay lúc này bằng DNS-01 challenge, vì HTTP-01 challenge xác thực dựa trên IP mà DNS hiện đang trỏ tới, tức vẫn là server cũ. DNS-01 challenge loại bỏ hoàn toàn vấn đề về thứ tự này.
- Test host mới trước khi thay đổi public bằng cách override DNS trên laptop của bạn. Thêm
203.0.113.20 example.comvào/etc/hosts, truy cập site thật, rồi xóa dòng đó. Test này không ảnh hưởng đến người dùng. - Xử lý vấn đề kích thước database. Nếu database nhỏ hơn vài GB, dump và restore có thể hoàn tất trong thời gian freeze ghi dữ liệu. Nếu lớn hơn mức đó, hãy thiết lập replication từ database cũ sang database mới trước vài ngày và để replication bắt kịp, để thời gian freeze chỉ bao gồm bước promotion.
- Freeze thao tác ghi. Đưa application vào maintenance mode hoặc read-only mode. Đây là phần duy nhất người dùng có thể thấy và chỉ nên kéo dài vài phút.
- Chạy final delta: chạy lại rsync, sau đó thực hiện final database sync.
- Thay đổi bản ghi A và AAAA sang IP mới. Với TTL 300 giây, hầu hết resolver sẽ cập nhật trong khoảng 5 phút.
- Để server cũ tiếp tục chạy và có thể truy cập trong ít nhất một ngày, vì một số resolver bỏ qua TTL ngắn. Nếu application cũ vẫn cho phép ghi, các request đến muộn sẽ ghi vào database sai. Vì vậy, hãy trỏ host cũ đến database mới hoặc cho host đó trả về maintenance page.
- Monitor error rate trên server mới trong một ngày, đưa TTL về giá trị thông thường, rồi destroy server cũ sau một tuần thay vì ngay trong cùng buổi tối.
Bản thân thao tác copy gồm 2 lệnh, mỗi lệnh chạy 2 lần. Đồng bộ file:
rsync -aHAX --numeric-ids --delete -e ssh /srv/ deploy@203.0.113.20:/srv/-a giữ nguyên ownership, permissions và timestamps, -H giữ hard link, -AX giữ ACL và extended attributes, còn --numeric-ids ngăn rsync remap user ID thông qua các username khác nhau giữa 2 máy. Chạy lệnh này trước vài ngày, rồi chạy lại trong thời gian freeze. Lần thứ hai chỉ transfer phần đã thay đổi.
Với PostgreSQL có kích thước đủ nhỏ để dump:
pg_dump --format=custom --no-owner --dbname=appdb --file=appdb.dump
scp appdb.dump deploy@203.0.113.20:/var/tmp/
pg_restore --clean --if-exists --no-owner --dbname=appdb /var/tmp/appdb.dumpVới MySQL hoặc MariaDB:
mysqldump --single-transaction --routines --triggers --databases appdb > appdb.sql--single-transaction thực hiện dump trong một transaction đối với các bảng InnoDB, nên kết quả nhất quán và application vẫn tiếp tục ghi trong lúc lệnh chạy. Nếu không có flag đó, mysqldump sẽ lock các bảng. Khi đó, write freeze sẽ bắt đầu sớm hơn dự kiến và bạn không còn chủ động được thời điểm bắt đầu.
Có 2 vấn đề nằm ngoài các server của bạn. IP mới chưa có email reputation, nên mail gửi trực tiếp từ box mới có thể bị lọc thành spam. Hãy gửi mail qua một relay đã có reputation. Ngoài ra, mọi partner đang allowlist outbound IP của bạn, chẳng hạn payment gateway hoặc client firewall, phải được cập nhật trước cutover. Nếu không, các call đó sẽ bắt đầu fail ngay khi traffic được chuyển.
Cần kiểm tra gì trước khi đăng ký
- Giá có đang là giá khuyến mãi không và khi gia hạn sẽ tăng lên mức nào. Mức giảm trong kỳ đầu rồi tăng gấp đôi khi gia hạn vẫn là chi phí thực tế, chỉ là được hoãn lại.
- Gói có yêu cầu trả trước cho toàn bộ thời hạn không. Các gói trả trước nhiều năm, như cách SSD Nodes bán dịch vụ, giúp giảm đáng kể giá trên mỗi GB RAM nhờ thanh toán trước. Đổi lại, bạn không thể dừng sử dụng vào tháng sau, nên hãy chọn thời hạn phù hợp với mức độ chắc chắn của bạn.
- Snapshot có giá bao nhiêu mỗi tháng, và việc restore tốn bao nhiêu tiền cũng như bao nhiêu phút.
- Phần sử dụng vượt mức sẽ bị tính phí hay bị throttling.
- IPv6 có được định tuyến đúng cách không, hay chỉ là một địa chỉ được gắn thêm.
- Có API kèm Terraform provider còn được duy trì không, nếu bạn định rebuild bằng code thay vì thao tác thủ công.
- Có thể liên hệ bộ phận hỗ trợ bằng cách nào, và thời gian phản hồi mục tiêu được công bố cho trường hợp server bị down là bao lâu, thay vì chỉ áp dụng cho câu hỏi bán hàng.
Hãy chọn theo yếu tố chi phối hóa đơn của chính bạn. Nếu đó là memory, giá trên mỗi GB RAM sẽ quyết định. Nếu đó là outbound traffic, dung lượng transfer đi kèm sẽ quyết định. Nếu đó là thời gian của bạn, managed platform sẽ quyết định; trong 4 nhà cung cấp được so sánh ở đây, DigitalOcean là lựa chọn mạnh nhất về mặt này.
FAQ
Hetzner có luôn rẻ hơn DigitalOcean không?
Với một máy ảo thông thường, Hetzner rẻ hơn nhiều nếu tính theo mỗi GB RAM: khoảng $1.62 so với $6.00 ở các gói shared entry-level vào ngày 5 August 2026. So sánh này thay đổi khi tính thêm các managed service. Hetzner bán server và networking, nên managed database hoặc nền tảng push-to-deploy phải do bạn tự cung cấp hoặc thuê bên thứ ba, và thời gian vận hành đó có chi phí. Hetzner cũng đã tăng giá cloud trong năm 2026, vì vậy hãy kiểm tra giá euro hiện tại thay vì tin vào một bài viết cũ.
Nếu cần managed database, tôi nên chọn DigitalOcean alternative nào?
Vultr và Akamai đều bán managed database, nên đây là các lựa chọn thay thế gần nhất nếu managed database là lý do chính khiến bạn dùng DigitalOcean. Các nhà cung cấp giá rẻ ở châu Âu thường không bán dịch vụ này. Bạn sẽ phải tự vận hành PostgreSQL hoặc MySQL, bao gồm replication và failover đã được kiểm thử. Đây là công việc thực tế. Hãy so sánh chi phí đó với $15.15 mỗi tháng cho một instance managed 1 GiB trước khi kết luận rằng server rẻ hơn giúp bạn tiết kiệm.
Làm cách nào chuyển một site đang hoạt động sang provider mới mà không downtime?
Giảm DNS TTL xuống 300 giây ít nhất 48 giờ trước khi chuyển. Resolver có thể tiếp tục trả về IP cũ trong thời gian bằng TTL trước đó. Dựng và kiểm thử host mới trong khi host cũ vẫn phục vụ traffic. Dùng một /etc/hosts override trên máy của bạn để người khác không nhìn thấy host mới. Sau đó, tạm dừng ghi trong vài phút, chạy lần rsync delta cuối cùng và đồng bộ database lần cuối, chuyển các bản ghi A và AAAA, rồi giữ server cũ chạy thêm một tuần phòng trường hợp resolver bỏ qua TTL ngắn.
VPS rẻ hơn có nghĩa là disk chậm hơn không?
Không nhất thiết. Điều quan trọng là virtual disk của bạn nằm cục bộ trên host hay trên network storage cluster, trong khi panel thường không nói rõ điều này. lsblk -o NAME,ROTA báo cáo 0 cho cả hai loại vì cả hai đều là thiết bị không quay. Thay vào đó, hãy đo trực tiếp: chạy fio với --iodepth=1 --bs=4k --direct=1 rồi đọc độ trễ hoàn tất ở percentile 99. Network volume phải thêm một network round trip trong datacenter cho mỗi lần đọc, nên mức latency tối thiểu cao hơn local NVMe ngay cả khi throughput với queue sâu trông tương đương.
Email của tôi có tiếp tục được gửi từ server mới không?
Thường là không, ít nhất trong thời gian đầu. IP mới chưa có lịch sử gửi mail, nên các hệ thống nhận sẽ xem mail từ IP đó là đáng ngờ và đưa vào spam hoặc từ chối hoàn toàn. Các bản ghi SPF và DKIM cũng vẫn trỏ đến host cũ cho đến khi bạn cập nhật chúng. Hãy gửi mail của ứng dụng qua một relay hoặc email service đã có reputation, đồng thời cập nhật các bản ghi DNS cho mail trước khi chuyển đổi, không phải sau đó.