تحميل الصور عن بُعد من المنشورات القديمة؟

مرحبًا.

لقد استوردتُ منتدى phpbb منذ فترة.
أظن أنني لم أقم بتفعيل خيار تحميل الصور البعيدة أثناء عملية الاستيراد، حيث تحتوي المنشورات القديمة على صور مدمجة بروابط خارجية.

أود تحميل جميع هذه الصور من المنشورات القديمة.

هل توجد أمر لتنفيذ ذلك؟ لدي حوالي 150,000 منشور يحتاج إلى معالجة.

أي نصيحة هنا @vinothkannans أو @gerhard؟

  • تمكين إعداد الموقع “تحميل الصور البعيدة إلى المحلي”.
  • تعيين قيمة إعداد الموقع “أقصى عدد أيام للصور البعيدة القديمة” إلى 3650 (لمدة 10 سنوات).
  • زيادة قيمة إعداد الموقع “عدد المنشورات القديمة المعاد خبزها” إلى “300”. لزيادة هذه القيمة عن 300، يجب عليك أيضًا ضبط إعداد محدّد المعدل العام “max_old_rebakes_per_15_minutes”.
  • ثم تعيين قيمة “baked_version” للمنشورات القديمة إلى “NULL” في وحدة تحكم Rails.
    ./launcher enter app
    rails c
    > Post.update_all(baked_version: nil)   # أو Post.created_since(N.days.ago).update_all(baked_version: nil)
    

الآن سيتم تحميل جميع الصور البعيدة في المنشورات القديمة تلقائيًا بسرعة 300 منشور كل 15 دقيقة.

سؤال سريع: لماذا من الضروري القيام بهذا:

Post.update_all(baked_version: nil)

إذا قمت بتعيين أقصى عدد من الأيام لقراءة الصور من الموقع البعيد إلى 20 عامًا؟

سيؤدي ذلك إلى بدء إعادة خبز بطيئة لجميع المنشورات لأن النظام سيكتشف الحاجة إلى إعادة خبز المنشورات إلى الإصدار الجديد.

لكنني رأيت منشورًا من عام 2010 يحتوي على صورة عن بُعد، لم قُم بتغيير أي شيء سوى إعداد أقصى عدد من الأيام لصور الصور عن بُعد، وبعد بضع دقائق تم تنزيل الصورة عن بُعد تلقائيًا.


تم تعديل المنشور القديم جدًا بالفعل بواسطة النظام لتنزيل الصورة عن بُعد.

تعديل: خلال الليل، تم تنزيل صور قديمة أخرى تلقائيًا، وهو أمر رائع، لكنني بالتأكيد لا أفهم جزء update_all(baked_version: nil) بعد.

مرحبًا،
لقد طبّقت السكربت، لكنني غير متأكد مما إذا كان له تأثير كبير على الأداء أو غرفة الخوادم؟