الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

بطء أكسس على الشبكة

مغلق
بدأه حارث في 20 يناير 2003 · 16 رد · 3,358 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

ما هي الأسباب ؟ وما هي الحلول؟

عندي برنامج وضعت الداتا في ملف والواجهات في ملف ، وجعلت الداتا في السيرفر والواجهات في أجهزة المستخدمين ، لكن ألاحظ بطءا شديدا في البرنامج فما هي الأسباب المحتملة، وما هي الحلول ؟

1
#2

أحيانا يكون البطء من الشبكة نفسها

و قد واجهتني فى مرة مشكلة بطيئ كان سببها عيب تصميم فى البرنامج ، فقد كنت أستنتج قيم كثيرة باستخدام دوال مركبة ، و بعد ذلك قمت بحفظها فى حقول فزادت السرعة .

أيضا ال indexex المكررة و الغير لازمة و التي بها أخطاء فى الاسم ، و التي تتولد نتيجة نسخ الجداول من بعضها أثناء التصميم ( راجع ال indexex لجميع الجداول )

هذا ما هو حاضر بذهني الان ، و فى انتظار آراء باقي الأخوة

1
#3

أخي الكريم

السلام عليكم

للبطء على الشبكة أسباب كثيرة منها بالطبع ما يعود للبرامج ومنها ما يعود للأجهزة المادية وبحاصة تجهزات الشبكة مثل الكيبل وأجهزة الهب وغيرها

من المعلوم أن كروت الشبكة عادة تستخدم نظام الإنصات والإرسال أي أنها تحاول التحسس من الكيبل فإذا لم تجد فيه شيئاً فإنها تقوم بإرسال البيانات بعد تحويلها ومن ثم يتم استقبالها في الجهاز المصدر واسترجاعها

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

ثمة أمر آخر مهم له علاقة بهذه القضية وهو أن طريقة البث عبر الشبكة تختلف فهناك البرودكاست أو البث العريض حيث يتم بث البيانات لجميع الأجهزة ثم تستقبل من الجهاز المعني فقط وهناك اليوني كاست الذي يبث للجهاز المعني فقط

هذه المعلومات مهمة جداً لمعرفة طبيعة ما يجري على الشبكة

السؤال الآن ما السبب في بطء العمليات داخل أكسس

عندما تتعامل مع أكسس فإنك في الحقيقة تتعامل مع ملف واحد هو ملف قاعدة البيانات ومعنى ذلك أنك عندما ترسل أمر الاستعلام إلى قاعدة البيانات فلن يتم عرض النتائج حتى يتم استقبال كافة البيانات ووصولها سليمة من الجهاز الرئيسي إلى جهازك وهذا هو الفرق بين أكسس وقواعد البيانات التي تعمل كسيرفر مثل MSSQL وغيره

ففي أكسس يتم تنفيذ الاستعلام على نفس جهازك والسيرفر مجرد وعاء للبيانات أما في قواعد بيانات السيرفر فالاستعلام يتم تنفيذه على السيرفر ثم يقوم السيرفر بإرسال النتيجة فقط دون بقية البيانات كما أنه يقوم بإرسال النتيجة على شكل دفعات ومن عمل على أكسس مع MSSQL يلاحظ ذلك بشكل واضح

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

ثمة ملاحظة أختم يها هذا الحديث وقد لاحظتها من خلال التجربة وسبق أن ذكرتها في هذا المنتدى وهي أن أكسس 2000 يعيبه البطء بشكل غريب وقد سبق أن قمت بتجربة لحساب الوقت حيث نفذت عملية بأكسس 97 وأكسس إكس بي واستغرق تنفيذها جوالي 3 ثواني بينما استغرقت حوالي 35 ثانية في أكسس 2000

تحياتي

أخوك / أبو هاجر

#4

ما شاء الله يا ابا هاجر

لا شاردة ولا واردة اللهم زد وبارك

#5

جزاكم الله خير جميعا

وفي انتظار مزيد من مشاركات الإخوة وتجاربهم

#6

