«Ο server είναι αργός, ας διπλασιάσουμε τη RAM» είναι το ακριβότερο αντανακλαστικό στο hosting. Κάποιες φορές είναι σωστό. Συχνά όμως το μηχάνημα περιμένει τον δίσκο ή η CPU είναι στο φουλ, και η νέα μνήμη κάθεται άπραγη ενώ ο λογαριασμός διπλασιάζεται.
Πριν λοιπόν μιλήσουμε για το ποιος χρειάζεται 64 GB, ας δούμε τι σας λείπει πραγματικά. Αν θέλετε απλώς τυπικά νούμερα μνήμης ανά φορτίο, τα έχει ο παλιότερος οδηγός μας Πόση RAM χρειάζεται ένα VPS, μαζί με τον τύπο για τα γλωσσικά μοντέλα. Αυτό εδώ αφορά τη διάγνωση: RAM, δίσκος ή CPU.
Τρεις εντολές, δύο λεπτά
Τρέξτε τες στον αργό server ενώ είναι αργός, όχι στις τέσσερις το πρωί που δεν συμβαίνει τίποτα:
free -m
vmstat 1 10
cat /proc/pressure/cpu /proc/pressure/memory /proc/pressure/io
Δείτε πώς τις διαβάζετε χωρίς εγχειρίδιο.
free -m. Αγνοήστε τη στήλη free· το Linux γεμίζει επίτηδες την ελεύθερη μνήμη με cache δίσκου. Κοιτάξτε το available. Αν σε μηχάνημα 2 GB δείχνει μόνο μερικές εκατοντάδες megabyte και το used του swap ανεβαίνει συνεχώς, η μνήμη είναι στο όριο.
vmstat 1 10. Τέσσερις στήλες λένε το μεγαλύτερο μέρος της ιστορίας:
| Στήλη | Τι σημαίνει | Δείχνει |
|---|---|---|
si / so | σελίδες που μπαίνουν και βγαίνουν από το swap ανά δευτερόλεπτο | RAM |
wa | % του χρόνου που η CPU περιμένει τον δίσκο | δίσκο |
us + sy | % του χρόνου που η CPU δουλεύει | CPU |
st | % του χρόνου που ο hypervisor έδωσε τη CPU σας σε κάποιον άλλο | CPU (το vCPU μοιράζεται με άλλους) |
Μερικές μη μηδενικές τιμές στα si/so πού και πού είναι φυσιολογικές. Το πραγματικό σήμα είναι σταθερό swap, δευτερόλεπτο με δευτερόλεπτο.
/proc/pressure/*. Το πιο ειλικρινές από τα τρία. Κάθε αρχείο δείχνει τι ποσοστό του χρόνου οι εργασίες έμειναν σταματημένες περιμένοντας αυτόν τον πόρο. Το some avg60=25.00 στο memory σημαίνει ότι στο τελευταίο λεπτό κάτι περίμενε μνήμη το ένα τέταρτο του χρόνου. Όποιο από τα τρία αρχεία έχει τα μεγαλύτερα νούμερα, εκεί είναι το σημείο συμφόρησης.
Αν φταίει ο δίσκος
Υψηλό wa, υψηλή πίεση io, λίγο swap. Η συνηθισμένη αιτία είναι μια βάση δεδομένων ή μια εφαρμογή με πολλά logs που διαβάζει περισσότερα από όσα χωράνε στην cache.
Και εδώ η ανατροπή: περισσότερη RAM μπορεί να το λύσει, γιατί το Linux θα κάνει cache μεγαλύτερο μέρος του δίσκου. Αν η βάση σας είναι 6 GB και το θερμό της κομμάτι 3 GB, η μετάβαση από 2 σε 8 GB μνήμης μπορεί να εξαφανίσει το πρόβλημα του δίσκου. Αν όμως η βάση είναι 300 GB και κάθε ερώτημα αγγίζει διαφορετικό κομμάτι, καμία λογική ποσότητα RAM δεν θα τη χωρέσει στην cache. Τότε βοηθούν καλύτερα ευρετήρια, μικρότερα ερωτήματα ή διαφορετική οργάνωση δεδομένων. Όλα τα τιμολόγια εδώ τρέχουν σε NVMe, οπότε σπάνια ο ίδιος ο δίσκος είναι το αργό κομμάτι. Ο τρόπος πρόσβασης συνήθως είναι.
Αν φταίει η CPU
Υψηλά us+sy, πίεση cpu, καθόλου swap, λίγη αναμονή δίσκου. Συμπίεση, builds, κωδικοποίηση βίντεο, επεξεργασία εικόνας, κρυπτογραφικοί υπολογισμοί. Η περισσότερη μνήμη δεν βοηθά καθόλου.
Προσέξτε και το st. Σε ένα VPS, το vCPU είναι ένα μερίδιο από τον χρόνο ενός φυσικού πυρήνα, όχι ολόκληρος ο πυρήνας: ο αριθμός στο τιμολόγιο είναι ανώτατο όριο για αιχμές, και το παρατεταμένο πλήρες φορτίο μπορεί να περιοριστεί ώστε να είναι δίκαιο για όλους στο μηχάνημα. Αν η εργασία σας θέλει όλους τους πυρήνες στο 100 % για ώρες, αυτό είναι ζήτημα του ίδιου του φορτίου, και προτιμούμε να το πούμε τώρα παρά αφού αγοράσετε μεγαλύτερο τιμολόγιο.
Αν φταίει πραγματικά η RAM
Σταθερό swap, αυξανόμενη πίεση μνήμης, ο OOM killer στο dmesg. Τώρα το ερώτημα είναι: πόση.
Τα 2 GB αρκούν, συχνά για χρόνια, για: ένα ή μερικά bots, ένα μικρό API, ένα VPN, ένα στατικό site πίσω από Nginx, μερικούς scrapers σε cron, έναν agent παρακολούθησης. Το Micro δίνει 2 vCPU, 2 GB και 25 GB με $5 τον μήνα σε NAT ή $10 με δικό του IPv4.
Τα 4–8 GB είναι η άνετη μέση: μια web εφαρμογή με τη βάση της, ένα μικρό ευρετήριο αναζήτησης, αυτοματοποίηση headless browser, δυο-τρεις πράκτορες δίπλα δίπλα.
Τα 32–64 GB είναι για δεδομένα που πρέπει να ζουν στη μνήμη:
- μια βάση με σύνολο εργασίας δεκάδων gigabyte, ώστε η cache να κρατά πραγματικά τα θερμά δεδομένα·
- μια μεγάλη cache ή ουρά στη μνήμη που δεν μπορεί να ξεχειλίσει στον δίσκο χωρίς να επιβραδύνει τα πάντα·
- ένα ευρετήριο διανυσμάτων για αναζήτηση σε εκατομμύρια κομμάτια (πραγματικά νούμερα στο Self-hosted RAG σε μεγάλη κλίμακα)·
- inference μεσαίου γλωσσικού μοντέλου σε CPU, όπου τα βάρη πρέπει να χωρούν στη RAM·
- ενοποίηση: δέκα υπηρεσίες που πριν ζούσαν σε δέκα μικρούς servers.
Γι' αυτό υπάρχει το Pro-64: 12 vCPU, 64 GB RAM, 600 GB NVMe και αποκλειστικό IPv4 με $70 τον μήνα. Τα ενδιάμεσα σκαλιά είναι το Pro-32 με $40 και το Pro-48 με $55· από πάνω, το Pro-80 με $90. Η διαθεσιμότητα τοποθεσιών για τα τιμολόγια Pro φαίνεται στην παραγγελία.
Πού δεν ταιριάζει ένα μεγάλο μηχάνημα
Τρεις περιπτώσεις όπου τα 64 GB είναι λάθος απάντηση, ακόμη κι αν σας τα επιτρέπει ο προϋπολογισμός.
Δουλειά σε GPU. Κανένα από αυτά τα τιμολόγια δεν έχει GPU. Αν το μοντέλο σας χρειάζεται GPU για εκπαίδευση ή γρήγορο inference, ένα μηχάνημα CPU με πολλή RAM θα το τρέξει, αργά, και θα πληρώνετε για την υπομονή σας.
Παρατεταμένες εργασίες σε πλήρη CPU. Όπως είπαμε: τα vCPU είναι χωρητικότητα για αιχμές. Δώδεκα στο 100 % όλο το εικοσιτετράωρο δεν είναι αυτό για το οποίο φτιάχτηκε ένα VPS.
Και το «για καλό και για κακό». Αν οι τρεις εντολές δεν δείχνουν πίεση μνήμης, τα επιπλέον 60 GB γίνονται cache για αρχεία που δεν διαβάζετε. Ξεκινήστε μικρότερα. Η μετάβαση σε μεγαλύτερο τιμολόγιο του ίδιου τύπου δικτύου προσθέτει vCPU, RAM και δίσκο επί τόπου, με μία επανεκκίνηση, όπως περιγράφεται στην Αλλαγή τιμολογίου. Η μείωση επί τόπου δεν γίνεται, οπότε η υπερβολικά μεγάλη αγορά έχει πραγματικό κόστος: για να μικρύνετε μεταφέρεστε σε νέο server, και το να μεταφέρετε ένα VPS χωρίς διακοπή είναι αγγαρεία που καλύτερα να μη χρειαστείτε.
Αν συγκρίνετε τιμολόγια διαφορετικών παρόχων, το Πώς να διαβάζετε τα χαρακτηριστικά ενός VPS εξηγεί τι υπόσχονται πραγματικά τα νούμερα για vCPU, δίσκο και θύρα.
Σχόλια
Δεν υπάρχουν ακόμη σχόλια. Γίνετε ο πρώτος.