تصغير وتحويل تحميلات الصور

مرحباً بجميع مستخدمي ديسكورس،

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

أعتقد أننا نرغب في تحويل وتقليص حجم جميع تحميلات الصور الحالية لدينا إلى JPG، لتوفير تكاليف التخزين. عند البحث هنا، وجدت هذا:

https://github.com/discourse/discourse/blob/main/script/downsize_uploads.rb

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

يبدو أنني سأضطر إلى كتابة نسختي الخاصة من هذا:

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

أقدر أي أفكار أو علامات حمراء أو تعليقات. إذا اضطررت إلى القيام بسكربت rake جديد، فيمكنني مشاركته هنا إذا كان أي شخص آخر في إعداد مشابه لإعدادنا.

شكرًا!

إعجابَين (2)

كانت هذه هي النقطة الرئيسية، لذا سأبرزها إذا كان لدى أي شخص أي أفكار. ما زلنا نبحث عن أفضل طريقة للقيام بذلك. خطتنا الحالية هي أنه نظرًا لارتفاع تكاليف الاستضافة لهذه الصور القديمة، فقد نقوم بإزالة 5 سنوات من المشاركات القديمة لخفض التكاليف، وهو أمر مؤسف ولكنه بسبب أن ميزانيتنا منخفضة حقًا. :slight_smile: