أفضل بدائل DigitalOcean للمطورين ومقارنة الأسعار
قارن السعر لكل GB من RAM، والنقل المشمول، وتخزين NVMe والنسخ الاحتياطية، ثم اتبع خطة انتقال إلى بديل DigitalOcean دون توقف الخدمة.
ما الذي تغيّره بدائل DigitalOcean فعلياً
تغيّر معظم بدائل DigitalOcean قيمة الفاتورة، لا الجهاز. تحصل في كلتا الحالتين على آلة Linux افتراضية بعنوان IP عام، وقرص virtio، ووصول إلى حساب root، كما أن النواة لا تهتم بالجهة المالكة للشعار الظاهر في لوحة التحكم. تتمثل الفروق التي تحدد الاختيار في السعر لكل GB من RAM، وحجم حصة نقل البيانات المشمولة، وتكلفة كل byte يتجاوزها، ومكونات القرص الفعلية، ومقدار طبقة التشغيل التي تتجاوز نظام التشغيل والتي سيديرها طرف آخر نيابةً عنك.
تقارن هذه المقالة بين الخيارات وفق هذه المحاور، لأن المطوّر يستطيع التحقق من كل واحد منها عبر الطرفية أو من قائمة أسعار منشورة. كما توضّح الحالات التي يكون فيها DigitalOcean هو الخيار الصحيح، لأن المقارنة التي لا تقرّ بأي ميزة ليست سوى إعلان.
كل سعر أدناه هو سعر القائمة المنشور، وقد جرى التحقق منه في 5 August 2026. تتغير الأسعار، وقد غيّر أكثر من مزود هنا أسعاره خلال 2026. أما هيكل التسعير فيتغير بوتيرة أبطأ بكثير، لذلك اقرأ النسب ونموذج الفوترة أولاً، ثم تحقّق من السعر الحالي في صفحة المزود نفسه قبل الالتزام.
سعر كل GB من RAM هو الرقم الذي يجب مقارنته
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"
}
]داخل مزود واحد، لا يتغير سعر كل GB من RAM إلا قليلاً. تفرض DigitalOcean مبلغ $6.00 لكل GB في الخطة التي تضم 1 GB، والمبلغ نفسه، $6.00 لكل GB في الخطة التي تضم 4 GB، والتي يبلغ سعرها $24.00 شهرياً. اختيار خطة أكبر لدى المزود نفسه لا يمنحك خصماً، لذلك لا يمثل حجم الخطة عامل القرار. العامل الحاسم هو المزود.
تسعّر Akamai، التي تبيع الآن ما كان يُعرف باسم Linode، خطتيها المشتركتين بسعة 2 GB و4 GB بمبلغي $12 و$24، وهما نفس سعري DigitalOcean تماماً. أما خطتها الابتدائية فسعرها أقل منهما، إذ يبلغ $5.00. عندما تتطابق شركتان تماماً في السعر، فهذه إشارة تستحق القراءة: تُسعَّر هذه الفئة مقارنةً بمنافس، لا مقارنةً بالمكونات المادية، وستواصل تتبّع سعر ذلك المنافس.
تظهر الفجوة لدى المزودين الذين يبنون مراكز بياناتهم بأنفسهم ويبيعون باليورو. تمنحك Hetzner CX23 سعة 4 GB من RAM مقابل نحو $6.49 شهرياً، أي $1.62 لكل GB، وهو ما يقارب ربع سعر DigitalOcean. حُوِّل هذا السعر بالدولار من سعر مدرج باليورو، لذلك يتغير مع سعر الصرف. كما رفعت Hetzner أسعار الخدمات السحابية خلال 2026، ولذلك تعرض منشورات المقارنة الأقدم أرقاماً لم تعد موجودة.
لا يوضح سعر كل GB من RAM شيئاً عن وحدة CPU التي تحصل عليها. تعني vCPU المشتركة أن برنامج hypervisor يضبط جدولة نواتك بالتزامن مع عملاء آخرين، ويجب إجراء الفحص الفعلي على خادم استأجرته بالفعل:
vmstat 1 10اقرأ عمود st. فهو يحسب النسبة المئوية من الوقت الذي كانت فيه vCPU جاهزة للتنفيذ، بينما سلّم hypervisor النواة الفعلية إلى مستخدم آخر. تُعد نسبة بضع نقاط مئوية أثناء الحمل أمراً طبيعياً. أما النسبة المستمرة المكونة من رقمين فتعني أن المضيف يعاني من زيادة التحميل، ولا يمكن لأي سعر لكل GB أن يعوضك عن نواة لا تستطيع استخدامها. شغّل الاختبار خلال ساعة ذروة استخدامك، لأن وقت steal مشكلة يسببها الجار، ولدى الجيران جداول زمنية. للحصول على الصورة الأشمل لتكلفة الاستضافة الشهرية الفعلية بعد إضافة التخزين وحركة الشبكة، اقرأ ما تكلفة VPS من شهر إلى آخر.
التكلفة الفعلية لحصة النقل المضمّنة
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 مقدار 1 TB من النقل الصادر في الخطة الأساسية، وتحتسب الزيادة بوحدة GiB، أي ما يقارب $10.00 لكل TB إضافي. وتضمّن Akamai المقدار نفسه من TB، لكنها تحتسب نحو نصف هذه التكلفة، أي حوالي $5.00 لكل TB. أما Vultr فتضمّن 2 TB بسعر زيادة مماثل تقريباً. وتضمّن Hetzner مقدار 20 TB، ثم تفرض حوالي $1.20 لكل TB بعد ذلك، أي بفارق يبلغ رتبة عشرية عن المزوّدين الآخرين.
هناك ثلاثة تفاصيل بنيوية أهم من الأرقام المعلنة. حركة المرور الواردة مجانية لدى المزوّدين الأربعة، لذلك لا يُحتسب إلا ما ترسله إلى الخارج. تجمع DigitalOcean وVultr الحصة بين جميع الخوادم في الحساب، لذلك قد يستهلك خادم مزدحم حصة خادم آخر، وقد تتشارك مجموعة من الخوادم الصغيرة حصة واحدة كبيرة. كذلك لا تُحتسب عادةً حركة المرور بين الخوادم عبر شبكة خاصة أو شبكة VPC، ولهذا فإن وضع قاعدة البيانات على الواجهة الخاصة قرار متعلق بالفوترة والأمان معاً.
لا يهم أي من ذلك إذا كنت بعيداً عن الحد الأقصى. فلن تصل مدونة أو واجهة API تستجيب ببيانات JSON أو خدمة SaaS صغيرة إلى 1 TB خلال شهر. أما الفيديو ومعارض الصور وخوادم الألعاب ومرايا الحزم ووجهات النسخ الاحتياطي خارج الموقع فستصل إليه. قِس قبل أن تفترض:
sudo apt update && sudo apt install -y vnstat
sudo systemctl enable --now vnstat
vnstat -mيطبع vnstat -m حجم النقل شهرياً، مع الفصل بين البيانات المستلمة والمرسلة. لا تُحتسب في الفوترة إلا خانة البيانات المرسلة. تبدأ قاعدة البيانات فارغة، لذلك تظهر أول قراءة مفيدة بعد يوم من تثبيتها، ويظهر أول شهر كامل بعد شهر. وحتى ذلك الحين، يكون مخطط عرض النطاق الترددي الخاص بالمزوّد هو السجل الوحيد المتاح لك.
اطرح سؤالاً إضافياً لا تجيب عنه قوائم الأسعار: عندما تتجاوز الحصة، هل يفرض المزوّد رسوماً عليك أم يقيّد سرعة المنفذ؟ الفوترة تكلّف مالاً. أما تقييد السرعة فيكلّف المستخدمين، تحديداً في اللحظة التي يكون فيها عددهم الأكبر. يجب أن تعرف أيّ الخيارين ستشتريه زيادة مفاجئة في حركة المرور.
NVMe أو SATA، وكيف تتحقق مما حصلت عليه فعلياً
يقول panel إن التخزين من نوع NVMe. هذا وصف للأقراص الموجودة في المضيف، وقد لا تكون الآلة الافتراضية لديك مستضافة عليها. يضع التخزين المحلي القرص الافتراضي على محركات داخل الآلة الفعلية نفسها. أما التخزين الشبكي، فيضعه على عنقود تخزين منفصل يتم الوصول إليه عبر شبكة مركز البيانات. وهذا ما يتيح تغيير الحجم فورياً، والترحيل المباشر، وإنشاء اللقطات الموضعية.
داخل الضيف، يبدو النوعان متطابقين:
lsblk -d -o NAME,ROTA,MODEL,SIZE
cat /sys/block/vda/queue/rotationalتعرض ROTA وrotational القيمة 0 لأي جهاز يعرّفه المضيف على أنه غير دوّار. لذلك يعرض volume شبكي يعتمد على NVMe القيمة نفسها التي يعرضها NVMe المحلي. تخبرك هذه القيمة بأن القرص ليس طبقاً دوّاراً. لكنها لا تخبرك بمكان وجود القرص. يشرح تأكيد وجود قرص NVMe على Linux أسماء الأجهزة وما يدل عليه كل اسم.
الاختبار الذي يميّز بينهما هو زمن الاستجابة عند queue depth يساوي 1، لأن القراءة الصغيرة المنفردة لا تجد عمليات أخرى تخفي زمنها. يستجيب NVMe المحلي من الهيكل نفسه. أما volume الشبكي، فيضيف رحلة ذهاب وإياب عبر شبكة مركز البيانات إلى كل قراءة، لذلك يكون حد زمن استجابته الأدنى أعلى، حتى عندما يبدو معدل نقله مشابهاً عند queue depth عميق.
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/fiotestتعرض الجولة الأولى كتلة clat، وهي زمن إكمال العملية. اقرأ سطر المئين 99 بدلاً من المتوسط، لأن المتوسط يخفي حالات التوقف التي يشعر بها المستخدمون. تعرض الجولة الثانية IOPS= في سطر الملخص. شغّل الاختبارين على المزود الذي تستخدمه وعلى instance تجريبية لدى المزود الذي تفكر فيه، في اليوم نفسه، ثم قارن الرقمين اللذين حصلت عليهما بنفسك. قيس الرقم المنشور من أي من المزودين على آلة لا يمكنك رؤيتها. شغّل الاختبار 3 مرات في ساعات مختلفة أيضاً، لأن المضيف الهادئ والمضيف المشغول يعطيان نتيجتين مختلفتين على الخطة نفسها. يشرح إجراء اختبار أداء لـVPS بطريقة صحيحة المنهجية، بينما يشرح المقصود فعلياً بعبارة VPS مزود بـSSD المصطلحات التسويقية الكامنة وراء ذلك.
المناطق: قِس زمن الاستجابة، ولا تعتمد على الخريطة
تظل قائمة المناطق مادة تسويقية إلى أن تقيسها. ما يشعر به المستخدم هو زمن الذهاب والإياب بين شبكته وخادمك، وهذا يعتمد على المسار الذي تسلكه الحزم، لا على المسافة في الخريطة. قد يتفوق خادم يبعد 1,500 كم ويسلك مساراً نظيفاً على خادم يبعد 300 km خلف وصلة عبور مزدحمة.
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.comيعرض mtr كل قفزة مع فقدان الحزم وزمن الاستجابة الخاصين بها، ولذلك فإن زيادة قدرها 60 ms بين قفزتين تحدد الوصلة التي تسبب المشكلة، بدلاً من إلقاء اللوم على الوجهة. شغّله من جهاز موجود على الشبكة التي يستخدمها عملاؤك. تكون المسارات بين مراكز البيانات أفضل المسارات على الإنترنت، ولذلك تمنح كل مزود انطباعاً أفضل من الواقع بالقدر نفسه.
تبقى نقطة هيكلية واحدة صحيحة مهما تغيّرت الأسعار. إذا كان لدى المزود منطقة واحدة فقط في قارتك، فإن خطة التعافي من الكوارث لديك تعني الانتقال بين القارات، مع زمن الاستجابة الذي يترتب على ذلك. احسب عدد المناطق التي ستنتقل إليها فعلياً عند التعافي، لا عدد المناطق المعروضة على الصفحة.
اللقطات والنسخ الاحتياطية لها تكلفة منفصلة
إضافات التخزين هي ما يجعل الخطة الرخيصة مكلفة. تفرض DigitalOcean رسوماً قدرها $0.06 لكل GiB شهرياً مقابل اللقطات، وتسعّر النسخ الاحتياطية التلقائية كنسبة من سعر الخادم بدلاً من ذلك: 20% من سعر الخطة للنسخ الاحتياطية الأسبوعية، و30% للنسخ اليومية، مع خيار يعتمد على الاستخدام وتتم فوترته لكل GiB. كلا النموذجين قابل للدفاع عنه، لكن عيوبهما تسير في اتجاهين متعاكسين. يتناسب السعر النسبي مع حجم الخادم، لذلك يدفع خادم كبير يحتوي على مجموعة بيانات صغيرة أكثر من اللازم. ويتناسب السعر لكل GiB مع حجم بياناتك، لذلك يدفع خادم صغير متصل بوحدة تخزين كبيرة أكثر من اللازم.
اسأل عن تكلفة الاستعادة والمدة التي تستغرقها، لأن تكلفة الاحتفاظ بنسخة احتياطية ليست سوى الجزء الأقل أهمية من السؤال. واسأل عما إذا كان تدمير الخادم يؤدي أيضاً إلى تدمير لقطاته.
ثم احتفظ بنسخة لا يتحكم فيها المزوّد. توجد لقطات المزوّد داخل حساب المزوّد، لذلك يؤدي فقدان بيانات تسجيل الدخول، أو فشل الدفع، أو تعليق الحساب إلى فقدان الخادم ونسخه الاحتياطية في الوقت نفسه. النسخ الاحتياطية باستخدام restic في وحدة تخزين تملكها تكلف بضعة دولارات مقابل تخزين الكائنات، ويمكن استعادتها لدى أي مزوّد، وهي ما يجعل الترحيل قابلاً للعكس بدلاً من أن يكون نهائياً.
مقدار المكدس الذي تريد تشغيله
يقع مقدمو الخدمة على امتداد نطاق. في أحد طرفيه، تستأجر جهازاً وتشغّل كل شيء عليه بنفسك. وفي الطرف الآخر، تدفع فرعاً من git ولا ترى خادماً قط. تكون مقارنة السعر لكل GB من RAM مناسبة فقط عند الطرف الأول، لأنك عند الطرف الثاني تشتري عملاً بدلاً من الذاكرة، ولا يُسعَّر العمل لكل GB.
كن صريحاً بشأن الطرف الذي تنتمي إليه قبل أن تقارن أي شيء. تبدو قاعدة بيانات مُدارة بسعر $15.15 شهرياً باهظة بجانب خادم بسعر $6، إلى أن تحسب الساعات اللازمة لتشغيلها: النسخ المتماثل، والتحويل عند الفشل، والاستعادة إلى نقطة زمنية، وترقيات الإصدارات الثانوية، والتنبيه الذي يوقظ أحدهم عند 03:00. إذا كان هذا العمل من مسؤولياتك، فشغّله بنفسك واحتفظ بالفارق. وإذا كان عملك هو تطوير التطبيق، فإن شراء هذه الخدمة مجدٍ. يحدد الفرق بين الخدمات المُدارة وغير المُدارة عمود قائمة الأسعار الذي ينبغي أن تقرأه أصلاً. إذا كانت الإجابة الصريحة هي أنك تريد الجهاز بالكامل وأقراصه لك وحدك، فهذه مسألة VPS مقابل الخادم المخصص وليست مسألة مزود الخدمة. ويظهر السؤال نفسه في بقية الفاتورة الشهرية للمطور، إذ يعتمد مقارنة خطط Claude وChatGPT على مقدار العمل الذي تريد تفويضه، لا على السعر المعلن فقط.
متى يكون DigitalOcean هو الخيار المناسب
يتفوق DigitalOcean عندما تشتري المنصة، لا الآلة الافتراضية.
- قواعد البيانات المُدارة. تبدأ أسعار PostgreSQL وMySQL المُدارَتين من $15.15 شهرياً مقابل 1 GiB من الذاكرة و10 GiB من التخزين، مع احتساب التخزين الإضافي لكل GiB، وتسعير العقد الاحتياطية لكل عقدة. يتطلب بناء مستوى الاعتمادية نفسه داخلياً استخدام Patroni أو repmgr، ومخزن توافق، ووكيل اتصالات، وتدريباً على التحويل التلقائي إلى العقدة الاحتياطية سبق أن نفذته فعلياً. لا يستطيع فريق من شخصين صيانة ذلك وإصدار ميزات جديدة في الوقت نفسه.
- App Platform. ادفع فرعاً إلى المستودع، واحصل على عملية بناء وشهادة وخدمة قيد التشغيل، من دون نظام تشغيل يحتاج إلى تصحيحات. أما النسخة الرخيصة من هذا المنتج باستخدام VPS فهي أنت، يوم السبت.
- التخزين الكائني وموازنات التحميل التي يغطيها موفّر Terraform ناضج. تكون بنية يمكنك تدميرها وإعادة بنائها من الشيفرة أكثر قيمة من انخفاض سعر الوحدة.
- الشركة المحيطة بالمنتج. مستويات دعم منشورة، وصفحة حالة تتضمن السجل السابق، ومؤسسة ستجيب عن استبيان أمان يرسله عميل. إذا كنت تعيد بيع الاستضافة، فهذه المزايا تساوي أكثر من بضعة دولارات لكل GB.
ترتفع تكلفة DigitalOcean عندما تكون الآلة الافتراضية العادية هي ما تريده، وبأعداد كبيرة، مع حركة شبكة صادرة فعلية. هذه هي الحالة المحددة التي يعالجها البديل، وهي تمثل معظم ما يشتريه المطور الذي يستضيف خدماته بنفسه.
الانتقال إلى مزوّد جديد دون توقّف
ينتج التوقّف أثناء الانتقال عن سبب واحد: وصول حركة الشبكة إلى عنوان IP القديم بعد نقل البيانات إلى العنوان الجديد. تهدف كل خطوة أدناه إلى جعل هذه الفترة قصيرة وقابلة للتوقّع.
ابدأ بـDNS قبل الانتقال بـ48 ساعة على الأقل. تخزّن محللات DNS سجل A طوال مدة TTL الخاصة به، أي مدة البقاء. لذلك، إذا كان TTL للسجل 24 ساعة، فقد يستمر توجيه المستخدمين إلى الخادم القديم مدة تصل إلى يوم بعد تغييره. لا يفيد خفض TTL عند تنفيذ الانتقال، لأن محللات DNS تكون قد خزّنت القيمة القديمة مع وقت انتهاء الصلاحية القديم. اخفضه أولاً، وانتظر انتهاء صلاحية القيمة القديمة، ثم نفّذ الانتقال.
dig +noall +answer example.com A
dig +noall +authority example.com SOAيطبع الأمر الأول TTL الحالي في العمود الثاني من الإجابة. اضبطه على 300 لدى مزوّد DNS، ثم انتظر مدة أطول من الرقم الذي استبدلته للتو.
بعد ذلك، نفّذ العمل بالترتيب التالي.
- أنشئ الخادم الجديد وعزّزه أمنياً قبل وضع أي شيء آخر عليه. يشرح الدقائق العشر الأولى على VPS جديد الجزء الذي يتجاهله الناس عندما يكونون على عجلة.
- ثبّت حزمة التطبيق ونفّذ النسخة الأولية من البيانات باستخدام rsync، مع استمرار الخادم القديم في تقديم الخدمة بصورة طبيعية.
- أصدِر شهادة TLS على المضيف الجديد الآن باستخدام تحدّي DNS-01، لأن تحدّي HTTP-01 يتحقق من عنوان IP الذي يشير إليه DNS حالياً، وهو الخادم القديم. يزيل تحدّي DNS-01 مشكلة ترتيب الخطوات هذه بالكامل.
- اختبر المضيف الجديد قبل إجراء أي تغيير عام، وذلك بتجاوز DNS على حاسوبك المحمول. أضف
203.0.113.20 example.comإلى/etc/hosts، وتصفّح الموقع الفعلي، ثم احذف السطر. لا يتأثر أي مستخدم بهذا الاختبار. - عالج مسألة حجم قاعدة البيانات. إذا كان الحجم أقل من بضعة GB، فيمكن تنفيذ التفريغ والاستعادة ضمن فترة إيقاف الكتابة. أما إذا تجاوز ذلك، فأعدّ النسخ المتماثل من قاعدة البيانات القديمة إلى الجديدة قبل الانتقال بأيام، ودعه يلحق بالتغييرات، بحيث تغطي فترة إيقاف الكتابة الترقية فقط.
- أوقف الكتابة. ضع التطبيق في وضع الصيانة أو وضع القراءة فقط. هذا هو الجزء الوحيد الذي يمكن للمستخدمين ملاحظته، وينبغي أن يستمر دقائق فقط.
- نفّذ المزامنة النهائية للفروقات: شغّل rsync نفسه مرة أخرى، ثم نفّذ المزامنة النهائية لقاعدة البيانات.
- غيّر سجلي A وAAAA إلى عنوان IP الجديد. مع TTL بقيمة 300 ثانية، تتبع معظم محللات DNS التغيير خلال نحو خمس دقائق.
- اترك الخادم القديم قيد التشغيل وقابلاً للوصول مدة يوم واحد على الأقل، لأن بعض محللات DNS تتجاهل قيم TTL القصيرة. إذا ظل التطبيق القديم قابلاً للكتابة، فستكتب الطلبات المتأخرة في قاعدة البيانات الخطأ. لذلك، وجّه المضيف القديم إلى قاعدة البيانات الجديدة أو اعرض منه صفحة صيانة.
- راقب معدل الأخطاء على الخادم الجديد مدة يوم، ثم أعد TTL إلى قيمته المعتادة، وأتلف الخادم القديم بعد أسبوع بدلاً من إتلافه في مساء اليوم نفسه.
تتكوّن عملية النسخ نفسها من أمرين، ويُشغّل كل منهما مرتين. مزامنة الملفات:
rsync -aHAX --numeric-ids --delete -e ssh /srv/ deploy@203.0.113.20:/srv/يحافظ -a على الملكية والصلاحيات والطوابع الزمنية، ويحافظ -H على الروابط الصلبة، ويحافظ -AX على قوائم ACL والسمات الموسّعة، ويمنع --numeric-ids rsync من إعادة تعيين معرّفات المستخدمين عبر أسماء تختلف بين الجهازين. شغّله قبل الانتقال بأيام، ثم شغّله مرة أخرى أثناء إيقاف الكتابة، حيث سينقل التغييرات فقط.
بالنسبة إلى PostgreSQL إذا كان حجمه مناسباً للتفريغ:
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.dumpبالنسبة إلى MySQL أو MariaDB:
mysqldump --single-transaction --routines --triggers --databases appdb > appdb.sqlيُجري --single-transaction التفريغ ضمن معاملة واحدة على جداول InnoDB، لذلك تكون النتيجة متسقة ويستمر التطبيق في الكتابة أثناء التشغيل. من دون هذا الخيار، يقفل mysqldump الجداول، ما يعني أن إيقاف الكتابة بدأ أبكر مما خططت وأنك لم تعدد توقيته بنفسك.
هناك أمران يتعطّلان خارج خوادمك. لا يمتلك عنوان IP الجديد سمعة بريدية، لذلك تُرشّح الرسائل المرسلة مباشرة من الخادم الجديد كرسائل مزعجة. أرسلها عبر مرحّل يمتلك سمعة قائمة. كذلك، يجب تحديث أي شريك يضيف عنوان IP الصادر إلى قائمة السماح، مثل بوابة دفع أو جدار ناري لدى عميل، قبل الانتقال؛ وإلا ستبدأ هذه الاتصالات بالفشل فور انتقال حركة الشبكة.
ما الذي يجب التحقق منه قبل الالتزام
- هل السعر ترويجي، وما السعر عند التجديد. خصم الفترة الأولى الذي يتضاعف عند التجديد هو تكلفة فعلية، لكنه مؤجل فقط.
- هل تُدفع تكلفة المدة مقدماً. تبيع SSD Nodes خططاً متعددة السنوات مدفوعة مقدماً، ما يتيح سعراً أقل بكثير لكل GB من الذاكرة مقابل الدفع مقدماً. المقابل هو أنك لا تستطيع الانسحاب في الشهر التالي، لذلك اختر مدة تتناسب مع مدى ثقتك بقرارك.
- تكلفة snapshot الشهرية، وتكلفة الاستعادة مالياً وزمنياً.
- هل تُفرض رسوم على الاستخدام الزائد أم تُخفَّض السرعة.
- هل يجري توجيه IPv6 بصورة صحيحة، أم أنه مجرد عنوان واحد مضاف دون تكامل فعلي.
- هل توجد API مع موفّر Terraform تتم صيانته، إذا كنت تنوي إعادة البناء من الشيفرة بدلاً من إجرائه يدوياً.
- كيفية الوصول إلى الدعم، وما هدف الاستجابة المنشور لخادم متوقف، بدلاً من هدف الاستجابة لسؤال مبيعات.
اختر وفق المحور الذي يهيمن على فاتورتك. إذا كانت الذاكرة هي هذا المحور، فإن السعر لكل GB من الذاكرة يحسم القرار. وإذا كانت حركة البيانات الصادرة، فإن حجم النقل المشمول يحسمه. وإذا كان وقتك أنت، فإن المنصة المُدارة تحسمه، وتُعد DigitalOcean الأقوى بين الخيارات الأربعة المقارنة هنا.
FAQ
هل Hetzner أرخص دائماً من DigitalOcean؟
بالنسبة إلى آلة افتراضية عادية، تكون التكلفة لكل GB من RAM أقل بكثير: نحو $1.62 مقابل $6.00 في الخطط المشتركة الأساسية اعتباراً من 5 August 2026. يتغير هذا عند إدخال الخدمات المُدارة في المقارنة. تبيع Hetzner الخوادم والشبكات، لذلك يجب أن توفر قاعدة البيانات المُدارة أو منصة النشر عبر الدفع بنفسك أو عبر طرف ثالث، ولهذه الساعات تكلفة. رفعت Hetzner أيضاً أسعار السحابة خلال 2026، لذلك تحقّق من السعر الحالي باليورو بدلاً من الاعتماد على مقال قديم.
ما البديل المناسب لـ DigitalOcean إذا كنت أحتاج إلى قاعدة بيانات مُدارة؟
تبيع Vultr وAkamai قواعد بيانات مُدارة، لذلك فهما أقرب البدائل إذا كانت قاعدة البيانات المُدارة هي سبب استخدامك لـDigitalOcean أصلاً. لا تبيع الاستضافات الأوروبية منخفضة التكلفة عادةً قاعدة بيانات مُدارة، ما يعني تشغيل PostgreSQL أو MySQL بنفسك، بما في ذلك النسخ المتماثل وتهيئة تجاوز فشل مختبرة. هذه مهمة حقيقية. قارن تكلفتها بمبلغ $15.15 شهرياً، وهي تكلفة مثيل مُدار بسعة 1 GiB، قبل أن تقرر أن الخادم الأرخص وفّر لك شيئاً.
كيف أنقل موقعاً قيد التشغيل إلى مزود جديد دون توقف؟
اخفض TTL الخاص بـDNS إلى 300 ثانية قبل النقل بـ48 ساعة على الأقل، لأن محللات DNS تستمر في تقديم عنوان IP القديم طوال المدة التي حددها TTL السابق. أنشئ المضيف الجديد واختبره بينما لا يزال الخادم القديم يستقبل network traffic، باستخدام تجاوز /etc/hosts على جهازك حتى لا يراه أي شخص آخر. ثم أوقف عمليات الكتابة لبضع دقائق، وشغّل delta النهائي عبر rsync والمزامنة النهائية لقاعدة البيانات، وبدّل سجلات A وAAAA، واترك الخادم القديم قيد التشغيل لمدة أسبوع تحسباً لتجاهل أحد محللات DNS قيمة TTL القصيرة.
هل يعني VPS الأرخص أن الأقراص أبطأ؟
ليس بالضرورة. المهم هو ما إذا كان القرص الافتراضي محلياً على المضيف أو موجوداً على مجموعة تخزين شبكية، وغالباً لا توضح لوحة التحكم ذلك. يعرض lsblk -o NAME,ROTA القيمة 0 في الحالتين، لأن كليهما غير دوّار. بدلاً من ذلك، أجرِ قياساً: شغّل fio باستخدام --iodepth=1 --bs=4k --direct=1 واقرأ زمن إكمال النسبة المئوية 99. تضيف وحدة التخزين الشبكية رحلة ذهاب وإياب عبر شبكة مركز البيانات إلى كل عملية قراءة، لذلك يكون حد زمن الاستجابة لديها أعلى من NVMe المحلي حتى عندما يبدو معدل النقل مع طوابير عميقة متشابهاً.
هل سيستمر تسليم بريدي الإلكتروني من الخادم الجديد؟
غالباً لا، في البداية. لا يملك عنوان IP الجديد سجل إرسال، لذلك يتعامل المستلمون مع البريد الوارد منه على أنه مشبوه، فينتهي به الأمر في البريد العشوائي أو يُرفض مباشرة. كما تشير سجلات SPF وDKIM إلى المضيف القديم إلى أن تحدّثها. أرسل بريد التطبيق عبر relay أو خدمة بريد إلكتروني تتمتع بسمعة قائمة، وحدّث سجلات DNS الخاصة بالبريد قبل التحويل لا بعده.