حقل Raw_email post يخزن الصور كسلاسل Base64

مرحباً،

بما أنني أفكر في تغيير شبكة توصيل المحتوى الخاصة بي (Stackpath) وأعلم أن Discourse يقوم بتعيين عناوين URL لشبكة توصيل المحتوى ديناميكيًا في الروابط، فقد قمت مع ذلك بالبحث عن السلسلة “stackpath” في منشورات منتداي لمعرفة عدد مرات ظهورها.

أعادت بين 300 و 400 منشور.

لقد قمت بتنزيل البيانات، وفوجئت بأنها ملف بحجم 100 ميجابايت تقريبًا!

يبدو أن السبب هو أن الصور في المنشورات المرسلة عبر البريد الإلكتروني تظهر كسلاسل base64 في حقل raw_email.

لذلك… كما أرى، لا يبدو أن هناك مشكلة حقًا، ولكني أود الحصول على بعض التوضيحات حول هذا الأمر.

لماذا يتم تخزين الصور بهذه الطريقة في حقل raw_email؟ هل لا توجد طريقة أفضل للقيام بذلك؟
هل يمكن أن يؤثر ذلك على الأداء بأي شكل من الأشكال؟ ماذا عن المنتديات التي يرد فيها الكثير من الأشخاص عبر البريد الإلكتروني مع تضمين الصور؟ هل يمكننا اعتبار أن هذا يستهلك مساحة كبيرة جدًا مقابل القليل من المعلومات؟

أي شرح أو معلومات إضافية حول هذا الموضوع مرحب بها. :slight_smile:

إعجاب واحد (1)

سيبدو هذا اختزاليًا بعض الشيء، ولكن هذه هي الطريقة التي يتم بها إرسال الصور عبر البريد الإلكتروني. وبما أننا نقوم بتخزين raw_email… فهذا ما نقوم بتخزينه.

فكر في الأمر كصندوق وارد بحجم 100 ميجابايت. وهو قطرة في محيط بالنسبة لمعظم المواقع.

يمكنك العثور على حجم التخزين باستخدام:

select sum(pg_column_size(raw_email)) / 1048576 as raw_email_MB from posts;

لن نقوم بتخزين raw_email في هذه الحالة… أفترض أنه يمكن تقديم حجة لإزالة محتوى base64 الكبير من raw_emails التي تجاوزت عمرًا معينًا…

من غير المرجح؛ سيبقى على القرص ولكن لا ينبغي الإشارة إليه إلا إذا نظرت إليه.

:thinking:

5 إعجابات

شكرا لك على الإجابة المفصلة :slight_smile:

إعجاب واحد (1)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.