موصى به: جمع أخطاء ASP يعد جمع أخطاء ASP مفيدًا للمبتدئين ، وربما ينسى الخبراء ذلك. مجموعة أخطاء ASP Microsoft vbscript Language*خطأ (0x800a03e9)-> لغة Microsoft Vbscript غير كافية*خطأ (0x800a03ea)-> خطاب*خطأ Microsoft VBScript*خطأ (0x800a03ea)-> خطاب*خطأ Microsoft vbscript*
تتم تهيئة طلبات ASP بواسطة كائنات WAM. كائن WAM ثم يرسله إلى ASP-Runtime. يستجيب ASP-Runtime له عن طريق إنشاء كائن صفحة داخلي.كائن WAM هو كائن مؤشر ترابط مجاني. عندما يستدعي امتداد ISAPI مثل ASP.DLL ، فإنه يستخدم مؤشرات الترابط من نموذج MTA الذي يخصصه تجمع مؤشرات الترابط الذي يحتفظ به IIS-Runtime.
تكمن مشكلة صعبة في مواجهة تمديد ISAPI في كيفية التعامل مع توافق الخيط والمزامنة الناجمة عن تجمع مؤشر ترابط MTA هذا. يقوم ASP-Runtime بتبسيط المشكلة عن طريق تبديل كل طلب ASP إلى وحدة واحدة مترابطة (STA) قبل تشغيل البرنامج النصي ASP. يدير ASP-Runtime تجمع خيوط Helper Sta المستقل (في الخلفية ، يقوم ASP بذلك فعليًا باستخدام تجمع مؤشرات الترابط COM). أنشأ مصممو ASP نظام تجميع الخيوط هذا لتوفير توازن محسّن بين التزامن واستخدام الموارد مع القضاء على الحاجة إلى المبرمجين لتحقيق التزامن.
كيف يقوم ASP-Runtime بتبديل كل طلب من مؤشر ترابط MTA إلى مؤشر ترابط STA. تضع آلية جدولة ASP-Runtime كل طلب في قائمة انتظار طلب مركزي. ترابط STA في تجمع مؤشرات الترابط التي تتم إدارتها بواسطة ASP مراقبة قائمة الانتظار ومعالجة الطلبات بطريقة الأولى في الأول. لاحظ أن حجم تجمع الخيوط هذا يتغير ديناميكيًا. يولد ASP-Runtime مؤشرات ترابط إضافية أثناء الاتصالات الذروة ، ويطلق الخيوط عندما يكون هناك اتصال أقل.
يتحول التبديل إلى مؤشر ترابط STA بشكل فعال لمشكلة التزامن ، ولكن هذا له أيضًا تأثير كبير على الأداء. يوفر DLL الممتد ISAPI المعالجة في سرب خيط MTA منفصل أوقات استجابة أسرع.
يوفر IIS طريقة لتعيين الحد الأقصى لحجم مجموعة مؤشرات الترابط STA وطلب قائمة انتظار طلب. يتم التحكم في حجم تجمع الخيوط بواسطة المفتاح الأساسي لـ ASPPROCESSORTORDMAX في METADATABASE IIS. الإعداد الافتراضي لهذا المفتاح الأساسي هو 25 لكل عملية لكل معالج (تعليق: من الأفضل العثور على وثائق Microsoft ذات الصلة لإثبات هذا الرقم. يقول بعض الأشخاص أن هذا الرقم هو 10 لكل وحدة المعالجة المركزية). وهذا يعني ، في جهاز كمبيوتر من أربعة معالجات ، يمكن أن يكون لكل عملية تقوم بمعالجة ASP ما يصل إلى 100 موضوع إضافي. ما لم يتم النظر في المشكلات المتعلقة بتجمعات خيوط الضبط ، يجب تجنب تغيير هذه القيمة الرئيسية. لاحظ أنه لا يمكنك استخدام مدير خادم الإنترنت لتغيير هذا الإعداد. يجب تعديله باستخدام البرامج النصية الإدارية أو تطبيقات VB.
يحدد IIS سعة أقصى لقائمة انتظار طلب ASP. افتراضيًا ، يسمح ASP-Runtime بقائمة انتظار للاحتفاظ بما يصل إلى 3000 طلب (ينص مستند Microsoft مختلف على أن قائمة الانتظار هذه يمكنها فقط عقد 500 طلب). بمجرد تجاوزها ، سيتم رفض طلب الإدخال اللاحق لـ ASP ، ويتم إرجاع رسالة الخطأ كخادم مشغول جدًا.
يمكن برمجة مفتاح ASPProcessorTordMax الأساسي والمفتاح الأساسي لـ Asprequestqueuemax باستخدام كائنات إدارة IIS و ADSI. على سبيل المثال ، في مشروع EXE قياسي ، راجع مكتبة نوع DS النشط واكتب الرمز التالي:
Dim MyWebserver كما activeds.ads
Set MyWebserver = getOject (iis: // localhost/w3svc)
myWebserver.put aspprocessordMax ، 30
myWebserver.put asprequestqueuemax ، 1500
myWebserver.setInfo
فيما يلي ملخص موجز لكيفية عمل مجموعة مؤشرات الترابط ASP في IIS مثبتة افتراضيًا على جهاز كمبيوتر واحد معالج. يحتوي تجمع الخيوط هذا على 25 خيوط Helper STA المتاحة لكل معالج. عند وصول الطلب ، يتم وضعه في قائمة انتظار الطلب. يقوم ASP-Runtime بجدولة مؤشر ترابط STA الخمول من تجمع مؤشرات الترابط ، إذا كان أحدهم متاحًا (لاحظ أن هذا المخطط يسمح لأي مؤشر ترابط في تجمع مؤشرات الترابط بمعالجة الطلب). إذا لم يكن هناك خيوط مساعد مجانية ، فسيتم إضافة الطلب إلى قائمة الانتظار. طالما أن قائمة الانتظار لا تصل إلى الحد الأقصى الافتراضي ، فسيتم معالجة جميع الطلبات.
التطبيق الموزع البرمجة مع Visual Basic 6.0 من Ted Pattison
المشاركة: الميزات الفنية وطرق الاستخدام لـ ASP قبل بضع سنوات ، كانت القناة الوحيدة في الصناعة لإصدار الصفحة الرئيسية للصفحة الرئيسية هي نموذج CGI (واجهة GA المشتركة GA). على الرغم من أن الحلول الفنية اللاحقة مثل ISAPI و NSAPI و JDBC قد تحسنت مقارنةً بالهيئة CGI ، إلا أن هذه الحلول لا تزال تقاس من الواقع التقني لشبكة المؤسسة (Intranet).