«الخادم بطيء، لنضاعف الذاكرة» هو أغلى ردّ فعل في عالم الاستضافة. أحيانًا يكون صحيحًا. لكن كثيرًا ما يكون الجهاز ينتظر القرص، أو يكون المعالج في أقصى طاقته، فتبقى الذاكرة الجديدة بلا عمل بينما تتضاعف الفاتورة.
لذا، قبل أن نتحدث عمّن يحتاج إلى 64 GB، لنكتشف ما الذي ينقصك فعلًا. إن كنت تريد فقط أرقام الذاكرة المعتادة لكل نوع من الأحمال، فهي في دليلنا السابق كم ذاكرة يحتاج خادم VPS، بما فيها معادلة النماذج اللغوية. هذا المقال عن التشخيص: الذاكرة أم القرص أم المعالج.
ثلاثة أوامر، دقيقتان
شغّلها على الخادم البطيء وهو بطيء، لا في الرابعة فجرًا حين لا يحدث شيء:
free -m
vmstat 1 10
cat /proc/pressure/cpu /proc/pressure/memory /proc/pressure/io
إليك طريقة قراءتها دون كتاب.
الأمر free -m. تجاهل العمود free؛ فـ Linux يملأ الذاكرة الفائضة عمدًا بذاكرة التخزين المؤقت للقرص. انظر إلى available. إذا أظهر بضع مئات من الميغابايتات فقط على جهاز بسعة 2 GB، وظل used في swap يرتفع، فالذاكرة شحيحة.
الأمر vmstat 1 10. أربعة أعمدة تروي معظم القصة:
| العمود | معناه | يشير إلى |
|---|---|---|
si / so | الصفحات الداخلة إلى swap والخارجة منه في الثانية | الذاكرة |
wa | نسبة الوقت الذي ينتظر فيه المعالج القرص | القرص |
us + sy | نسبة الوقت الذي يعمل فيه المعالج | المعالج |
st | نسبة الوقت الذي أعطى فيه المشرف الافتراضي معالجك لغيرك | المعالج (vCPU يُقسَّم مع آخرين) |
بعض القيم غير الصفرية في si/so من حين لآخر أمر طبيعي. الإشارة الحقيقية هي swap ثابت، ثانية بعد ثانية.
الملفات /proc/pressure/*. أكثر الثلاثة صدقًا. يُظهر كل ملف نسبة الوقت الذي توقفت فيه المهام بانتظار ذلك المورد. some avg60=25.00 في memory يعني أن شيئًا ما انتظر الذاكرة ربع الوقت خلال الدقيقة الأخيرة. الملف ذو الأرقام الأكبر هو عنق الزجاجة لديك.
إذا كان القرص هو السبب
wa مرتفع، وضغط io مرتفع، وswap قليل. السبب المعتاد قاعدة بيانات أو تطبيق كثير السجلات يقرأ أكثر مما يتسع له التخزين المؤقت.
وهنا المفاجأة: ذاكرة أكبر قد تحل ذلك، لأن Linux سيخزّن جزءًا أكبر من القرص مؤقتًا. إذا كانت قاعدة بياناتك 6 GB وجزؤها الساخن 3 GB، فقد يُخفي الانتقال من 2 GB إلى 8 GB من الذاكرة مشكلة القرص تمامًا. أما إذا كانت قاعدة البيانات 300 GB وكل استعلام يلمس جزءًا مختلفًا، فلن تكفي أي كمية معقولة من الذاكرة لتخزينها مؤقتًا. عندها يكون الحل فهارس أفضل أو استعلامات أصغر أو تنظيمًا مختلفًا للبيانات. كل الباقات هنا تعمل على NVMe، لذا نادرًا ما يكون القرص نفسه هو الجزء البطيء. غالبًا ما يكون نمط الوصول إليه.
إذا كان المعالج هو السبب
us+sy مرتفعان، وضغط على cpu، ولا swap، وانتظار قليل للقرص. الضغط والبناء وترميز الفيديو ومعالجة الصور والحسابات التشفيرية. الذاكرة الإضافية لا تفيد هنا إطلاقًا.
راقب أيضًا st. في VPS يكون vCPU حصة من وقت نواة فعلية، لا النواة كلها: الرقم في الباقة سقف للارتفاعات القصيرة، والحمل الكامل المستمر قد يُقيَّد ليبقى الأمر عادلًا لكل من على الجهاز. إذا كانت مهمتك تحتاج إلى كل الأنوية بنسبة 100% لساعات، فهذه مسألة تخص المهمة نفسها، ونفضّل أن نقول ذلك الآن لا بعد أن تشتري باقة أكبر.
إذا كانت الذاكرة فعلًا هي السبب
swap ثابت، وضغط ذاكرة متصاعد، وOOM killer في dmesg. الآن السؤال: كم.
تكفي 2 GB، وغالبًا لسنوات، لـ: بوت واحد أو بضعة بوتات، وواجهة API صغيرة، وVPN، وموقع ثابت خلف Nginx، وبضع أدوات كشط على cron، ووكيل مراقبة. يقدّم Micro 2 vCPU و2 GB و25 GB مقابل 5 دولارات شهريًا على NAT، أو 10 دولارات مع IPv4 خاص به.
4–8 GB هي المنطقة الوسطى المريحة: تطبيق ويب مع قاعدة بياناته، وفهرس بحث صغير، وأتمتة متصفح بلا واجهة، ووكيلان أو ثلاثة يعملون جنبًا إلى جنب.
32–64 GB للبيانات التي يجب أن تعيش في الذاكرة:
- قاعدة بيانات مجموعة عملها عشرات الغيغابايتات، كي تحتفظ ذاكرة التخزين المؤقت فعلًا بالبيانات الساخنة؛
- ذاكرة تخزين مؤقت أو طابور كبير في الذاكرة لا يمكن أن يفيض إلى القرص دون إبطاء كل شيء؛
- فهرس متجهات للبحث في ملايين المقاطع (أرقام حقيقية في RAG ذاتي الاستضافة على نطاق واسع)؛
- استدلال نموذج لغوي متوسط الحجم على المعالج، حيث يجب أن تتسع الأوزان في الذاكرة؛
- الدمج: عشر خدمات كانت تعيش سابقًا على عشرة خوادم صغيرة.
لهذا وُجد Pro-64: 12 vCPU و64 GB ذاكرة و600 GB على NVMe وعنوان IPv4 مخصّص مقابل 70 دولارًا شهريًا. الدرجات الوسطى هي Pro-32 بـ 40 دولارًا وPro-48 بـ 55 دولارًا؛ وفوقه Pro-80 بـ 90 دولارًا. توفّر المواقع لـباقات Pro يظهر عند الطلب.
حيث لا يناسب الجهاز الكبير
ثلاث حالات يكون فيها 64 GB الإجابة الخاطئة، حتى لو استطعت تحمّل التكلفة.
العمل على GPU. لا تملك أي من هذه الباقات GPU. إذا احتاج نموذجك إلى GPU للتدريب أو للاستدلال السريع، فسيشغّله جهاز معالج بذاكرة كبيرة، ببطء، وستدفع ثمن الصبر.
المهام المستمرة على المعالج بكامل طاقته. كما قلنا: vCPU قدرة للارتفاعات. تشغيل اثني عشر منها بنسبة 100% ليلًا ونهارًا ليس ما صُمّم له VPS.
و«تحسّبًا لأي طارئ». إذا لم تُظهر الأوامر الثلاثة ضغطًا على الذاكرة، فالـ 60 GB الإضافية ستصبح تخزينًا مؤقتًا لملفات لا تقرؤها. ابدأ أصغر. الانتقال إلى باقة أكبر من نوع الشبكة نفسه يضيف vCPU والذاكرة والقرص في المكان نفسه بإعادة تشغيل واحدة، كما يشرح قسم تغيير الباقة. التصغير في المكان غير ممكن، لذا فالشراء الزائد له تكلفة حقيقية: للتصغير تنتقل إلى خادم جديد، ونقل VPS دون انقطاع عمل تفضّل ألا تحتاج إليه.
إن كنت تقارن باقات مزوّدين مختلفين، فمقال كيف تقرأ مواصفات VPS يشرح ما الذي تعد به فعلًا أرقام vCPU والقرص والمنفذ.
التعليقات
لا تعليقات بعد. كن الأول.