Kirolos Nagy2 نشر 15 مارس 2023 أرسل تقرير نشر 15 مارس 2023 (معدل) ما الفرق بين اني اشفر الصوره بتشفير base64 واحفظها بقواعد البيانات وعندما اجلبها frontend افك التشفير والفرق اني احفظ فقط اسم الصوره وعند جلبها استخدم API برابط الملف في ال server واي منهم افضل مع العلم اني استخدم Multer في nodejs لاجل رفع الصوره تم التعديل في 15 مارس 2023 بواسطة Kerollos Nagy 1 اقتباس
1 Mustafa Suleiman نشر 15 مارس 2023 أرسل تقرير نشر 15 مارس 2023 يعتمد الخيار الأنسب على حجم ونوع الملفات التي تريد حفظها وتحميلها، وحجم قاعدة البيانات الخاصة بك، ومدى قوة الاتصال بالشبكة. إذا كانت الصورة تتميز بحجم كبير، فإن استخدام التشفير base64 لتخزينها في قاعدة البيانات قد يتسبب في بطء أداء النظام. وعلى الجانب الآخر، إذا كان حجم الصورة صغيراً، فيمكن استخدام التشفير base64 وتخزينها مباشرة في قاعدة البيانات دون الحاجة إلى الاتصال بخادم API. ومن جهة أخرى، إذا كنت تستخدم خوادم API، فإن استخدام رابط الملف المباشر قد يعزز أداء نظامك عند تحميل الصورة، حيث أن الخادم الخارجي سيكون مسؤولاً عن إرسال الصورة إلى المستخدم مباشرة، وسيساعد في تقليل حجم قاعدة البيانات الخاصة بك. فإذا كانت الصورة كبيرة الحجم أو تستخدم بشكل متكرر، فمن المستحسن تخزينها كملف مباشر على خادم API. وإذا كانت الصورة صغيرة الحجم، فإن تشفيرها باستخدام base64 وحفظها مباشرة في قاعدة البيانات هو الخيار الأفضل. 1 اقتباس
1 عمر قره محمد نشر 15 مارس 2023 أرسل تقرير نشر 15 مارس 2023 تشفير الصورة إلى base64 يجعلها اكبر من حجمها الطبيعي وبالتالي سيصبح لديك ضعف في الأداء أثناء جلب الصور. وكذلك الامر فإن السيرفر سيحتاج إلى جلب الصورة من قاعدة البيانات ومن ثم إرسالها إلى المستخدم بدلاً من ارسالها مباشرةً من نظام الملفات. الافضل هو استخدام الـ Api بالتأكيد، والافضل من ذلك هو استخدام Api من طرف خارجي مثل cloudinary. قد يفيدك النقاش التالي : 1 اقتباس
1 عبدالباسط ابراهيم نشر 16 مارس 2023 أرسل تقرير نشر 16 مارس 2023 لا يوجد جواب أفضل، فالأمر يعتمد على احتياجاتك وتفضيلاتك. والفرق بين الطريقتين كالتالي الطريقة الأولى إذا قمت بتشفير الصورة بتشفير base64 وحفظها في قواعد البيانات، فإن هذا يزيد من حجم البيانات ويستهلك مساحة أكبر على القرص. كما أنه يؤثر سلبًا على أداء قواعد البيانات وسرعة استجابة التطبيق. ومع ذلك، فإن هذه الطريقة تسهل نقل ونسخ الصور دون الحاجة إلى ملفات خارجية يساعد على تقليل عدد طلبات HTTP، خاصة للصور الصغيرة. كما أنه يجعل تضمين الصور في ملفات CSS أكثر سهولة. فإن هذه الطريقة تجعلك تفقد بعض المزايا مثل استخدام قواعد بيانات أو خدمات متخصصة في تخزين هذه الأنواع من الملفات (مثل Amazon S3) أو تقديم الصور عبر شبكة توزيع المحتوى (CDN) بطريقة مطابقة الطريقة الثانية إذا قمت بحفظ اسم الصورة فقط في قواعد البيانات وجلبها باستخدام API برابط الملف في الخادم فإن هذا يقلل من حجم البيانات ويحسن من أداء قواعد البيانات. كما أنه يسمح بضغط وتحسين جودة الصور دون التأثير على تشفير base642. ومع ذلك، فإن هذه الطريقة تتطلب إدارة الملفات على مستوى نظام الملفات والتأكد من تزامنها مع قواعد البيانات فإن هذا يسمح بتخزين المؤقت للصور على مستوى المستعرض . كما أنه يسهل تغيير أو حذف أو نقل الصور دون التأثير على قواعد البيانات. ومع ذلك، فإن هذه الطريقة تزيد من عدد طلبات HTTP، خاصة للصور الكثيرة أو الكبيرة. كما أنها تتطلب مزامنة بين نظام الملفات وقواعد البيانات فإن هذا يسمح لك باستخدام قواعد بيانات أو خدمات متخصصة في تخزين هذه الأنواع من الملفات (مثل Amazon S3) أو تقديم الصور عبر شبكة توزيع المحتوى (CDN) بطريقة مطابقة قي الأخير يمكنك المقارنة بينهما وأختيار الحل المناسب بالنسبة لك 1 اقتباس
0 أحمد رضا5 نشر 16 مارس 2023 أرسل تقرير نشر 16 مارس 2023 الفرق الرئيسي بين حفظ الصورة كتشفير Base64 وحفظ اسم الصورة واستخدام API لرابط الملف في الخادم هو: عند تشفير الصورة باستخدام Base64 وحفظها في قاعدة البيانات، يتم تضخيم حجم الصورة بشكل كبير، حيث يتم تحويل الصورة إلى سلسلة نصية طويلة مكونة من الأحرف والأرقام. بينما عند استخدام API، يتم حفظ الصورة بشكل طبيعي دون تشفير، مما يحفظ حجم الصورة الأصلي. عند استخدام API، يتم حفظ الصورة في الخادم ولا يتم نقل حجم الصورة بالكامل إلى العميل (المستخدم)، مما يساعد على تقليل استهلاك البيانات، خاصة إذا كانت الصورة كبيرة الحجم. بينما عند تشفير الصورة باستخدام Base64، يتم نقل حجم الصورة كاملاً إلى العميل عند جلب الصورة، مما يستهلك المزيد من البيانات. بالإضافة إلى ذلك، يتم تخزين الصورة كتشفير Base64 بشكل أساسي في الذاكرة، بينما يتم حفظ الصورة في الخادم والوصول إليها باستخدام API بشكل مباشر. هذا يجعل الاستفادة من استخدام API أكثر كفاءة من حيث الأداء. بشكل عام، إذا كانت الصورة ذات حجم صغير ولا يتم تحميلها بكثرة، فإن استخدام Base64 لتشفير الصورة وحفظها في قاعدة البيانات يمكن أن يكون أسهل في التنفيذ. ولكن إذا كانت الصورة كبيرة الحجم وتحمل بكثرة، فإن استخدام API لحفظ الصورة والوصول إليها مباشرةً عند الحاجة يمكن أن يكون أكثر كفاءة من حيث الأداء وتوفير البيانات. اقتباس
السؤال
Kirolos Nagy2
ما الفرق بين اني اشفر الصوره بتشفير base64 واحفظها بقواعد البيانات وعندما اجلبها frontend افك التشفير
والفرق اني احفظ فقط اسم الصوره وعند جلبها استخدم API برابط الملف في ال server
واي منهم افضل
مع العلم اني استخدم Multer في nodejs لاجل رفع الصوره
تم التعديل في بواسطة Kerollos Nagy4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.