اخى العزيز ابو هاجر ماذكرته صحيح 100 % اضف الى ذلك بغض النظر عن قوة الشبكة انه لو زاد عدد المستخدمين عن 5 مستخدمين ومع بيانات كثيرة يحدث التصادم واعادة المحاولة ومن هنا ننصح كل من يعمل برنامج على الكثر من 5 مستخدمين فى نفس الوقت بعمله على SQL وهذا عن تجربة شخصية لى فى عدد سجلات 5000 ومستخدمين عددهم 9 كان شاشة استعراض البيانات تاخذ 45 ثانية فى اكسس 2000 وفى XP اخذت 32 ثانية وفى SQL اخذت 9 ثوانى ولكن من المؤكد انه لو عدد المستخدمين 2 او 3 مافيش اى مشكلة على الاطلاق

ملحوظة اخرى استخدام سويتش فى الشبكة افضل من هب

#7

موقف مشابه ... وكان السبب ان هناك نموذج به مربع نص به معادله وهذه المعادله تعتمد على مصدر سجل لاستعلام مكون من سبع استعلامات اخرى لدرجة انه من بعد الضغط على زر الامر يستغرق 120 ثانيه حى يفتح النموذج على الجهاز الاخر على الشبكه ,,:mad:

#8

اخواني هل جربتم الامر التالي:

msaccess /decompile

فهو يفيد في تسريع قاعدة البيانات وهو امر غير مكتوب في المساعده و لا اعلم ان كان هناك اوامر اخرى غير مكتوبه

#9

وضع كل جدول في قاعده مستقلة افضل من وضع الجداول جميعها في قاعده واحده (عن تجربة شخصية ) حتى لايحدث عطب في قاعدة البيانات.

#10

السلام عليكم

حسب ما أعرف عن ال Access انه لا تنفع للوضع على سيرفر واستخدامه من قبل عدة اشخاص في نفس الوقت

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

#11

يا شباب البطء في الشبكة على قواعد اكسس ..

تكون بعدة احتملات ... منها عدد المشارة في التطبيق .. ومنها ضعف في المكونات المادية للشبكة .. والبرمجية كذلك ..

ومن موضوع المشارة هناك طريقة توصي بها الكثير من الشركات الخبرا

وهياء وضع data في الملقم ونضع التطبيقة في جميع الاجهزة المرتطبة بالملقم وفي هذا الحالة يقل عملية نقل المعلومات ...

يعني التطبيقة يضل في الاجهزة ... والداتة المشتركة في الملقة

...

تلميذكم ... المبتدى .. امين اليافعي

#12

اخي awaisa --

اقتباس
اخواني هل جربتم الامر التالي:

msaccess /decompile

فهو يفيد في تسريع قاعدة البيانات وهو امر غير مكتوب في المساعده و لا اعلم ان كان هناك اوامر اخرى غير مكتوبه

اين يوضع هذا الامر في القاعده ؟

#13

الأخ مبتدئ والأخ awaisa

السلام عليكم ومعذرة للمقاطعة

الأمر السابق ينفذ من قائمة ابدأ >>> ثم تشغيل ثم تكتب الأمر السابق

تحياتي

أخوك / أبو هاجر

#14
اقتباس
وضع كل جدول في قاعده مستقلة افضل من وضع الجداول جميعها في قاعده واحده (عن تجربة شخصية ) حتى لايحدث عطب في قاعدة البيانات.

أخي fahadam فينك ؟؟

و بالنسبة للموضوع عاليه ، بالطبع مع احترامي لرأيك لا اعتقد ان ذلك ضروري

اقتباس
حسب ما أعرف عن ال Access انه لا تنفع للوضع على سيرفر واستخدامه من قبل عدة اشخاص في نفس الوقت

أخي عبدالله ، بالطبع مع احترامي لرأيك بالطبع يصلح و تمت تجربة ذلك لمرات عديدة

#15

(f)

#16

معلومات قيمه يابو هاجر والله يكثر من امثالك

#17

;)

ما شاء الله تبارك الله

اخواني انا مجرب طريقة جميلة ولا حدث مشاكل لحد الان مدري هل هي صحيحة وتجربونها انتم ام انها مرت عليكم وما كانت مفيدة

الطريقة هي

وضع الملف بالكامل في السيرفر ووضع ملف اختصار له في كل الاجهزة الطرفية

يعني الكل يشتغل على نسخة وحدة

سويتها في ادارة معينة ولا زالوا شغالين عليها الى تاريخه وحسب علمي مافيه مشاكل لانهم لين الحين ما صجوني بتعال وروح ....

جربوا وشوفوا وتحياتي

هذا الموضوع مغلق.

مواضيع مشابهة