بتاريخ: 17 أكتوبر 201015 سنة comment_201652 السلام عليكمفي حال ان المخدم يعمل بالنمط sharedهل تفرق العملية في عملية تحديد المستخدمين المتاحين لقاعدة البيانات وعدد الجلسات المتاحة لكل مستخدم ام ان الامر لا يختلف يرجى ذكر البارمترين ان كان مختلفاوجزاكم الله خيرا تقديم بلاغ
بتاريخ: 19 أكتوبر 201015 سنة comment_201778 أخي الفاضل سؤالك رائع وأتمني أن أوفيك الاجابة نعم الامر مختلف - دعنا اذن نذكر قليل من الفرق بينهما متمنيا في نهاية ردي أن تصلك الاجابة أولا : كلمة dedicated تعني خصوصي - مخصوص مثل السيارة الملاكي لصحابها فقط أيا كان الزحام في الشارع لا يستخدمها سوي صاحبهايعني ايه الكلام دا ؟؟؟ يعني ال resource المخصص ال connection يفضل محجوز له سواء قام المستخدم بالاتصال أم لا فهو مخصص ومحجوز له عمل قليلا أم كثيرا فالمصادر متاحه له استخدمها وقتما شاء ومتاحه له في أي وقت بل يزيد علي ذلك لو كان المستخدم من النوع dedicated server يريد ان ينفذ شيئ ما ولا يوجد مصادر كافية (less network resource ) فان النظام يقوم بعمل blocking لمستخدم اخر من أجل هذا ال dedicated CONNECTIONنستخد هذا النوع وهو القياسي حينما يكون لديك مواصفات عالية أو لو كنت تستخدم مستخدم اداري administrative userمثل SYS فلا يحتمل أن يفتح ثم لا يجد اتصال طيب الثاني shared server دا يا سيدي زي اتوبيس النقل العام (رحم الله الشيخ كشك كان يسميه أتوبيس النشل العام لكثيرة الزحام والسارقين يستغلون ذلك ) للجميع يعتمد الاتصال به علي dispatchers ودي أداه زي مرسل البرقيات السريغة كده بيروح يشوف مين المستخدمين اللي في حالة Idle Session لما واحد جديد يريد الاتصال ولا يجد session يروح يقفل علي العطلان ويعطي الاتصال للجديد مما يقلل الحمل علي الخادم ونستخدم هذا النوع من الاتصال في البيئات التي كثيرا ما توجد Idle sessions كما في حال مستخدمين الادخال يعني OLTP inveronments (OLTP = OnLine Transactional processing) جيث ا، مثل هذه العمليات يحتاج وقت ليس كثير لذلك لو كان لديك مواصفات عالية بعدد مستخدمين ليس عبئ علي الخادم والموظفين لم ترد منهم شكاوي من قطع اتصال ال session يمكنك اتخاذ قرار العمل ب dedicated server اما أذا كان العكس ف shared هو الامثل في TNSNAMES تجد (SERVER=dedicated) # or (SERVER=shared)لتحديد ايهما للمستخدم أسئلة شائعة كيف يمكنني معرفة اذا ما كان الخادم Shared Server أم DedicatedSELECT sid, username, server FROM v$session WHERE type='USER'; كيف يمكنني معرفة اذا كان dispatcher يعمل حاليا (dispatcher process was created)SELECT * FROM v$dispatcher;لو لم يرجع بيانات معناها لاكيف يمكنني عمل set up a Shared Server?باضافة السطر التالي ل init.oraDISPATCHERS = '(ADDRESS=(PROTOCOL=TCP)(HOST=<host_name>)(PORT=<port_name>))'هناك بعض الاضافات يمكن أن تضاف ل DISPATCHERS parameter مثل CONNECTIONS, DISPATCHERS, LISTENER, MULTIPLEX, SERVICE, SESSIONS, MAX_DISPATCHERS, SHARED_SERVERS, MAX_SHARED_SERVER, etc.كيف يمكنني ايقاف Shared (MTS) Server Architecture?a) modify the initialization file (init<SID>.ora, or the spfile) : remove the DISPATCHERS parameter. assure that the tnsnames.ora on the client side use "(SERVER = DEDICATED)" instead "(SERVER = MTS)" c) stop the listenerd) stop the databasee) start the listenerf) start the databaseوللايجاز فان الفرق بينهما عموما In a Shared Server architecture MANY sessions (user connections) have ONE server process associated.In a Dedicated Server architecture ONLY ONE sessions (user connections) have ONLY ONE server process associated.Because a Shared Server architecture use a multi-thread architecture (one server process has more threads), a Shared Server is named MTS (Multi-Thread Server) as well. وأوضحنا انه يمكن أن يكون لدينا كليهما في وقت واحد من ميزات ال shared server انه يمكن عمل dedicated connection ل administrative userوفقنا الله واياكم تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.