ما المثبّت على خادم RabbitMQ الخاص بك؟
- RabbitMQ 4 من بناء Alpine للصورة الرسمية على Docker مع واجهة الإدارة، على أحدث إصدار 4.x وقت التثبيت
- واجهة الإدارة عبر HTTPS من خلال Caddy على عنوان sslip.io، فالنطاق اختياري
- المنفذ 5672 مفتوح لاتصالات AMQP
- حساب مسؤول باسم yonetici بدل guest، بكلمة مرور مولّدة
- بيانات الطوابير محفوظة في وحدة تخزين Docker باسم rabbit_veri
- ملف Compose في /opt/seturack/rabbitmq/compose.yaml
- جدار حماية لا يفتح سوى المنافذ 22 و80 و443 و5672
ما الحجم الذي تحتاجه لـ RabbitMQ؟
تطلب قائمة التحقق للإنتاج في RabbitMQ ما لا يقل عن 4 GiB من RAM و4 أنوية لكل عقدة، وتذكر أن RabbitMQ لم يُصمَّم للبيئات ذات النواة الواحدة. فاعدّ أصغر حجم، 2 GB، حجمًا للتطوير والاختبار، وللإنتاج اختر 4 GB وزد المعالج. ويُوقَف الناشرون (publishers) حين يتجاوز استخدام الذاكرة 60 بالمئة من RAM، كما تملأ الرسائل الدائمة القرص أيضًا. وتستطيع رفع RAM والمعالج والقرص كلًّا على حدة من لوحتك، وتبقى بياناتك وعنوان IP كما هما.
| الاستخدام | الحجم | السعر | اختر |
|---|---|---|---|
| للبداية | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/شهريًا | |
| متوسط | 8 GB RAM · 4 vCore · 120 GB NVMe | $13.62/شهريًا | |
| قوي | 16 GB RAM · 8 vCore · 200 GB NVMe | $25.15/شهريًا |
لمن هو؟
- الفرق التي تنقل المهام الخلفية بعيدًا عن تطبيق الويب
- المطورون الذين يربطون المراسلة بين الخدمات
- المشاريع التي تستخدم Celery أو Spring AMQP أو amqplib
- كل من يريد طابورًا حقيقيًا في التطوير والاختبار
ماذا يحدث بعد الطلب؟
- اضبط الحجم وأتمّ الدفع.
- يبدأ خادمك ويُثبَّت RabbitMQ من تلقاء نفسه. استغرق ذلك نحو 8 دقائق في اختباراتنا على خوادم حقيقية.
- في تبويب نظرة عامة، يفتح الرابط في صف عنوان اللوحة واجهة الإدارة. أدخل البيانات من صفّي اسم الدخول وكلمة المرور.
- اربط تطبيقك: amqp://yonetici:PASSWORD@IP:5672/%2f
- في تبويب Admin، أنشئ مستخدمًا ومضيفًا افتراضيًا (vhost) منفصلين لتطبيقك.
مع كل خادم
- نسخ احتياطي يومي مشمول في السعر
- حركة بيانات غير محدودة
- صلاحية root كاملة
- ارفع RAM والمعالج أو اخفضهما لاحقًا، وكبّر القرص
- الموقع: Istanbul · IST-1.
من المفيد أن تعرف
- المنفذ 5672 بلا TLS ومفتوح للإنترنت، ولا يستطيع ufw إغلاقه لأن Docker ينشره. وللتقييد غيّر سطر المنفذ في compose.yaml إلى 127.0.0.1:5672:5672، ثم نفّذ docker compose up -d واتصل عبر نفق SSH.
- حد القرص الحر الافتراضي 50 MB، وتعدّه الوثائق الرسمية مناسبًا للتطوير فقط. ارفع disk_free_limit في الإنتاج.
- عند تجاوز حد الذاكرة أو القرص تُحجب اتصالات النشر. وحين يستهلك المستهلكون (consumers) الرسائل يزول التنبيه ويعود التدفق.
- تتبع الصورة الوسم 4-management-alpine لكنها لا تحدّث نفسها. وللحصول على 4.x أحدث نفّذ docker compose pull وdocker compose up -d في المجلد.
أسئلة وأجوبة عن RabbitMQ
كيف أتصل بخادم RabbitMQ الخاص بي؟
سلسلة اتصالك هي amqp://yonetici:PASSWORD@IP:5672/%2f. وتمثّل %2f في آخرها المضيف الافتراضي /. وتنص مواصفة URI في RabbitMQ على أن / المفردة في النهاية تعني اسمًا فارغًا. وعنوان IP وكلمة المرور في لوحتك، وتعطي هذه السلسلة لمكتبة العميل.
كم يحتاج RabbitMQ من RAM؟
تطلب قائمة التحقق الرسمية للإنتاج في RabbitMQ ما لا يقل عن 4 GiB من RAM و4 أنوية لكل عقدة. وللتطوير والاختبار يمكنك البدء بـ 2 GB.
كيف أفتح واجهة إدارة RabbitMQ؟
يفتحها رابط عنوان اللوحة في لوحتك عبر HTTPS. واسم الدخول yonetici وكلمة المرور في لوحتك. ومن الواجهة تنشئ الطوابير والمبادلات (exchanges) والمستخدمين والمضيفين الافتراضيين، وترسل رسائل اختبار وتستقبلها. والمنفذ 15672 غير مفتوح للخارج.
هل اتصال AMQP في RabbitMQ مشفّر؟
المنفذ 5672 في RabbitMQ بلا TLS في هذا التثبيت، فتنتقل كلمة المرور والرسائل دون تشفير. وللبيانات الحساسة عبر الإنترنت استخدم نفق SSH، أو أعدّ مستمع TLS على المنفذ 5671 بشهادتك الخاصة وانشر ذلك المنفذ.
لماذا يُحجب ناشرو RabbitMQ لدي؟
يحجب RabbitMQ اتصالات النشر حين يتجاوز استخدام الذاكرة 60 بالمئة من RAM أو ينخفض القرص الحر عن الحد. ويزول التنبيه حين يستهلك المستهلكون الرسائل. وترى الحالة في صفحة Overview بواجهة الإدارة، وإن تكرر ذلك فارفع حجم الخادم.
هل يمكنني إنشاء مستخدم RabbitMQ منفصل لتطبيقي؟
نعم. في تبويب Admin بالواجهة أضف مضيفًا افتراضيًا ومستخدمًا وامنحهما الصلاحيات. ومن سطر الأوامر، في /opt/seturack/rabbitmq نفّذ docker compose exec rabbitmq rabbitmqctl add_user NAME PASSWORD. ولا يستطيع المستخدم الجديد الاتصال قبل أن تُمنح له صلاحيات.