موصى به: تحليل موجز للتحميل الخالي من مكونات ASP وأدخله في قاعدة البيانات ما يلي هو المحتوى المشار إليه: ٪ response.buffer = true server.scriptTimeout = 99999999 على استئناف الخطأ التالي ٪>
لقد مرت 7 سنوات منذ إصدار ASP ، وكانت تقنية ASP ناضجة للغاية. منذ أن أطلقت Microsoft ASP.NET ، فقد توقفت تدريجياً عن تحديث إصدار ASP. ولكن نظرًا لوجود العديد من الأشخاص الذين ما زالوا معتادين على استخدام ASP لتطوير مواقع الويب ، سأستخدم مثالًا بسيطًا لتوضيح كيفية استخدام ذاكرة التخزين المؤقت في ASP.
ببساطة ، فإن المبدأ الأساسي لاستخدام ذاكرة التخزين المؤقت هو تخزين البيانات التي تمس الحاجة إليها وبيانات باهظة الثمن في الذاكرة لفترة معينة من الوقت بحيث يمكن الوصول إلى هذه البيانات مباشرة على مستوى العالم. على سبيل المثال ، يجب الاستعلام عن بعض البيانات من جداول متعددة في قاعدة البيانات ، وكل صفحة تقريبًا تستدعي هذه البيانات.
أفضل تطبيق في هذه الحالة هو تخزين هذا الجزء من البيانات. يتمثل تطبيق بسيط في ASP في تغليف نموذج التعبير النهائي لهذه البيانات (مثل دفق HTML) في سلسلة وتخزينه في تطبيق كائن ASP المدمج (تناقش هذه المقالة بشكل أساسي ذاكرة التخزين المؤقت الديناميكية ، وسيتم حذف تطبيقات ASP البسيطة). ميزة ذلك هي أنه يمكن استدعاء HTML هذا على مستوى العالم عبر الموقع ، والتطبيق في الذاكرة ، لذلك ليست هناك حاجة للاستعلام عن قاعدة البيانات بعد الآن ، مما يزيد من وقت الاستجابة ويحفظ تحميل الخادم. بالطبع ، هذا على حساب الذاكرة ، وهو مثال نموذجي لتبادل المساحة للوقت.
على الرغم من وجود العديد من الفوائد لاستخدام هذه الطريقة ، عند مواجهة مصادر البيانات المتكررة (قواعد البيانات) ، قد لا تكون هذه الطريقة قابلة للتطبيق ، لأن كائنات تطبيق ASP لها عيب ، وهو أنه لا يمكن تغييرها تلقائيًا مع تغييرات مصدر البيانات ، أو التحكم في فاصل التحديث. لذلك يحتاج المطورون إلى البرمجة لتنفيذ ذاكرة التخزين المؤقت الديناميكية. بالطبع ، عند البرمجة ، يمكنك تحديث التطبيق مرة واحدة عندما يتم تغيير جميع العمليات في مصدر البيانات (قاعدة البيانات). هذا يبقي مصدر البيانات (قاعدة البيانات) متسقة. سيتطلب ذلك المزيد من المشكلات التي يجب مراعاتها في البرمجة وسوف تفوت التفاصيل بسهولة. لذلك لا أوصي بهذه الطريقة باستثناء مواقف محددة.
أعتقد أن أفضل طريقة في ASP هي استخدام البرمجة لتحديث ذاكرة التخزين المؤقت بانتظام ، مما يعني تعيين وقت انتهاء الصلاحية للتخزين في التطبيق. بالطبع ، لا يحتوي كائن التطبيق على خاصية Expirtime في ASP. هذا يجب تنفيذه باستخدام البرامج.
| ما يلي هو المحتوى المقتبس: default.asp <٪@language = vbscript ٪> <٪ خيار صريح ٪> <٪ استجابة. buffer = true ٪> <!-#تضمين ملف = conn.asp-> <!-#include file = getCache.asp-> <html> <head> <title> ASP Cache Demo </title> <meta http-equiv = content-type content = text/html ؛ charset = gb2312> </head> <body> <h4> تحديث ذاكرة التخزين المؤقت كل 10 ثوان: </h4> <٪ استجابة Gethtmlstream استجابة htmlstream ٪> </body> </html> |
| ما يلي هو المحتوى المقتبس: getCache.asp <٪ const cache_default_interval = 30 & apos ؛ تحديث ذاكرة التخزين المؤقت كل 30 ثانية خافت HTMLSTEAM داميرز isexpires = cacheexpires وظيفة cacheexpires قاتمة strlastupdate النتيجة الخافتة strlastupdate = التطبيق (LastUpdate) if (strlastupdate =) أو (cache_default_interval <datediff (s ، strlastupdate ، الآن)) ثم) ثم النتيجة = صواب setlastupdateTime آخر نتيجة = خطأ إنهاء إذا cacheexpires = النتيجة وظيفة نهاية setlastupdateTime الفرعي application.lock التطبيق (LastUpdate) = CSTR (الآن ()) application.unlock نهاية الفرعية sub gethtmlstream إذا isexpires ثم updateHtmlStream إنهاء إذا htmlstream = application (cache_htmlstream) نهاية الفرعية |
| ما يلي هو المحتوى المقتبس: Sub UpdateHtmlStream قاتمة د d = fetchhtmlstream application.lock التطبيق (cache_htmlstream) = د application.unlock نهاية الفرعية وظيفة fetchhtmlstream Dim RS ، Strsql ، Strhtml تعيين rs = createObject (adodb.recordset) strsql = SELECT CASTERSIONID ، فئة من الفئات Rs.Open Strsql ، Strconn ، engenforwardonly ، adlockreadonly strhtml = strhtml & <select name = slt_search> بينما (ليس rs.eof) strhtml = strhtml & <point> strhtml = strhtml & rs.fields (فئة) strhtml = strhtml & </point> rs.movenext ويند strhtml = strhtml & </select> Rs.close تعيين روبية = لا شيء fetchhtmlstream = strhtml وظيفة نهاية ٪> |
| ما يلي هو المحتوى المقتبس: conn.asp <!-metadata name = Microsoft ActiveX Data Objects 2.5 type = typelib uuid = {00000205-0000-0010-8000-00aa006d2ea4}-> <٪ قاتمة سترين strconn = provider = sqloledb.1 ؛ أمان متكامل = sspi ؛ استمرار معلومات الأمان = خطأ ؛ الكتالوج الأولي = NorthWind ٪> |
مشاركة: كيفية استخدام ASP لعرض صور GIF لقاعدة بيانات Access اكتب: 1: اقرأ ملف صورة GIF في الذاكرة (متغير strtemp). 2: اكتب إلى قاعدة البيانات. ما يلي هو المحتوى المقتبس: Dim BintMP () مثل Byte Dim Conn as Adodb.conn