موصى به: شرح مفصل لكائن جلسة ASP 1. السمة 1. SessionId خاصية SessionID تُرجع هوية جلسة المستخدم. عند إنشاء جلسة ، يقوم الخادم بإنشاء هوية منفصلة لكل جلسة. يتم إرجاع معرف الجلسة كنوع بيانات ممدود. في كثير من الحالات ، يمكن استخدام SessionID لإحصائيات تسجيل صفحة الويب. 2. مهلة الممتلكات هي sessi من الطلب في دقائق.
عند استخدام برنامج ASP لتصميم صفحة الويب ، يرجع ذلك في الغالب إلى أنك تحتاج إلى الوصول إلى قاعدة البيانات ثم عرض البيانات إلى الصفحة. إذا كان هناك الكثير من البيانات ، فسوف تبطئ سرعة الوصول للصفحة. من أجل حل هذه المشكلة ، يمكنك استخدام التقنيات التالية لتحسين سرعة وصول الصفحة.إحدى النصائح: تحسين كفاءة استخدام مجموعات الطلب
يعد الوصول إلى مجموعة ASP لاستخراج القيمة عملية تستغرق وقتًا طويلاً وحسابًا. نظرًا لأن هذه العملية تحتوي على سلسلة من عمليات البحث عن المجموعات ذات الصلة ، فهذا أبطأ بكثير من الوصول إلى متغير محلي. لذلك ، إذا كنت تنوي استخدام قيمة من مجموعة الطلبات عدة مرات في الصفحة ، فيجب عليك التفكير في تخزينها كمتغير محلي.
على سبيل المثال ، اكتب الرمز في النموذج التالي لتسريع معالجة محرك البرنامج النصي:
| strtitle = request.form (title) strfirstname = request.form (firstName) strlastname = request.form (lastName) iflen (strtitle) thstrtitle = strtitle & ifstrfirstName = thstrfullname = strtitle && strlastname elseiflen (strfirstname) = 1th strfullname = strtitle & strfirstname &. & strlastname آخر strfullname = strtitle & strfirstname && strlastname Endif |
النصائح 2: الوصول المباشر إلى المجموعة المناسبة
إذا لم يكن الأمر كذلك ، فلا تستخدم strpage = طلب (صفحة) للحصول على معلمات ، لأن هذا سيبحث في جميع المجموعات بالترتيب - الاستيلاء ، النموذج ، ملفات تعريف الارتباط ، clientcertificate ، serverVarible حتى يتم العثور على اسم قيمة المطابقة الأول. هذا أقل كفاءة من الوصول مباشرة إلى المجموعة المناسبة وهو غير آمن ما لم يكن مضمونًا تمامًا لن تظهر هذه القيمة في مجموعة أخرى.
على سبيل المثال ، قد يكون من المستحسن البحث عن اسم خادم الويب الذي يفي بطلب العميل ، والذي يتم إنجازه من خلال البحث عن Server_Name في مجموعة request.servervarables التي تظهر في كل استعلام. ومع ذلك ، إذا كانت مجموعات أخرى تحتوي أيضًا على قيم تسمى Server_name (أسماء المفاتيح غير حساسة للحالة) ، عند استخدام الطلب (Server_Name) ، سيتم الحصول على نتيجة غير صحيحة. باختصار ، يجب الوصول إلى المجموعة المناسبة مباشرة قدر الإمكان.
نصائح 3: استخدم خاصية Response.isclientConnected قبل تشغيل الوقت المستغرق
يعد استخدام Response.IsClientConnected طريقة مفيدة لمراقبة ما إذا كان المستخدم لا يزال متصلاً بالخادم ويقوم بتحميل صفحة الويب التي تم إنشاؤها بواسطة ASP. إذا قام المستخدم بفصل أو توقف عن التنزيل ، فلن نحتاج إلى إهدار موارد الخادم لإنشاء صفحات ويب ، لأنه سيتم التخلص من محتوى المخزن المؤقت بواسطة IIS. لذلك ، بالنسبة لصفحات الويب التي تتطلب الكثير من الوقت لحساب أو استخدام المزيد من الموارد ، يجدر التحقق في كل مرحلة ما إذا كان الزائر غير متصل:
... CodetOcreatep الجزء الأول من الصفحة ifresponse.isclientConnectedthen استجابة آخر استجابة Endif ... CodetOcreAteNExtPartofpage |
النصائح 4: تحسين عمليات ADO في ASP
بشكل عام ، تشكل البيانات المحتوى الفعلي لموقع الويب. لذلك ، من المفيد للغاية تحسين عمليات ADO لتسريع تنفيذ رمز ASP:
أ. حدد فقط الأعمدة التي تريدها: عند فتح مجموعة سجلات ADO ، لا ينبغي استخدام اسم الجدول (أي تحديد*) تلقائيًا ما لم يتم الحصول على جميع الأعمدة. يعني استخدام عمود منفصل أنه سيتم تقليل كمية البيانات المرسلة إلى الخادم أو جلبها من الخادم. حتى إذا كنت بحاجة إلى استخدام جميع الأعمدة ، فإن تسمية كل عمود بشكل فردي سيحقق أفضل أداء ، لأن الخادم لم يعد على أسماء تلك الأعمدة.
ب. استخدم الإجراءات المخزنة قدر الإمكان. الإجراءات المخزنة عبارة عن برامج مسبقة التنسيق تحتوي على خطة تنفيذ جاهزة ، بحيث تنفذ بشكل أسرع من عبارات SQL.
ج. استخدام المؤشر المناسب ووضع القفل. إذا تم الانتهاء من كل العمل هو قراءة البيانات من مجموعة السجلات وعرضها على الشاشة ، فسيتم استخدام مجموعة سجلات القراءة فقط المتداخل فقط. كلما زاد استخدام ADO للعمل للحفاظ على تفاصيل السجلات والقفل ، زاد أداء التنفيذ.
د. استخدام متغيرات الكائن. تتمثل إحدى الطرق المؤكدة لتحسين الأداء عند اجتياز مجموعة السجلات في استخدام متغيرات الكائن للإشارة إلى الأعضاء في المجموعة. على سبيل المثال:
Whilenotrsgc.eof Response.write اسم المشروع: & rsgc (GCMC) و (رمز المشروع: & rsgc (gccode) &) rsgc.movenext ويند |
يمكنك استخدام إعادة الكتابة على النحو التالي لتسريع التنفيذ:
setGCMC = RSGC (GCMC) setgccode = rsgc (gccode) whiLenotrsgc.eofresponse.write اسم المشروع: & gcmc و (رمز المشروع: & gccode &) rsgc.movenext ويند |
يقوم الرمز الجديد بإنشاء إشارات إلى متغيرات الكائن ، لذلك يمكن استخدام متغيرات الكائن بدلاً من المتغيرات الفعلية ، مما يعني أن محرك البرنامج النصي يعمل بشكل أقل لأن عدد الفهارس في المجموعة يصبح أقل.
نصائح 5: لا تخلط محركات النصوص
نحن نعلم أنه يمكنك استخدام كل من VBScript و JScript في صفحات ASP. ومع ذلك ، لا ينصح باستخدام كل من JScript و VBScript على نفس الصفحة. نظرًا لأنه يتعين على الخادم إنشاء مثيل له ومحاولة تخزين محركات نصية (وليس واحدًا) ، فإن هذا يضيف إلى عبء النظام إلى حد ما. لذلك ، من منظور الأداء ، لا ينبغي خلط محركات البرمجة النصية المتعددة في نفس الصفحة.
يمكنك تجربته. يمكن للطرق المذكورة أعلاه تحسين سرعة فتح صفحة ASP بشكل فعال.
المشاركة: تفسير كيفية استخدام متغيرات كائن الجلسة بشكل صحيح في ASP يعرف أي شخص يستخدم ASP أن كائن جلسة يخزن المعلومات اللازمة لجلسة مستخدم محددة ، وعندما يقفز المستخدم بين صفحات التطبيق ، لا يتم مسح المتغيرات المخزنة في كائن الجلسة ، وتكون هذه المتغيرات موجودة دائمًا عندما يصل المستخدم إلى الصفحة في التطبيق. يمكن أن يقلل من تعقيد البرنامج وتحسين كفاءة البرمجة ، ولكنه يحتوي أيضًا على العديد من أوجه القصور.