استخدم Response.Buffer=True لتسريع البرنامج. يجب أن يكون محتوى Response.Flush() 256 بايت على الأقل.
لأني = 1 إلى 256
yongfa365=yongfa365&<!--الغرض الرئيسي هنا هو السماح للواجهة الأمامية بإنشاء 256 حرفًا أولاً، بحيث يمكن إخراجها في الوقت الفعلي-->
إذا len(yongfa365)>=256 ثم قم بالخروج لـ
التالي
ماديباسيك()
MadeModel()
MadeIndexBlogItem()
استجابة.اكتب 1/6 يتم إنشاء جميع القوالب<br>&yongfa365
الاستجابة. فلوش ()
MadeIndex (التقويم)
استجابة.اكتمل إنشاء فهرس تاريخ الكتابة 2/6<br>
الاستجابة. فلوش ()
MadeIndex(الفئة)
استجابة.اكتمل إنشاء فهرس التصنيف 3/6<br>
الاستجابة. فلوش ()
MadeIndex(مدونة)
استجابة.اكتمل كتابة 4/6 إجمالي إنشاء الفهرس<br>
الاستجابة. فلوش ()
مادي آر إس إس ()
الاستجابة.اكتمل إنشاء 5/6 RSS<br>
الاستجابة. فلوش ()
العنصر المصنوع (الكل)
Response.Write 6/6 تم إنشاء جميع المقالات <font color=red>حسنًا، واكتملت أخيرًا</red>
الاستجابة. فلوش ()
ما ورد أعلاه عبارة عن جزء من التعليمات البرمجية يقوم بإنشاء ملف ثابت في الخلفية ديناميكيًا، والغرض من ذلك هو السماح لك برؤية مكان تنفيذ البرنامج. قبل أن لا أضيف Response.Flush()، نظرت للتو إلى شريط التقدم في شريط الحالة في IE، شعرت بالإحباط الشديد عند إضافة الاستجابة بعد .Flush()، وأشعر أنني بحالة جيدة للغاية.
لا أعرف مقدار ما يعرفه الجميع عن Buffer، كثير من الناس غامضون بشأن هذا المفهوم، خاصة في ASP. نادرًا ما يستخدم العديد من المبتدئين هذا البيان عند كتابة برامج asp. دعني أتحدث عن الغرض من Buffer ودوره في برامج asp.
1. المخزن المؤقت
يُترجم Buffer حرفيًا من اللغة الإنجليزية إلى منطقة عازلة، وهنا نسميها buffer لأنها ليست مجرد اسم، ولكنها فعل أيضًا.
المخزن المؤقت هو مكان يتم فيه تخزين سلسلة من البيانات، ويمكن إخراج البيانات التي حصل عليها العميل مباشرة من نتيجة تنفيذ البرنامج أو إخراجها من المخزن المؤقت. ولكن هناك فرق في السرعة بين هاتين الطريقتين: في الويب، عندما لا يتم طلب برنامج ASP عدة مرات، لا يوجد فرق بين الاثنين، على الأقل لا يمكننا الشعور به. ولكن عندما يطلب العديد من الأشخاص برنامج asp، تختلف السرعة. إذا لم يكن هناك مخزن مؤقت، فإن النتيجة التي حصل عليها كل عميل يطلب برنامج ASP هي النتيجة التي تم الحصول عليها عن طريق تنفيذ برنامج ASP مرة واحدة. إذا تم تخزين برنامج ASP مؤقتًا، فإن النتيجة التي حصل عليها كل عميل هي النتيجة المخزنة مؤقتًا نتيجة المنطقة ليست نتيجة تنفيذ البرنامج مرة واحدة. على سبيل المثال، يصل 1000 مستخدم إلى صفحة ASP في نفس الوقت. إذا لم يتم تخزين برنامج ASP مؤقتًا، فسيتم تنفيذ البرنامج ألف مرة، مما سيؤدي إلى زيادة التحميل على الخادم ويجعل العميل يفتح الصفحة بشكل أبطأ إذا تم تخزين برنامج ASP مؤقتًا، فستكون النتيجة مختلفة، حيث يحصل كل عميل على البيانات مباشرة من المخزن المؤقت، ولن يزيد الخادم من عدد عمليات تنفيذ البرنامج بسبب زيادة الوصول، وبالتالي ستكون السرعة التي يفتح بها العميل الصفحة. أبطأ مما كانت عليه في الحالة السابقة. هذه هي فائدة المخزن المؤقت.
2. كيفية المخزن المؤقت لبرنامج آسيا والمحيط الهادئ
هذه المشكلة في الواقع بسيطة جدًا، فقط أضف: في السطر الأول من برنامج asp:
<% Response.Buffer = صحيح %>
هذا كل شيء.
معنى هذه الجملة هو الإشارة إلى ما إذا كانت صفحة الإخراج مخزنة مؤقتًا. عندما تكون قيمة السمة صحيحة، لن يرسل الخادم أي معلومات إلى العميل حتى يتم تنفيذ كافة البرامج أو مواجهتها
<% Response.Flush %> أو <% Response.End %>
بيان للافراج عن المعلومات المخزن المؤقت.
يمكن أن يؤدي استخدام Response.Buffer=True وResponse.Flush إلى زيادة سرعة التصفح. إذا كانت الصفحة تحتوي على Response.Buffer=False، فسيكون هناك 30 عملية نقل بيانات، وإذا قام 100 شخص بتصفح هذه الصفحة، فسيكون هناك 3000 يؤثر النقل ذهابًا وإيابًا بشكل خطير على الكفاءة؛ إذا قمت بتعيين Response.Buffer=True في البداية، وتقسيم الصفحة بأكملها إلى عدة مجموعات، واستخدام Response.Flush في الأماكن المناسبة، فيمكن تحسين تجربة الزائر بشكل كبير.
3. لماذا أشعر أحيانًا بعدم الفائدة
على سبيل المثال:
<%
"تحذير: لا تقم بتشغيل هذا إذا لم يكن لديك ما تفعله
لأني = 1 إلى 10000
Response.اكتب <b><center><font color=#FF0000>أنا www.yongfa365.com&i&</font></center></b>
الاستجابة. فلوش
استجابة. واضح
التالي
%>
سوف يستغرق الأمر وقتًا طويلاً للخروج، وستخرج مجموعة منهم، وبعد ذلك سيخرجون واحدًا تلو الآخر.
سبب:
الاستجابة. فلوش (). سيقوم أولاً بإرسال البيانات المجمعة في المخزن المؤقت إلى العميل
لكن
يجب أن يكون محتوى التدفق 256 بايت على الأقل. أي أنه فقط إذا قام التجميع بإنشاء ما لا يقل عن 256 بايت من البيانات، فيمكن إرسال المعلومات إلى العميل وعرضها بعد تنفيذ Response.Flush().
طريقة واضحة
يقوم الأسلوب Clear بحذف كافة مخرجات HTML الموجودة في المخزن المؤقت. تقوم الطريقة Clear بحذف نص الاستجابة فقط وليس رؤوس الاستجابة
القواعد
الاستجابة.واضحة
تعليق
سيؤدي استدعاء Response.Clear إلى مسح إخراج البيانات في الجزء السابق من هذه الصفحة. وفي الوقت نفسه، إذا قام البرنامج بتعيين Response.ContentEncoding، فسيقوم Response.Clear أيضًا بتعيين طريقة التشفير على الإرسال المباشر.
ينطبق على كائن الاستجابة
4. ملخص
على الرغم من أن سمة الاستجابة Buffer يمكنها تحسين سرعة عرض الصفحة، إلا أن ذلك يعتمد على الموقف. إذا كنت تنشئ صفحة رئيسية شخصية عادية، وعدد الزيارات ليس مرتفعًا جدًا، ولا توجد برامج تنفيذ معقدة، فليس من المهم جدًا استخدام هذه السمة، لأن تخزين البيانات مؤقتًا سيستغرق بعض الوقت، ولكن لا يمكننا أن نشعر بذلك؛ ولكن إذا كنت تنشئ منتدى كبيرًا أو تعرض منتجًا أو موقعًا تجاريًا آخر، وكانت حركة المرور عالية جدًا، فإنني أوصي بإضافة الجملة <% Response.Buffer = True %> إلى الجملة الأولى. خط البرنامج، لأن هذا يتيح للعملاء الحصول على المزيد من البيانات في وقت فعال.
مُرفَق:
بشكل عام، يوجد هذا في رأس الملف في رمز التحقق.
Response.Buffer=خطأ
الاستجابة.انتهاء الصلاحية=0
Response.ExpiresAbsolute = Now() - 1
Response.AddHeader Pragma، لا يوجد ذاكرة تخزين مؤقت
Response.AddHeader التحكم في ذاكرة التخزين المؤقت، خاص
Response.CacheControl = عدم وجود ذاكرة تخزين مؤقت
فقط لمنع تخزينها مؤقتًا.