بتاريخ: 11 سبتمبر 200619 سنة comment_78400 الاخوة الاعزاء: تحية طيبة معطرة بالصلاة على محمد بن عبدالله.كما تعلمون ان من خيارات تنزيل الأوراكل هو تحديد هل تريد وضع الدتابيز من نوع Dedicated Server أم من نوع Shared Server وأتوقع ان الفرق واضح فأولى تحجز لكل request اتصالConnection كل على حدة، أما الثانية فأنها تحجز لمجموعة من الRequest اتصال connection واحد ويكون المسؤول عن عملية ادارة الrequest في هذه الحالة ما يدعى Dispatcher......الخولبندأ سوية بصلب الموضوع وهو التأكد من أن الShared Server يعمل بالشكل المطلوب والمرجو منه وذلك من خلال عمل tuning له وبالنحو الأتي :أولا : تحديد ما إذا كان هناك مساحة أوحيز في الDispatcher :-وهنا يتم استعمال V$DISPATCHER لتحديد النسبة المئوية التي يكون فيها الDispatcher مشغولاً . وذلك من خلال تنفيذ الاستعلام الاتي:- Select name, (busy / (busy + idle))*100 "Dispatcher % busy Rate" From V$DISPATCHER Name Dispatcher % Busy Rate ------------ --------------------------- D000 .00070079 D001 .0059 فإذا كان الDispatcher مشغولاً اكثر من 50% فيجب هنا تشغيل Dispatcher اخر وكما في الجملة الأتية : ALTER SYSTEM SET DISPATCHERS=”(PRO=TCP)(DIS=4)”; وهنا تم زيادة الDispatcher واحد فقط لانه في السابق كان هناك ثلاث الDispatcher شغال . وبعد عملية الزيادة نكرر الجملة السابقة لتأكد من ان الDispatcher مشغول أقل من 50% والا فيجب زيادة الDispatcher وهكذا.......ثانياً : قياس مدى إنتظار الUser للDispatcher أم لا :-وهنا يتم استعمال V$DISPATCHER و V$QUEUE وعمل join بينهما وكما في الجملة الأتية : SELECT decode(sum(totalq),0,’No Responses’, Sum(wait)/sum(totalq)) “Average Wait time” FROM V$QUEUE q, V$DISPATCHER d WHERE q.type = ‘DISPATCHER’ AND q.paddr = d.paddr; Average Wait Time ------------------ .0413 وبهذا المثال نرى ان الuser ينتظر أكثر من 0.04 ثانية . حاول أجراء هذا الستعلام في وقت لاحق للتأكد من عدم زيادة هذا الوقت فإذا زاد ، قم بإضافة Dispatcher أخر وباستعمال ايعاز ALTER SYSTEM وكما في المثال السابق.ثالثاً : تحديد ما هناك مساحة أو حيز في Shared Server أم لا :-هنا يتم استعمال V$QUEUE و V$SHARED_SERVER ، في البداية يجب معرفة الوقت الذي ينتظره الRequest الخاص بclient في الRequest queue وكما في الاستعلام الاتي : Select decode(totalq,0,’No Requests’) “Wait Time”, Wait/totalq || ‘ hundredths of seconds’ “Average Wait time per request” from V$QUEUE where type = ‘COMMON’ Wait Time Average Wait time per request -------- ----------------------------------- .023132 hundredths of a second وهنا الوقت اكثر من 0.02 ثانية ، قم بإجراء الاستعلام لاحقاً فإذا زاد الوقت المنتظر قم بإضافة shared server وبالنحو الاتي : ALTER SYSTEM SET SHARED_SERVERS = 5; وهنا تم زيادة عدد shared server الى 5 (في السابق كان 4) بعدها قم بإجراء الاستعلام السابق وتأكد من الوقت المنتظر قد قل وهكذا ............أتمنى في النهاية قد أوصلت المعلومة المرجوة . فإن أصابت فمن الله العليم وإن أخطأت فمن الشيطان ومن نفسي .ولا تنسونا من صالح دعاءكم. وشكراًًًًًًًًًًًًًًًًًًًااااااااااااااً تم تعديل 11 سبتمبر 200619 سنة بواسطة omar-alreyati تقديم بلاغ
بتاريخ: 11 سبتمبر 200619 سنة comment_78445 الأخ / omar-alreyatiمعلومه جديده ومفيدة شكرا لك .. وننتظر المزيد بارك الله فيك .. ونفع بك المسلمين تقديم بلاغ
بتاريخ: 13 سبتمبر 200619 سنة comment_78574 السلام عليكم ورحمة الله وبركاته ،،،،مشكور اخي عمر على هذه المعلومات المفيدة ...تحياتي تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.