![]() |
|
ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة (/showthread.php?tid=12674) |
ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - صالح حمادي - 25-07-2024 السلام عليكم قم بتصميم برنامج مبيعات بالدلفي باستخدام قاعدة بيانات Fire Bird 3 و قمت بربطها عن طريق FireDac لكن ما لاحظته هو أن النسخة الموجودة على السرفر تشتغل بشكل عادي.و النسخة التي قمت بربطها عبر الشبكة ثقيلة جدا. رغم انني استخدم جهازين فقط. فما هو الحل بارك الله فيكم RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - Delphi4Us - 26-07-2024 وعليكم السلام ورحمة الله حقيقة فايربيرد تحتاج الى بعض الخبرة في التعامل معها على الانترنت او على شبكة محلية حيث يكون من الواجب ضبط اعدادات السيرفر بما يتلائم مع مكونات الجهاز والشبكة اولا : راجع الموضوع هنا فيه تقريبا كل ما اعرف عن هذا السيرفر https://delphi4arab.net/forum/showthread.php?tid=12496&action=lastpost ايضا اضافة على ما في الرابط الأسباب المحتملة: سرعة الشبكة: السرعة: تأكد من أن سرعة اتصال الشبكة بين السيرفر والجهاز الطرفي كافية. قد يكون هناك عائق في الشبكة يسبب تأخيرًا في نقل البيانات. الازدحام: إذا كانت الشبكة مشغولة بعمليات أخرى، فقد يؤثر ذلك على أداء قاعدة البيانات. إعدادات Firebird: الحجم المخصص للمخزن المؤقت: قد يكون الحجم المخصص للمخزن المؤقت (cache) على الجهاز الطرفي غير كافٍ، مما يؤدي إلى زيادة عمليات القراءة والكتابة من القرص. خيارات التشفير: إذا تم تمكين خيارات التشفير، فقد تستهلك موارد إضافية وتؤثر على الأداء. إعدادات الاتصال: تأكد من أن إعدادات الاتصال بقاعدة البيانات على الجهاز الطرفي صحيحة ولا تحتوي على أي تأخيرات. موارد الجهاز الطرفي: المعالج: قد يكون معالج الجهاز الطرفي أضعف من معالج السيرفر، مما يؤثر على سرعة معالجة الاستعلامات. الذاكرة: إذا كانت ذاكرة الجهاز الطرفي قليلة، فقد تؤدي إلى تبادل البيانات بين الذاكرة والقرص الصلب، مما يبطئ الأداء. تصميم قاعدة البيانات: الفهرسة: تأكد من أن الفهارس مخصصة بشكل صحيح لتسريع عملية البحث والاسترجاع. الاستعلامات: قد تكون هناك استعلامات معقدة أو غير فعالة تسبب بطئًا في الأداء. تداخل التطبيقات: قد تكون هناك تطبيقات أخرى تعمل على الجهاز الطرفي وتتنافس على الموارد، مما يؤثر على أداء قاعدة البيانات. حلول مقترحة: اختبار سرعة الشبكة: استخدم أدوات اختبار سرعة الشبكة للتحقق من سرعة الاتصال بين السيرفر والجهاز الطرفي. زيادة حجم المخزن المؤقت: قم بزيادة حجم المخزن المؤقت المخصص لـ Firebird على الجهاز الطرفي. تعديل إعدادات التشفير: إذا كان التشفير ليس ضروريًا، فقم بتعطيله. تحسين الاستعلامات: قم بتحليل الاستعلامات الموجودة وتبسيطها قدر الإمكان. إنشاء فهارس إضافية: إذا لزم الأمر، قم بإنشاء فهارس إضافية على الأعمدة التي يتم البحث فيها بشكل متكرر. تحديث برامج التشغيل: تأكد من تحديث برامج تشغيل الجهاز الطرفي، خاصةً برامج تشغيل بطاقة الشبكة. فحص الفيروسات: قم بفحص الجهاز الطرفي بحثًا عن أي برامج ضارة قد تؤثر على الأداء. مراقبة استهلاك الموارد: استخدم أدوات مراقبة النظام لمعرفة استهلاك الموارد من قبل قاعدة البيانات والتطبيقات الأخرى. RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - صالح حمادي - 28-07-2024 بارك الله فيك أستاذ أبو همام لقد قمت بإضافة بعض التعديلات على الشبكة منها تحويل الشبكة من لا سلكية إلى شبكة سلكية و تعديل بعض الأكواد إلى أكواد SQL مباشرة. و كانت النتيجة مرضية و تحسنت سرعة البرنامج و الحمد لله بقي مشكل آخر و هو أنني أردت إضافة جهاز اخر ليس مثبت به فاير بيرد لكن فشلت العملية وضعت ملف fbclient.dll بجنب البرنامج و ايضا في SYSTEM32 دون جدوى فما هو الحل بارك الله فيك أستاذ RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - Delphi4Us - 28-07-2024 لا استطيع ان اقول شيئا قبل ان اعرف ماهو اصدار فايربيرد وهل 64 ام 32 وما هي مكونات الاتصال فربما تستخدم الملف الخطاء وجرب ان تغير اسم الملف الى fbembed.dll كما يجب ان تخبر مكون الاتصال انك تستخدم هذه المكتبة في الخاصية ClintLibrary تضع هنا اسم الملف بدل من الاسم gds32.dll على العموم انا حتى لا اوجع دماغي كل جهاز اثبت فيه الفايربيرد والامور ماشية تمام كسرعة واداء وملف التثبيت حجمه صغير بكل الاحوال RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - صالح حمادي - 29-07-2024 رقم النسخة هو Firebird 3.0.10 اصدار 64 استخدم فاير داك و سوف اجرب بقية الخطوات و أخبرك بالنتيجة إن شاء الله RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - Delphi4Us - 30-07-2024 لا تنسى فتح البورت 3050 في جدار الحماية RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - صالح حمادي - 31-07-2024 بارك الله فيك أستاذ أبو همام و جزاك الله خيرا لقد قمت بوضع المكتبة fbclient.dll في نفس مسار البرنامج و وضعت هذا المسار في مكتبة الاتصال و أصبح يتصل بشكل رائع في أي جهاز أضعه فيه دون تثبيت السرفر . سؤالي الأخير هل سوف يظهر بعض الثقل على قاعدة البيانات إذا اصبح حجمها كبير مثلا 250 ميغا. RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - لؤي - 01-08-2024 السلام عليكم إليك بعض التوصيات لتجنب البطء عند استخدام قاعدة بيانات Firebird في بيئة شبكية مع العديد من المستخدمين: تكوين الأجهزة والشبكة مواصفات الخادم: تأكد من أن الخادم الذي يستضيف Firebird يحتوي على موارد كافية (المعالج، الذاكرة، SSD) لتحمل الحمل المتوقع. البنية التحتية للشبكة: استخدم شبكة سريعة وموثوقة. يُفضل استخدام إيثرنت جيجابت لشبكات المنطقة المحلية (LAN). أداء القرص: استخدم حلول تخزين سريعة مثل SSD لتحسين أداء الإدخال/الإخراج للقرص. تكوين Firebird موقع ملف قاعدة البيانات: احفظ ملف قاعدة البيانات على قرص محلي سريع على الخادم لتقليل زمن وصول الإدخال/الإخراج. مخازن التخزين المؤقت: زد من عدد مخازن التخزين المؤقت في firebird.conf لتحسين أداء القراءة. مدير القفل: قم بضبط مدير القفل للتعامل مع التزامن العالي من خلال تعديل معلمات مثل LockHashSlots و LockAcquireSpins. تحسين SQL الفهارس: تأكد من أن جميع الأعمدة التي يتم الاستعلام عنها بشكل متكرر مفهرسة بشكل صحيح لتسريع تنفيذ الاستعلامات. تحسين الاستعلام: راجع وحسن الاستعلامات SQL بانتظام لتقليل زمن التنفيذ. الإجراءات المخزنة: استخدم الإجراءات المخزنة والمشغلات لتقليل كمية البيانات المنقولة عبر الشبكة ولتركيز المعالجة على الخادم. تصميم التطبيق تجميع الاتصالات: استخدم تجميع الاتصالات لإدارة اتصالات قاعدة البيانات بكفاءة. إدارة المعاملات: حافظ على قصر مدة المعاملات وامضيها في أسرع وقت ممكن لتقليل التنافس على الأقفال. عمليات الدفع: اجمع العمليات المتعددة في معاملة واحدة حيثما كان ذلك ممكنًا لتقليل الحمل الزائد. الصيانة النسخ الاحتياطي المنتظم: قم بعمل نسخ احتياطي منتظم واختبارات استعادة للتأكد من سلامة البيانات وقابليتها للاسترداد. كنس قاعدة البيانات: جدولة عمليات الكنس المنتظمة لإزالة إصدارات السجلات القديمة واستعادة المساحة. تحديث الإحصائيات: قم بتحديث إحصائيات الفهرس بانتظام لمساعدة المحسن على اتخاذ قرارات أفضل. المراقبة والتحليل أدوات المراقبة: استخدم أدوات مراقبة Firebird لتتبع مقاييس الأداء وتحديد الاختناقات. تحليل السجلات: حلل سجلات الخادم بانتظام لتحديد المشاكل ومعالجتها فورًا. بتطبيق هذه التوصيات، يمكنك تحسين أداء واستجابة قاعدة بيانات Firebird في بيئة شبكية مع العديد من المستخدمين. RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - Delphi4Us - 01-08-2024 لا اعتقد ان هناك ثقل سيحصل فحجم قاعدة البيانات لا علاقة له فكل حديثنا عن التسريع و زيادة الاداء عادة يتحدث عنها اشخاص عندهم قاعدة بيانات فيها اكثر من 3 مليون سجل وتعمل على سيرفر بعيد ، اما نحن فيفترض مهما ارتكبنا من اخطاء كمية البيانات التي نحتاجها بسيطة على كل حال السيرفر له اعدادات خاصة غالبا للتوافق مع عتاد الجهاز ادخل على هذا الرابط https://cc.ib-aid.com/democalc.html واختر الاصدارة التي تعمل بها وطريقة الثبيت واختر حجم الرام وعدد المستخدمين المتوقع وباقي البيانات تم انقر زر انشاء والملف الناتج هو اقرب ما تحتاجه من اعدادت تناسبك واستبدله بالملف الذي عندك RE: ثقل في استخدام قاعدة بيانات Fire Bird عبر الشبكة - صالح حمادي - 02-08-2024 (01-08-2024, 02:23 PM)لؤي كتب : السلام عليكم بارك الله فيك أستاذنا . سوف أحاول تطبيقها بعض النقاط لم أفهمها سوف أحاول فهمها و تطبيقها إن شاء الله. (01-08-2024, 11:41 PM)Delphi4Us كتب : لا اعتقد ان هناك ثقل سيحصل فحجم قاعدة البيانات لا علاقة له جزاك الله خيرا أستاذ أبو همام أنا كنت أعمل بقاعدة بيانات أكسس و هذه أول مرة أعمل بفاير بيرد لذلك سألت عن الثقل |