إعادة نشر المشاركات تؤدي إلى ظهور خطأ 502 Bad Gateway

We bumped our RAM and rebuilt the database, but problem persists.

I’d like to ask if devs are aware of this problem… Thx!

Is there any quick fix I can do as admin? Longer timeout maybe?

Not sure. It sure seems like a longer timeout would help. It happens way more often in heavily populated threads, so it feels like there’s find sampling or scanning that takes too long.

If I can figure out how to implement this, will report back. I would double it.

Yep, problem persists with 2.5.0.beta2

Did you run discourse setup after you changed the ram? There are settings that need to be updated to take Ashanti /advantage of the ram.

Not sure, as the implementation rests with another person. But I’ll mention to him that this needs to be done to complete the process. Thanks so much!

مرحبًا،
أواجه العديد من أخطاء 502 أثناء نقل المنشورات.
هل لديكم خطة لتحسين هذا السيناريو؟

شكرًا لك

مرحبًا، هل تمكنت من العثور عليه؟ سيكون رائعًا إذا أمكننا جعل مهلة الوقت قابلة للتخصيص عبر متغيرات البيئة في ملف app.yml أو إعدادات موقع discourse لمن يعانون من ذاكرة محدودة.


ربما سؤال غبي؟


عند نقل عدد كبير من المنشورات بهذه الطريقة، هل تتم إدارة هذه العملية عبر Sidekiq؟

آسف، لم أبحث في الكود…


تحديث


نظرت سريعًا في قاعدة كود Ruby، ونعم، عند استدعاء وظيفة نقل المنشورات، تُصَفَّ المهام باستخدام enqueue_jobs().

بما أنني لست مطوّرًا في Discourse، يبدو لمُتصفّح كود عابر أن المشكلات المتعلقة بالتأخيرات أو الأخطاء أو المهلات الزمنية المرتبطة بنقل المنشورات ترتبط مباشرة بأداء وتكوين Sidekiq.

حاولت دراسة كيفية استخدام Discourse لـ Sidekiq على مستوى النظام قبل عدة أيام، لكنني لم أتمكن من العثور على نسخة “ملخص سريع” مخصصة للمبتدئين.

لذلك، ذهبت إلى موقع Sidekiq لأحاول فهم ما يحدث تحت الغطاء، ولاحظت وجود ثلاثة عروض مختلفة، فأصبحت مرتبكًا وتوقفت :slight_smile: لأنني لم أستطع فهم، ضمن فترة انتباهي القصيرة واحتياجي للإشباع الفوري، أي إصدار من Sidekiq يستخدمه Discourse، وما هي الميزات والتبديلات الدقيقة التي يمكن تكوينها…

بصفتي مبتدئًا في هذا المجال، أود معرفة تفاصيل هندسة Sidekiq، وميزاته، وتبديلاته، والمتغيرات البيئية المتاحة في Discourse… لكن حتى الآن “لم أجد بعد ما أبحث عنه” - مُغنًّى على نغمة أغنيتنا المفضلة لفرقة U2.

جميع الإجابات تنبع من الفضول…

تحديث:

بناءً على نصيحة من قائد في موضوع آخر، قمنا بإيقاف جميع الإضافات باستثناء “من متصل الآن”، والآن لم نواجه أي مشاكل في عمليات النقل مؤخرًا.

لذا، هناك تفاؤل حذر هنا. سنقوم بالتحديث في حال تغيرت الأمور.

شكرًا للجميع الذين قدموا المساعدة في هذه القضية!

ما هي الإضافات التي قمت بتعطيلها تحديدًا؟

في الوضع المثالي، كنتُ سأقوم بتجربة كل عنصر على حدة للتحقق من أيها يسبب المشكلة، لكنني لم أتوقع أن يعمل الأمر، لذا قمت بإيقاف تشغيلها جميعًا دفعة واحدة.

من المرجح جدًا أن يكون ذلك كلامًا فارغًا، وأظن أنه يحتوي على خطافات تُفعّل عند نقل المنشور.

