سرعة Discourse الخاصة بي بطيئة جداً

جرّب ذلك مع إيقاف تشغيل Ezoic، فقد يكون سببًا حقيقيًا في الاختناق.

@gerhard

نعم، نحن نستخدم Cloudflare (CF)، لكنني أفترض أن الناس يستخدمون CF لتسريع الموقع، ولهذا السبب نحن نستخدمه.
ونعم، قمنا بربط حساب CF لدينا مع Ezoic، لكننا لا نستخدم Ezoic ولا نعرض إعلانات منهم. لم أجد أي طريقة لإزالة تكامل Ezoic مع حساب CF الخاص بي.

حاليًا، نستخدم Digital Ocean Droplet واحدًا فقط، ويتم استضافة هذا الموقع فقط على الخادم بأكمله. يتم تقديم الموقع باستخدام NGINX الذي يبدو شيئًا مثل هذا، مع جعل بعض القيم وهمية: نحن نستخدم NGINX لأننا نخدم أيضًا صفحات AMP عبر PHP على Amazon ERC Number - How To Discuss

server {
listen httpsPORT ssl http2;

ssl on;
ssl_certificate         /path/to/pem;
ssl_certificate_key     /path/to/key;
server_name howtodiscuss.com www.howtodiscuss.com;
location / {
    proxy_ssl_server_name       on;
    proxy_pass       http://localhost:port;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;

    proxy_redirect off;

    # Socket.IO Support
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_ssl_protocols         TLSv1 TLSv1.1 TLSv1.2;
        




} 

موقعنا يُقدّم بالفعل عبر Cloudflare، لذا يجب أن يسرّع الأمور، لكنه لا يبدو أنه يسرّعها.

وذكرت هذه النقاط، سنحاولها. هل كل هذا مجاني للنشر والتشغيل، مثل استضافة المنتدى بالكامل على شبكة CDN الكاملة لـ Cloudflare؟ هل هذا مجاني بنسبة 100%؟ هل يمكنك إخباري بالخطوات الدقيقة والطريقة التي يجب أن أتبعها لتحقيق أفضل عائد على الاستثمار؟

أيضًا، جربت تشغيل CF Rocket Loader، لكن Discourse لا يعمل كما هو متوقع، وأعتقد أيضًا أنه إذا قمت بتشغيل تصغير ملفات CSS وJS وHTML في CF، فإن سكريبتات EmberJS لا تعمل بشكل جيد مرة أخرى ولا يتصرف الموقع كما هو متوقع. ما الذي يمكنني تعديله في حساب CF الخاص بي لتسريع الموقع دون المساس بأدائه وقابليته للاستخدام؟

كيف يمكننا تمكين ضغط GZIP وضغط الموارد وتصغيرها في Discourse، وتمكين التخزين المؤقت على جانب الخادم/العميل؟

هناك خطأ آخر اكتشفناه مؤخرًا وهو أنه عند الذهاب إلى https://howtodiscuss.com/logs كمسؤول، يتم إعادة توجيهنا إلى https://howtodiscuss.com/logs/logs/، هل هذا خطأ في Discourse في الإصدار الأحدث؟

سنقوم نحن @ahmed_khan1 قريبًا بتثبيت إضافة GitHub - discourse/discourse-prometheus: Official Discourse Plugin for Prometheus Monitoring · GitHub ومشاركة الإحصائيات معكم.

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

لماذا لا يُترك لـ NGINX الداخلي القيام بالمهمة؟

كما ذكرت، نحن نخدم صفحات AMP، ونقوم بتوجيه حركة مرور AMP عبر NGINX، لكنني لم أشارك كود AMP في مقتطف الكود الخاص بـ NGINX.

يمكن الوصول إلى صفحات AMP الخاصة بنا عبر:

إلخ. نحن نخدم هذه الصفحات عبر PHP ونستخدم واجهة برمجة تطبيقات Discourse لبناء هذه الصفحات بتنسيق AMP. لذا، نحتاج إلى أن يتولى NGINX توجيه صفحات AMP نيابةً عنا، لأن Discourse لا يوفر هذا التوجيه لصفحات AMP بشكل افتراضي.

إذا كان بإمكان أي شخص مساعدتنا في تحقيق درجة 100% على Google PageSpeed و GTMetrix لموقعنا الإلكتروني، والمساعدة في نموه بشكل أكبر، يرجى التواصل معنا عبر البريد الإلكتروني: howtodiscuss.com@gmail.com

https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fhowtodiscuss.com%2Ft%2Fsarahs-discovery-of-weight-loss%2F28583&tab=mobile

لو كنتُ مكانك لما حاولتُ جعل موقع بطيء أسرع. هذا بلا جدوى إلى حد ما. ابدأ بموقع سريع بما يكفي وحاول جعله أسرع. لذا، الخطوة الأولى هي معرفة سبب بطئه. أقوم بما يلي:

  • إنشاء قطرة جديدة (لأغراض الاختبار) واتباع تعليمات إعداد Discourse
  • لا تضيف أي إضافات بعد. ولا Cloudflare أو Nginx أو ما شابه
  • استعادة نسخة احتياطية من موقع الإنتاج الخاص بك
  • هل هو سريع بما يكفي؟ جيد.
  • أضف الإضافات
  • لا يزال سريعًا؟ جيد. إذا لم يكن كذلك، حاول العثور على الإضافة التي تسبب البطء.
  • أضف Nginx أمامه لكل شيء يتعلق بـ PHP
  • لا يزال سريعًا؟ جيد. إذا لم يكن كذلك، جرب شيئًا آخر، مثل:
    • محاولة معرفة سبب إبطاء Nginx للموقع
    • أو تشغيل Nginx على منفذ خاص لخدمات PHP ومحاولة وضع HAProxy في وضع TCP أمام Discourse وNginx
  • ابدأ باستخدام شبكة توصيل المحتوى (CDN) للملفات الثابتة أو لموقع كامل – راجع الروابط في منشوري الأخير واقرأ تلك المواضيع بعناية. تتطلب Cloudflare معالجة خاصة (قالب في app.yml وما شابه)، ولا تستخدم Rocket Loader أو أي شيء مماثل.