డిస్క్ వేగం: baseline మరియు burst
టియర్ ప్రకారం డిస్క్ వేగ పరిమితి ఎలా లెక్కించబడుతుంది, 30-సెకన్ల burst ఎందుకు అవసరం, నిజమైన వేగాన్ని ఎలా కొలవాలి మరియు దాన్ని తాకితే ఏమి చేయాలి.
23 ఆగస్టు, 2026న నవీకరించబడింది
VPSలో డిస్క్ NVMe అవుతుంది, కానీ ఒక మెషిన్ నోడ్ యొక్క షేర్డ్ రిసోర్స్ను మొత్తం తినకుండా ఉండేలా స్పీడ్ టియర్ ద్వారా పరిమితం చేయబడుతుంది. ఈ సంఖ్యలను అర్థం చేసుకోవడం వల్ల “CPU ఖాళీగా ఉన్నప్పుడు డేటాబేస్ ఎందుకు నెమ్మదిగా ఉంది” అనే ప్రశ్న నుండి మీరు తప్పించుకుంటారు.
ఇది ఎలా లెక్కించబడుతుంది
రైట్ బేస్లైన్ ప్రతి కోర్కు 60 MB/s, కానీ 60 కంటే తక్కువ కాదు మరియు 400 MB/s కంటే ఎక్కువ కాదు. రీడ్ అనేది రైట్ బేస్లైన్కు రెట్టింపు. బేస్లైన్ పైన, దాని విలువకు మూడు రెట్ల బరస్ట్ 30 సెకన్ల పాటు అందుబాటులో ఉంటుంది.
| టియర్ | కోర్లు | రైట్ బేస్లైన్ | రీడ్ బేస్లైన్ | రైట్ బరస్ట్ (30 సె) |
|---|---|---|---|---|
| VDS-1 | 1 | 60 MB/s | 120 MB/s | 180 MB/s |
| VDS-2 | 2 | 120 MB/s | 240 MB/s | 360 MB/s |
| VDS-3 | 4 | 240 MB/s | 480 MB/s | 720 MB/s |
| VDS-4 | 6 | 360 MB/s | 720 MB/s | 1080 MB/s |
| VDS-5 | 8 | 400 MB/s | 800 MB/s | 1200 MB/s |
| VDS-6 | 10 | 400 MB/s | 800 MB/s | 1200 MB/s |
బరస్ట్ తన పనిని నిర్వహిస్తుంది: అప్లికేషన్ స్టార్టప్, ఆర్కైవ్ ఎక్స్ట్రాక్షన్, మైగ్రేషన్ వర్తింపజేయడం. స్థిరమైన రైట్ స్ట్రీమ్ — గిగాబైట్లను కాపీ చేయడం, బిల్డ్, పెద్ద డేటాబేస్ను స్కాన్ చేయడం — బేస్లైన్ వద్ద నడుస్తుంది.
ఎలా కొలవాలి
sudo apt install -y fio
fio --name=w --rw=write --bs=1M --size=2G --numjobs=1 \
--runtime=60 --time_based --end_fsync=1 --directory=/var/tmp
మొదటి సెకన్లు బరస్ట్ను చూపుతాయి, తర్వాత స్పీడ్ బేస్లైన్కు పడిపోతుంది — ఇది సాధారణ మరియు ఆశించిన చిత్రం, లోపం కాదు.
ప్యాకేజీలను ఇన్స్టాల్ చేయకుండా శీఘ్ర స్థూల తనిఖీ:
dd if=/dev/zero of=/var/tmp/testfile bs=1M count=2048 oflag=direct
rm /var/tmp/testfile
పని సమయాల్లో ప్రొడక్షన్ మెషిన్పై డిస్క్ టెస్ట్లను అమలు చేయవద్దు. టెస్ట్ నిజంగా మొత్తం అందుబాటులో ఉన్న బ్యాండ్విడ్త్ను వినియోగిస్తుంది, ఆ నిమిషాల్లో మీ సైట్ స్పందించడానికి సెకన్లు పడుతుంది. మరియు టెస్ట్ ఫైల్లను వెనుక వదిలివేయవద్దు: 40 GB డిస్క్లో రెండు గిగాబైట్లు గమనించదగిన వాటా, డిస్క్ స్పేస్ చూడండి.
డిస్క్ బాటిల్నెక్ అని ఎలా గుర్తించాలి
sudo apt install -y sysstat
iostat -x 2 5
vmstat 2 5
రెండు మెట్రిక్లను చూడండి: %util 100కు దగ్గరగా ఉండటం మరియు await పదుల మిల్లీసెకన్లలో ఉండటం డిస్క్ క్యూను సూచిస్తాయి. vmstatలో సంకేతం అదే — పెరుగుతున్న b కాలమ్ (వేచి ఉన్న ప్రాసెస్లు) తక్కువ CPU వినియోగ శాతంతో కలిసి ఉంటుంది.
మరో లక్షణం: దాదాపు నిష్క్రియంగా ఉన్న CPUతో అధిక load average. Linux లోడ్ యావరేజ్ డిస్క్ కోసం వేచి ఉన్న ప్రాసెస్లను కూడా లెక్కిస్తుంది.
సరిగ్గా ఎవరు రాస్తున్నారు:
sudo iotop -o -b -n 3
మీరు బాటిల్నెక్ను తాకినట్లయితే ఏమి చేయాలి
- వాటిని సమయంలో వేరు చేయండి. కాపీలు, రిజిస్ట్రీ బిల్డ్లు, రిపోర్ట్లు — రాత్రిపూట మరియు ఒకే సమయంలో కాదు. షెడ్యూల్ చేసిన పనులు చూడండి.
- బ్యాక్గ్రౌండ్ టాస్క్లను పరిమితం చేయండి. అత్యవసరం కాని ప్రతిదానికీ
rsync --bwlimit,nice -n 19 ionice -c3 <command>. - రైట్లను తగ్గించండి. లాగ్ పరిమాణాన్ని పరిమితం చేయండి, అప్లికేషన్లో అధిక వెర్బోసిటీని నిలిపివేయండి, రీబూట్ను తట్టుకుంటే క్యాష్ను మెమరీకి (
tmpfs) తరలించండి. - డేటాబేస్ను ట్యూన్ చేయండి. PostgreSQL మరియు MySQLలో, రైట్లలో సింహభాగం ట్రాన్సాక్షన్ లాగ్. బఫర్లకు ఎక్కువ మెమరీ అంటే తక్కువ డిస్క్ యాక్సెస్లు.
- ఒక టియర్ పైకి వెళ్లండి. బేస్లైన్ కోర్లతో పెరుగుతుంది: VDS-1 నుండి VDS-2కు అది రెట్టింపు అవుతుంది. ప్లాన్ అప్గ్రేడ్లు పైకి మాత్రమే సాధ్యం, చెల్లించిన కాలానికి మిగిలిన రోజులకు అదనపు చెల్లింపుతో.
సాధారణ తప్పులు
oflag=directలేకుండాddతో స్పీడ్ను కొలవడం. డేటా పేజ్ క్యాష్లో స్థిరపడుతుంది, సంఖ్యలు పెంచి చూపుతాయి.- బరస్ట్ను స్థిరమైన స్పీడ్గా భావించడం. మొదటి 30 సెకన్లు వేగంగా ఉంటాయి, తర్వాత బేస్లైన్ — ఇది ఉద్దేశపూర్వకంగా ఉంటుంది.
- యాక్టివ్ డిస్క్పై స్వాప్ను ఉంచి దానిలోకి స్వాప్ చేయడం. మెమరీ తక్కువగా ఉన్నప్పుడు, స్వాప్ డిస్క్ను బాటిల్నెక్గా మారుస్తుంది: కంటైనర్లను పరిమితం చేయడం మంచిది, రిసోర్స్ పరిమితులు చూడండి.