موصى به: حصة: مقدمة في خصائص وطرق طلب XML HTTP نظرًا لأنك مسؤول الآن عن صنع صفحات ثابتة في الشركة ، من أجل تعزيز تجربة العملاء ، غالبًا ما يتعين عليك القيام ببعض تأثيرات Ajax ، وتعلم Ajax مثلي. تقنية مهمة (أداة) المستخدمة عند تصميم AJAX هي كائن XMLHTTPREQUEST. هنا
خادم التطبيق هو ، أو سيتم استخدامه في النهاية بواسطة خادم ويب ، وعادة ما يكون الكمبيوتر IIS يعمل على تشغيل صفحة ASP. ASP هو العميل الوحيد لكائنك. إنه يجلب اعتبارات خيوط خاصة وأمن.على الرغم من أن العديد من مواقع الويب التي تستخدم ASP لا تستخدم المكونات على الإطلاق ، إلا أنه في هذه المقالة ، يُفترض أن ASP بمثابة جسر بين عملاء الإنترنت والمكونات. يتم توفير إرشادات مكون ASP التالية (باللغة الإنجليزية)
خدمات قسم ASP والمكونات
يستخدم ASP الأكثر شيوعًا لإنشاء ملفات HTML أو XML للاستخدام من قبل العملاء على الخوادم ، لذلك نناقش بشكل أساسي سيناريو الاستخدام هذا. هذا يثير سؤالًا شائعًا: إذا كانت صفحات ASP على الخادم ، فهل تنتمي إلى جزء من طبقة العمل؟ في عالم المكون ، عادة ما تكون الإجابة لا. على الرغم من أن ASP يعمل على الخادم وقد يكون في نفس مساحة خادم التطبيق ، فإن هذا لا يجعله جزءًا من منطق العمل.
مع نمو أدوات واجهة المستخدم أو مع تمكين حلول الأعمال إلى الأعمال التجارية ، فإن وجود هذا التمييز الواضح سيؤتي ثمار مكافأة ضخمة.
بعد قولي هذا ، دعونا نلقي نظرة على بعض من أهم معايير طبقة العمل وطبقة العرض التقديمي:
منفصل رمز واجهة المستخدم عن منطق العمل. يتضمن ذلك كتابة رمز مقترن بواجهة المستخدم ، مثل استخدام كائن MTS الذي يستخدم مكونًا داخليًا لـ ASP لفصله عن رمز منطق العمل ، كما لو كان في DLL مختلف.
منفصل المعاملات عن صفحات ASP. تعتبر المعاملة ASP جيدة جدًا في بعض الحالات ، لكن المكونات والتطبيقات متعددة المستويات تغير هذا. يجب ألا تعتمد المكونات على طبقة العميل لإدارة معاملاتها ودلالات منطق الأعمال.
ضع المكون الذي يمثل (المكون الذي يستخدم الطلب والاستجابة) في نفس الجهاز و/أو عملية خادم الويب. إذا تم وضع كائن يستخدم كائن المكون الداخلي ASP على جهاز بعيد ، فسيحدث جميع المكالمات إلى المكون الداخلي في نموذج رد الاتصال. خادم COM الذي يستدعي عميل IIS هو خادم COM ، مما يقلل بشكل كبير من الأداء ويعقد تكوين الأمان. يمكن وضع كائنات التعديل هذه في تطبيقات COM التي تم وضعها في تنشيط المكتبة.
يوجد ASP على الخادم ، لذلك يجب أن تتوافق صفحة ASP لقواعد مشاركة الموارد وتضع في الاعتبار قابلية التوسع. يرجى الاطلاع على التفاصيل أدناه:
في الجلسة ، يجب أن تحاول الإدارة تجنب حالات المستخدم الخاصة.
الحفاظ على ASP عديمة الجنسية واترك تجمعات الموارد حيثما أمكن.
طريقة التشغيل
عند تقييم ما إذا كان قطاع الرموز ينتمي إلى منطق العمل أو طبقة العرض التقديمي ، يرجى أن تسأل نفسك ، إذا كان عليّ استخدام تطبيق هاتف من نوع الزر بدلاً من صفحة ASP الخاصة بي ، هل سيظل الرمز يعمل؟ إذا كانت الإجابة نعم ، فيمكنك محاولة تقسيمها إلى رمز منطق العمل أو رمز مساعد واجهة المستخدم.
إذا كان لا يمكن استخدام الرمز بعد تغيير العميل ، أو إذا كان مساعدًا لبناء واجهة المستخدم ، فإن الكود ينتمي إلى طبقة خدمة التمثيل. يقع في صفحة ASP ، أو في مكون يستخدم المكونات الداخلية ASP. لا ينتمي إلى مكون كائن العمل.
فهم الفرق بين سطح المكتب وعميل ASP
ASP عميل خاص للمكونات ، على عكس تطبيقات Win32 التقليدية على سطح المكتب. يتم تلخيص الاختلافات الرئيسية على النحو التالي.
إدارة الموضوع: ASP عميل متعدد الخيوط. هذا يعني أنه يمكن أن يكون هناك العديد من الأنشطة المتزامنة التي تعمل معًا ، وربما تتعامل مع صفحات ASP المختلفة في نفس الوقت. هذا يعني أنه لا يمكن إجراء الكائن للادعاء بشكل خاطئ بأنه المستخدم الوحيد الذي يشغل النظام بشكل حصري. يمكن أن يسبب القيام بذلك ردود فعل غير متوقعة ، على سبيل المثال ، لتطوير عادة سيئة لتخزين الكائنات في جلسة ASP أو متغيرات التطبيق.
بيئة الأمان: يتم تنفيذ ASP بواسطة خدمات معلومات الإنترنت 5.0 في موقع الويب ، مع ثلاثة مستويات عزل: منخفضة ومتوسطة وعالية. حتى مواقع الويب هذه يمكن أن تحتوي على إعدادات أمان مختلفة ، والسماح أو رفض الوصول المجهول ، ومصادقة العملاء ، والمزيد. تنشئ كل هذه الإعدادات عددًا كبيرًا من المخططات حيث تنتهي حسابات المستخدمين المختلفة باستخدام كائناتك.
النمو بسهولة: هذه ليست مشكلة فنية ، ولكنها تأثير جانبي للمرافق التي توفرها تطبيقات الويب. تقليديًا ، تتطلب إضافة قاعدة المستخدمين إلى تطبيقات سطح المكتب تخطيطًا دقيقًا للتحويلات إلى أعداد معروفة من العملاء. لقد غيرت ASP العملية. بعد التشغيل والتشغيل ، يمكن فتح التطبيق الأساسي البصري ASP بسهولة لاستخدامه من قبل جميع الموظفين وجميع شركاء الأعمال وجميع العملاء محليًا أو في جميع أنحاء العالم. يمكن وصفه بهذه الطريقة - يمكن أن ينمو بريد إلكتروني واحد يحتوي على ارتباط تشعبي قاعدة المستخدم عشرة أضعاف. هل تطبيقك جاهز لهذا؟ الطريقة الوحيدة للتعرف هي إجراء اختبار القوة على موقع الويب للحصول على القيمة المتوقعة للأداء الفعلي. لمزيد من المعلومات حول اختبار الشدة ، راجع قسم دورة حياة التطبيق.
كيف ينبغي استخدام كائنات Visual Basic داخل ASP؟ قم بإنشاء وإلغاء الكائنات الخاصة بك في نطاق الصفحة. وهذا يعني ، اجعل صفحة ASP عديمة الجنسية قدر الإمكان ، وتعتمد فقط على متغيرات الجلسة أو التطبيق في حالة مؤقتة. لا تقم بتخزين الكائنات في متغيرات الجلسة أو التطبيق. هذا يغلق مؤشر ترابط ASP إلى جلستك ، يلغي جميع القيم المتوقعة لقابلية التوسع. وهذا يعني أن عدد المستخدمين المعالج من قبل خادم الويب لن يتجاوز عشرات المستخدمين. إذا كنت بحاجة إلى تخزين المحتوى في جلسة أو تطبيق ، اجعله بيانات بدلاً من كائن.
هناك العديد من الإرشادات الأخرى التي يجب اتباعها. نوصيك بقراءة العمود Servin 'It Up الذي كتبه JD Meier على MSDN Voices. يتضمن هذا العمود مجموعة واسعة من التقنيات والممارسات والنصائح التي تساعد على تطوير تطبيقات ASP والتطبيقات الموثوقة والموثوقة.
الرجوع إلى
MSDN Voices: Servin 'It Up Column (English)
ندوة: استخدم مكونات COM مخصصة ضمن ASP (اللغة الإنجليزية)
مجلة MSDN (الإنجليزية)
لا تقم بتخزين المراجع في كائنات VB في الجلسة أو التطبيق
جميع مكونات Visual Basic 6.0 متصلة بالخلايا ، مما يعني أنها تعمل جميعًا في وحدات STA. هذا يعني أنه إذا تم إنشاء كائن في مؤشر ترابط ، فيجب تقديم جميع المكالمات إلى هذا الكائن بواسطة مؤشر الترابط نفسه. تستخدم العديد من مؤشرات الترابط (من مستخدمي موقع الويب المتزامن) نفس مثيل كائن STA ، مما تسبب في سلسلة من الأنشطة التي يمكن أن تصبح اختناقات في التطبيق.
بالإضافة إلى ذلك ، يمكن لتخزين كائنات STA التي تم إنشاؤها باستخدام Server.CreateBject داخل نطاق الجلسة الاتصال بفعالية بمسلسل التنفيذ إلى المستخدم الحالي ، وبالتالي الحد من الحد الأقصى لعدد المستخدمين المتزامنين للتطبيق إلى 20xN الافتراضي (ن = عدد المعالجات).
طريقة التشغيل
إذا اتبعت توصياتنا لجعل الكائنات عديمة الجنسية ، فلن تحتاج إلى تخزين المراجع لإعادة استخدام العميل وتخزينها في نطاق التطبيق. سيتمكن العملاء من إنشاء كائناتهم الخاصة واستخدامها وإلغاءها بشكل مستقل. هذا يقلل من الحاجة إلى الحفاظ على الكائنات الخاصة بالجلسة لأنها لا تحتفظ بحالة خاصة بالجلسة.
تتمثل الطريقة الموصى بها في جعل الكائن بلا جنسية ، والذي يصل إلى قاعدة البيانات أو مناطق التخزين الأخرى (مثل ملفات تعريف الارتباط و LDAP) عند الحاجة.
إذا كنت بحاجة إلى استخدام بيانات الجلسة أو التطبيق على مستوى التطبيق ، فقم بتخزين البيانات ، بدلاً من الكائن الذي يعالج البيانات ، هنا. يمكنك إنشاء فئة تغلف معالجة القيمة المطلوبة.
الرجوع إلى
الرسالة: لا تخزن كائنات STA في الجلسات أو التطبيقات (Q243543) (الإنجليزية)
PRB: قم بتخزين مكون STA COM في الجلسة وقفل الجلسة في موضوع واحد (Q243815) (الإنجليزية)
المعلومات: ملخص نموذج ترابط المكون ضمن ASP (Q243544) (اللغة الإنجليزية)
تعلم محتوى جديد في IIS 5.0
يضيف خادم معلومات الإنترنت 5.0 العديد من الميزات الجديدة. تمت كتابة هذه التحسينات في مقالة MSDN الخاصة بـ JD Meier: استخدم ASP في IIS 5.0 (الإنجليزية). فيما يلي نظرة عامة على أهم التحسينات في هذه المقالة.
تحسين ، أداء ممتاز
خادم.
معالجة الأخطاء المركزية
ميزات المتصفح المحسنة
تحسين محرك البرمجة النصية
محلل التعبير العادي
التكامل مع وظائف سجل ADO Set XML
قدرات الأمن الجديدة ، التخزين المؤقت ، العزلة والإدارة
الرجوع إلى
تغييرات مهمة في ASP (باللغة الإنجليزية)
المشاركة: نصائح: احصل على مثال على قيمة الترقيم التلقائي للسجل الذي أدخلته للتو بالنسبة إلى قواعد بيانات Access و SQL Server ، يمكن أن تحصل الطريقة التالية على قيمة الترقيم التلقائي للسجل الذي تم إدخاله للتو. "احصل على القيمة ذات الأرقام التلقائية للسجل الذي أدخلته للتو ، وما يلي هو المحتوى المشار إليه: