ملف ثابت على الخادم أو ثنائي لملفات الصوت والصورة في SQL مع تطبيق ASP.Net

StackOverflow https://stackoverflow.com/questions/710976

سؤال

أقوم بإنشاء تطبيق ويب ASP.Net C# والذي سيستخدم الكثير من ملفات الصوت وملفات الصور.مع الأخذ في الاعتبار الأداء، هل سيكون من الأفضل تخزين جميع الملفات في SQL كنوع بيانات الصورة واسترجاعها من قاعدة البيانات أو تخزين/أرشفة الملف الثابت على الخادم وتخزين المسار في SQL؟أشعر بالفضول بشأن الإيجابيات والسلبيات - بخلاف ما هو واضح فيما يتعلق بمساحة التخزين وسهولة الإدارة.

لا يوجد حل صحيح

نصائح أخرى

يبحث عميلي الحالي حاليًا عن نفس الخيارات.هناك عدد قليل من المقايضات التي يجب مراعاتها:

التخزين كنوع بيانات IMAGE:

  • ما عليك سوى عمل نسخة احتياطية لقاعدة البيانات الخاصة بك بدلاً من قاعدة البيانات والأماكن الموجودة على نظام الملفات
  • لا داعي للقلق بشأن نقل الملفات دون تحديث قاعدة البيانات بالموقع الجديد أو أي مشكلات أخرى تتعلق بتعليق المؤشرات على ملفات غير موجودة

التخزين كملف بمسار في قاعدة البيانات:

  • وصول أسرع قليلاً (سنقوم بقياس ذلك في الأيام القليلة المقبلة)

اعتقدت في الأصل أنه ستكون هناك أيضًا مشكلة في التخزين المؤقت للصور من جانب العميل.على سبيل المثال، عندما يحصل .NET على الصورة من قاعدة البيانات، لا يستطيع متصفح العميل تخزينها مؤقتًا - فهي تبدو كصورة جديدة في كل مرة.تعلمت بعد ذلك أنه ما لم تمنح المستخدمين حق الوصول على مستوى الملف (لا أمان) فإنك تواجه نفس المشكلة باستخدام الوصول المباشر إلى الملفات.

ومن منظور الأداء يجب أن تكون أفضل حالا تخزين الأصوات / الصور والملفات ومجرد حفظ إشارة إلى الموقع في قاعدة البيانات. هذا سيوفر لكم من الاضطرار لنقل البيانات من قاعدة البيانات إلى خادم الويب وإعادة تشكيل "ملف" عبر معالج كلما المشار إليها. بالطبع، يمكن أن تساعد في التخزين المؤقت هذا ولكن كنت لا تزال تدفع عقوبة على كل ملكة جمال ذاكرة التخزين المؤقت. هذا الحل هو أيضا، من أجل أموالي، إلى حد ما أقل تعقيدا من حيث التعليمات البرمجية التي تحتاج الى تطوير الرغم من لديك مشاكل مع حوادث الاصطدام وبعض الإعداد امنية اضافية (يحتمل) القيام به إذا كنت تمكين تحميل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top