جيد أن نعرف. شكرًا لك. وتقدير لـ @featheredtoast على الإصلاح.

بدأت مجتمعي مؤخرًا في مواجهة مشكلة خطأ 502 عند نقل المنشورات، خاصة بين الخيوط الكبيرة. لم يكن لدي أي إضافات مخصصة مثبتة. بناءً على النصيحة الواردة من موضوع آخر في Discourse، قمت بزيادة unicorn_workers إلى 10 و db_shared_buffers إلى 4096 ميجابايت، لكن ذلك لم يُحسّن الوضع. فيما يلي سجل ./discourse-doctor الخاص بمنتدىنا. آمل الحصول على بعض التوجيهات. شكرًا لكم!

==================== معلومات Docker ====================
إصدار Docker: Docker version 17.10.0-ce، build f4ffd25

عمليات Docker (docker ps -a)

معرف الحاوية        الصورة                 الأمر             تم إنشاؤه منذ        الحالة            المنافذ                                      الأسماء
ddfb2222fd64        local_discourse/app   "/sbin/boot"        منذ 10 أيام         قيد التشغيل منذ 10 أيام          0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   app

ddfb2222fd64        local_discourse/app   "/sbin/boot"        منذ 10 أيام         قيد التشغيل منذ 10 أيام          0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   app

حاوية Discourse app قيد التشغيل


==================== الإضافات ====================
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-solved.git

لم يتم اكتشاف أي إضافات غير رسمية.

راجع https://github.com/discourse/discourse/blob/master/lib/plugin/metadata.rb للحصول على القائمة الرسمية.

========================================
Discourse 2.6.0.beta2
إصدار Discourse في localhost: Discourse 2.6.0.beta2 


==================== معلومات الذاكرة ====================
الذاكرة العشوائية (بالميجابايت): 16434

              الإجمالي        المستخدم      الحر        المشترك  buff/cache   المتاح
Mem:          16048        5605         919        4255        9523        5850
Swap:          2047         437        1610

==================== فحص مساحة القرص ====================
---------- مساحة قرص نظام التشغيل ----------
نظام الملفات                 الحجم  المستخدم  المتاح النسبة% mounted on
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /var/lib/docker/aufs
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /var/lib/docker/plugins
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /

---------- مساحة قرص الحاوية ----------
علم اختصاري غير معروف: 'w' في -w
راجع 'docker exec --help'.


==================== معلومات القرص ====================
القرص /dev/vda: 320 جيجابايت، 343597383680 بايت، 671088640 قطاع
الوحدات: قطاعات بـ 1 * 512 = 512 بايت
حجم القطاع (المنطقي/الفيزيائي): 512 بايت / 512 بايت
حجم الإدخال/الإخراج (الحد الأدنى/المثالي): 512 بايت / 512 بايت
نوع تسمية القرص: gpt
معرف القرص: 29B528BA-16C4-402E-BEE9-53555C8B6F10

الجهاز     البداية       النهاية   القطاعات  الحجم النوع
/dev/vda1   2048 671086591 671084544  320G نظام ملفات Linux

==================== نهاية معلومات القرص ====================

مرحبًا، واجهت نفس المشكلة. لا يمكنني تقسيم الموضوعات الرئيسية الكبيرة بسبب هذا.
حاولت أيضًا في وضع الأمان، ولم يتغير شيء.

لا توجد مشكلة في تثبيت Discourse الخاص بي في بيئة التطوير (نفس الإصدار 2.6.0.beta2) رغم ذلك.
وليس هناك أي شيء في السجلات.

أواجه أخطاء 502 منذ عام :frowning:

لا أظن أننا سألناك: ما هي الإضافات التي تستخدمها؟

لقد قمت بتعطيل جميع الإضافات للتحقق مما إذا كانت المشكلة مرتبطة بإضافة ما. يبدو أن المشكلة تتكرر بشكل مستقر مع الخيوط الطويلة.