Perbezaan VPS Storan vs VPS Biasa
Ketahui perbezaan utama antara VPS storan dengan VPS biasa. Kami bandingkan prestasi cakera NVMe, kapasiti terabait, dan kesesuaian beban kerja untuk memilih pelan yang tepat.
VPS storan berbanding VPS biasa: jawapan ringkas
VPS storan ialah pelayan peribadi maya yang dijual mengikut terabait, manakala VPS biasa dijual mengikut teras. Pelan storan memberikan anda beberapa terabait cakera perlahan dengan bahagian CPU yang kecil. Pelan standard memberikan anda cakera NVMe (non-volatile memory express) pantas yang selalunya dua puluh kali lebih kecil, serta lebih banyak pemproses dan memori untuk harga yang sama. Segala aspek lain bagi kedua-dua produk adalah sama: hypervisor yang sama, root shell yang sama, imej Ubuntu yang sama, dan network stack yang sama.
Perbezaan tunggal itu menentukan kesesuaiannya. VPS storan sesuai untuk sasaran sandaran, pustaka media, arkib sejuk dan apa-apa sahaja yang anda tulis sekali dan jarang dibaca. Ia tidak sesuai untuk pangkalan data, atau untuk mana-mana halaman yang pengguna perlu tunggu, kerana beban kerja tersebut memerlukan bacaan rawak kecil untuk selesai dalam masa kira-kira satu milisaat, dan kapasiti murah adalah murah tepat kerana ia tidak mampu melakukan perkara tersebut.
Nama pelan yang anda temui pada halaman harga
Empat label merangkumi hampir setiap penyedia, dan hanya dua daripadanya membawa maksud yang khusus.
- Standard VPS. Dua hingga lapan vCPU, 2 GB hingga 32 GB RAM, dan 20 GB hingga 400 GB NVMe atau SATA SSD yang berada pada nod hos itu sendiri.
- Storage VPS. 1 TB hingga 20 TB atau lebih, biasanya menggunakan cakera SATA berputar atau SATA SSD berkapasiti tinggi, dengan satu hingga empat vCPU yang dikongsi serta jumlah RAM yang sederhana. Kos bulanannya sering kali sama dengan pelan standard yang kecil.
- VDS. Singkatan bagi virtual dedicated server. Tiada definisi yang dipersetujui umum bagi istilah ini, dan bahagian di bawah menerangkan perkara yang perlu dibaca sebagai gantinya.
- Block storage volume. Bukan satu pelan: ia merupakan cakera yang disambungkan melalui rangkaian yang anda tambah pada VPS sedia ada dan dibayar mengikut GB sebulan. Ini adalah satu-satunya daripada empat jenis tersebut yang boleh ditambah saiznya tanpa perlu memindahkan pelayan.
Julat tersebut merupakan bentuk umum di seluruh pasaran, bukan tawaran mana-mana syarikat tertentu. Label pada pelan tersebut hanyalah satu kategori, jadi ia memberitahu anda secara kasar tentang jenis kerangka (chassis) tempat pelayan anda berada. Ia tidak memberitahu anda tentang jenis cakera, polisi peruntukan CPU atau had lebar jalur (bandwidth), dan perkara-perkara itulah yang menentukan sama ada beban kerja anda berjalan dengan lancar.
Perkara yang sebenarnya berubah antara kedua-dua pelan
Jenis dan kuantiti cakera. Ini adalah satu-satunya perbezaan produk. Pelan standard meletakkan anda pada storan kilat NVMe yang dicapai melalui bas PCI Express. Pelan storan meletakkan anda pada tatasusunan cakera berputar yang besar atau SSD SATA berkapasiti tinggi. Jika anda tidak pasti istilah mana yang penting bagi anda, mulakan dengan apa itu VPS SSD dan perbezaannya daripada pelan cakera lama dan kemudian jurang praktikal antara NVMe dan SSD SATA.
Nisbah CPU. Pelan storan membawa lebih sedikit vCPU bagi setiap terabait, dan vCPU tersebut hampir selalu dikongsi dengan penyewa lain. Itu bukan satu kecacatan. Sasaran sandaran menghabiskan masanya menunggu rangkaian, jadi ia tidak memerlukan teras (core) yang banyak.
RAM. Pelan storan mempunyai RAM yang rendah untuk harganya. Ini memberi kesan pada satu perkara khusus: metadata sistem fail. Berjuta-juta fail kecil memerlukan memori untuk cache direktori dan inode, dan tanpanya setiap penyenaraian akan kembali ke cakera.
Peruntukan rangkaian. Baca baris ini dengan teliti pada pelan storan. Kapasiti yang tidak boleh dipulihkan bukanlah sandaran. Semak peruntukan pemindahan bulanan dalam TB dan kelajuan port dalam Gbit/s, kerana pemulihan penuh 4 TB melalui port 1 Gbit/s mengambil masa kira-kira sembilan jam pada kadar talian, dan lebih lama jika port tersebut dikongsi.
The data behind this chart
[
{
"plan": "Storage VPS, HDD",
"usd_per_tb_month": 3
},
{
"plan": "Storage VPS, SATA SSD",
"usd_per_tb_month": 9
},
{
"plan": "Standard VPS, NVMe",
"usd_per_tb_month": 40
},
{
"plan": "Block storage add-on",
"usd_per_tb_month": 90
}
]Itu adalah angka bulat yang diambil daripada halaman harga awam merentas beberapa penyedia pada Ogos 2026, bukan sebut harga daripada mana-mana syarikat tunggal, dan ia berubah-ubah. Bentuknya adalah bahagian yang kekal. Satu terabait pada pelan storan berputar berharga sekitar 3 dolar AS sebulan. Terabait NVMe yang sama pada pelan standard berharga kira-kira 40, dan volum blok yang disambungkan ke rangkaian adalah yang paling mahal daripada 4 pilihan pada 90. Untuk pandangan yang lebih luas tentang komposisi bil bulanan, lihat kos sebenar VPS setiap bulan.
Mengapa harga per TB dan harga per teras bergerak ke arah bertentangan
Node storan ialah kerangka yang memuatkan dua belas hingga enam belas cakera besar dengan satu pemproses sederhana di hadapannya. Node pengkomputeran adalah sebaliknya: mempunyai banyak teras, banyak RAM, serta dua atau empat pemacu NVMe. Penyedia menjual apa sahaja kapasiti yang ada pada kerangka tersebut. Oleh itu, pelan yang murah bagi setiap terabait akan menjadi mahal bagi setiap teras, dan pelan yang murah bagi setiap teras akan menjadi mahal bagi setiap terabait. Tiada pelan yang murah untuk kedua-duanya, kerana tiada kerangka dibina dengan spesifikasi sedemikian.
Inilah sebabnya jawapan jujur bagi soalan "yang mana satu patut saya beli" selalunya ialah "kedua-duanya". VPS NVMe kecil yang menjalankan aplikasi, ditambah dengan VPS storan yang menyimpan sandarannya, menelan kos yang lebih rendah berbanding satu mesin besar yang mampu melakukan kedua-dua tugas dengan baik. Apabila satu mesin benar-benar perlu melakukan kedua-duanya, anda telah melangkaui skop VPS: lihat bila pelayan berdedikasi lebih baik daripada VPS.
Bacaan rawak adalah perkara yang tidak mampu dilakukan oleh cakera murah
The data behind this chart
[
{
"disk": "7200 rpm SATA HDD",
"random_read_iops": "180",
"typical_latency_ms": 8.5
},
{
"disk": "SATA SSD",
"random_read_iops": "75,000",
"typical_latency_ms": 0.2
},
{
"disk": "NVMe SSD",
"random_read_iops": "600,000",
"typical_latency_ms": 0.08
}
]Angka tersebut adalah kelas helaian data dan bukannya penanda aras bagi mana-mana penyedia. Cakera 7200 rpm memberikan kira-kira 180 bacaan 4k rawak sesaat kerana kepala cakera perlu bergerak secara fizikal ke trek dan kemudian menunggu piring cakera membawa sektor tersebut ke bawahnya, yang memakan masa kira-kira 8.5 ms setiap kali. Flash tidak mempunyai bahagian yang bergerak, jadi SSD SATA mencapai kira-kira 75,000 dan peranti NVMe sekitar 600,000 IOPS pada 0.08 ms. Itu adalah jurang lebih daripada tiga ribu kali ganda, dan tiada jumlah RAM atau CPU yang dapat merapatkannya.
Tugas berjujukan adalah cerita yang berbeza sama sekali, itulah sebabnya pelan storan berguna. Satu cakera berputar masih boleh menstrim 150 MB/s hingga 250 MB/s, dan tatasusunan cakera tersebut menstrim lebih banyak lagi. Ini menepukan port 1 Gbit/s, jadi muat naik sandaran berjalan pada kelajuan rangkaian penuh dan cakera tidak pernah menjadi hadnya. Angka anda juga bergantung pada cara tatasusunan dibina, kerana striping menyebarkan satu permintaan merentasi beberapa cakera: bagaimana RAID 10 mengubah prestasi pelan storan merangkumi perkara tersebut.
Apakah maksud VDS?
Biasanya, ini hanyalah label pemasaran. Terdapat tiga maksud yang lazim digunakan, dan penyedia perkhidmatan jarang menyatakan maksud yang mana satu digunakan. Sesetengah pihak menggunakan VDS untuk merujuk kepada teras CPU yang dikhaskan (pinned) atau didedikasikan, supaya tiada penyewa lain yang bersaing untuk mendapatkan kitaran pemprosesan anda. Sesetengah pihak menggunakannya untuk virtualisasi penuh seperti KVM, berbeza dengan virtualisasi kontena seperti LXC atau OpenVZ di mana anda berkongsi kernel hos. Sesetengah pihak pula menggunakannya tanpa sebarang maksud khusus, sekadar nama yang kedengaran lebih hebat daripada VPS.
Anda boleh menentukan sebahagian daripadanya dari dalam pelayan. systemd-detect-virt akan memaparkan kvm pada mesin maya penuh dan lxc pada kontena, dan kontena bermakna anda tidak boleh memuatkan modul kernel atau menjalankan kernel anda sendiri. Dakwaan mengenai CPU berdedikasi perlu anda ukur sendiri, menggunakan semakan steal time yang diterangkan di bawah. Anggap huruf pada pelan sebagai petunjuk, dan baris spesifikasi sebagai kontrak.
Baris spesifikasi yang perlu disemak selain daripada nama
- Perkataan yang dicetak bersebelahan dengan kapasiti:
NVMe,SSD,SATAatauHDD. Jika tiada perkataan cakera dipaparkan di mana-mana pada halaman tersebut, anggap ia sebagai perkakasan paling murah yang menepati harga. - Sama ada cakera adalah setempat (local) kepada nod atau disambungkan melalui rangkaian (network attached). Storan yang disambungkan melalui rangkaian menambah latensi pada setiap permintaan dan kekal wujud sekiranya nod gagal. Cakera setempat adalah lebih pantas tetapi akan hilang bersama nod tersebut.
- Istilah CPU: "dedicated" atau "pinned" berbanding "shared", "fair share" atau tiada sebarang keterangan.
- Sebarang had IOPS atau MB/s yang tertulis dalam pelan. Had sebanyak 500 IOPS menjadikan jenis cakera hampir tidak relevan.
- Had pemindahan data bulanan dan kelajuan port, yang menentukan tempoh masa pemulihan penuh (full restore).
- Sama ada snapshot, sandaran (backup) dan alamat IP tambahan disertakan atau dibilkan secara berasingan.
Cara menyemak cakera yang anda peroleh sebenarnya
Mulakan dengan apa yang dilaporkan oleh kernel, kemudian jangan terus mempercayainya.
lsblk -d -o NAME,ROTA,SIZE,MODEL
df -h /
nproc
free -hROTA ialah 1 untuk peranti berputar dan 0 untuk flash. Jangan bergantung padanya di dalam VPS: cakera virtio biasanya melaporkan ROTA=0 walau apa pun yang berada di belakangnya, kerana hypervisor membentangkan peranti blok generik dan tetamu tidak pernah melihat pemacu fizikal. MODEL adalah kosong atas sebab yang sama. Flag ini menerangkan apa yang diisytiharkan oleh hypervisor, bukan apa yang berputar di dalam rak, jadi lakukan pengukuran sebaliknya.
sudo apt update && sudo apt install -y fio
fio --name=randread --filename=/var/tmp/fio.test --size=1G --bs=4k --rw=randread \
--ioengine=libaio --direct=1 --iodepth=32 --runtime=30 --time_based --group_reporting
rm -f /var/tmp/fio.test--direct=1 memintas cache halaman, jadi anda mengukur cakera dan bukannya RAM. Baris untuk dibaca ialah read: IOPS=, dengan taburan di bawah clat percentiles (usec) di bawahnya. Pelan NVMe standard melaporkan puluhan ribu IOPS dengan persentil ke-99 di bawah satu milisaat. Pelan storan berputar melaporkan beberapa ratus IOPS dengan persentil ke-99 dalam milisaat dua digit. Jika fio melaporkan bahawa enjin libaio tidak boleh dimuatkan, gunakan --ioengine=psync --iodepth=1 dan jangkakan angka yang lebih rendah, kerana enjin tersebut mengeluarkan satu permintaan pada satu masa.
vmstat 1 5
sudo apt install -y sysstat
iostat -x 1 5Dalam vmstat, lajur st ialah steal time: bahagian masa vCPU anda sedia untuk dijalankan sementara hos memberikan kitaran tersebut kepada tetamu lain. Angka yang stabil melebihi 5 bermakna nod tersebut terlebih langgan (oversubscribed), yang merupakan ujian sebenar bagi tuntutan "CPU khusus". Dalam iostat -x, perhatikan %util, r_await dan w_await. %util yang menghampiri 100 dengan w_await dalam puluhan milisaat bermakna cakera adalah kesesakan (bottleneck) dan tiada penalaan aplikasi yang akan membantu. Untuk semakan khusus flash, mengesahkan bahawa cakera NVMe benar-benar NVMe pergi dengan lebih mendalam.
Pemilihan mengikut beban kerja
- Sasaran sandaran untuk restic, Borg atau rsync. VPS storan, dan inilah tujuan ia dibina. Penulisan adalah besar dan berjujukan, penyahduplikasian berlaku pada mesin sumber, dan tiada apa-apa yang menunggu hasilnya. Satu peringatan:
restic prunedanrestic check --read-datamembaca keseluruhan repositori dalam cebisan kecil, jadi peruntukkan masa untuknya dan jalankannya mengikut jadual. Lihat menjalankan sandaran restic ke VPS. - Pustaka media Immich atau Jellyfin. VPS storan untuk fail, dengan amaran mengenai CPU. Immich menjana imej kecil (thumbnail) dan menjalankan tugasan pembelajaran mesin semasa import, manakala Jellyfin melakukan transkod semasa main balik. Dua vCPU kongsi akan mengambil masa yang sangat lama untuk import pertama 200 GB foto. Simpan pangkalan data dan cache imej kecil pada cakera terpantas dalam pelayan. self-hosting Immich sebagai pengganti Google Photos merangkumi penentuan saiz.
- PostgreSQL atau MySQL. Pelan NVMe standard. Setiap commit berakhir dengan
fsyncyang mesti sampai ke storan tahan lama sebelum transaksi dikembalikan, jadi kependaman commit adalah kependaman cakera, dan carian indeks adalah bacaan rawak 8 kB yang merupakan jenis operasi paling perlahan bagi cakera berputar. - Aplikasi web, API atau control plane. Pelan standard. Ini memerlukan teras dan kependaman yang boleh diramal, dan ia jarang memerlukan lebih daripada 100 GB.
- Cache CI atau stor artifak. Ia bergantung pada saiz fail. Fail tarball yang besar distrim daripada pelan storan pada kelajuan rangkaian penuh. Cache yang mengandungi ratusan ribu fail kecil, yang ditarik secara selari oleh beberapa runner, sebenarnya adalah IO rawak dan akan mengecewakan anda.
Bagaimana keadaannya apabila anda melakukan kesilapan ini
Kegagalan tidak berlaku serta-merta. Pangkalan data pada pelan storan cakera berputar terasa lancar dengan seorang pengguna, namun lumpuh apabila mencapai sepuluh pengguna. Ini kerana pertanyaan yang sebelum ini mencapai RAM mula mencapai cakera, dan setiap satu kini mengambil masa milisaat berbanding mikrosaat. Purata beban meningkat sementara top menunjukkan CPU kebanyakannya melahu dengan angka %wa yang tinggi. Ini bermakna proses disekat sementara menunggu cakera dan bukannya melakukan pengiraan. iostat -x 1 menunjukkan %util hampir mencecah 100.
PostgreSQL menyatakan perkara ini dengan jelas dalam lognya sendiri, memandangkan log_checkpoints diaktifkan secara lalai bermula versi 15:
LOG: checkpoint complete: wrote 8241 buffers (2.5%); ... write=112.402 s, sync=9.318 s, total=121.914 sAngka sync= adalah angka yang penting. Ia merupakan masa yang dihabiskan oleh checkpoint untuk menunggu fsync kembali. Oleh itu, nilai dalam saat bermakna cakera tidak dapat menyerap penulisan sepantas pangkalan data menghasilkannya. Sambungan klien terhenti dalam tempoh tersebut walaupun pertanyaan itu sendiri adalah ringan. Penyelesaiannya bukanlah perubahan konfigurasi. Pindahkan direktori data ke NVMe, dan kekalkan pelan storan tersebut untuk kegunaan yang bersesuaian, iaitu menyimpan sandaran pangkalan data berkenaan.
FAQ
Adakah storage VPS lebih perlahan daripada VPS biasa?
Untuk bacaan dan penulisan rawak, ya, dengan perbezaan yang besar. Pelan storan cakera berputar hanya mampu mengendalikan beberapa ratus permintaan rawak kecil sesaat pada kelajuan sekitar 8 ms setiap satu, manakala pelan NVMe mampu mengendalikan puluhan ribu permintaan pada kelajuan di bawah 1 ms. Untuk pemindahan jujukan, kedua-duanya lebih setara kerana tatasusunan storan masih mampu menstrim 150 MB/s atau lebih, yang mencukupi untuk memenuhi port 1 Gbit/s. Ukur prestasi anda sendiri dengan fio --rw=randread --bs=4k --direct=1 sebelum membuat keputusan.
Bolehkah saya menjalankan PostgreSQL pada storage VPS?
Anda boleh memulakannya, dan ia akan berfungsi sehingga set kerja tidak lagi muat di dalam RAM. Selepas itu, setiap commit akan menunggu fsync pada cakera yang perlahan, dan Postgres akan merekodkannya sebagai angka sync= dalam unit saat di dalam checkpoint complete, manakala iostat -x 1 akan menunjukkan %util menghampiri 100 dengan w_await yang tinggi. Susunan yang biasa digunakan ialah VPS NVMe kecil untuk pangkalan data dan storage VPS sebagai sasaran untuk fail dump pangkalan data tersebut.
Adakah VDS bermaksud saya mendapat perkakasan khusus?
Tidak semestinya. VDS tidak mempunyai maksud standard. Sesetengah penyedia menggunakannya untuk teras CPU yang dikhaskan (pinned), sesetengah untuk virtualisasi KVM penuh berbanding bekas kernel kongsi, dan sesetengah lagi menggunakannya hanya sebagai nama pemasaran. Jalankan systemd-detect-virt untuk melihat sama ada anda berada pada kvm atau lxc, dan jalankan vmstat 1 5 serta perhatikan lajur st untuk melihat sama ada penyewa lain sedang menggunakan kitaran CPU anda.
Bagaimanakah cara untuk mengetahui sama ada cakera VPS saya benar-benar NVMe?
Jangan percaya lsblk -d -o NAME,ROTA,MODEL, kerana cakera virtio biasanya melaporkan ROTA=0 dan rentetan model kosong tidak kira apa perkakasan yang berada di bawahnya. Jalankan ujian bacaan rawak fio selama 30 saat dengan --direct=1 dan baca nilai IOPS serta latensi persentil ke-99. Ratusan IOPS pada latensi dua digit milisaat bermaksud ia adalah tatasusunan cakera berputar. Puluhan ribu IOPS pada bawah satu milisaat bermaksud ia adalah storan kilat (flash).