ASP เป็นสภาพแวดล้อมที่โปรแกรมสคริปต์ที่ฝังอยู่ในหน้า HTML สามารถทำงานได้ ไม่ใช่เรื่องง่ายที่จะทำให้โปรแกรม ASP ทำงานได้อย่างดีที่สุด ดังนั้นเราจะเพิ่มประสิทธิภาพประสิทธิภาพของแอปพลิเคชัน ASP ได้อย่างไร ตอนนี้มาดูการเพิ่มประสิทธิภาพประสิทธิภาพของแอปพลิเคชัน ASP
ทุกวันนี้แบนด์วิดท์เครือข่ายในประเทศจีนมี จำกัด มากและเครือข่ายก็แออัดมาก วิธีทำให้แอปพลิเคชัน ASP ของคุณทำงานได้อย่างรวดเร็วได้กลายเป็นความฝันของโปรแกรมเมอร์ ASP ทุกคน จากนั้นติดตามฉันเพื่อเร่งโปรแกรม ASP ของคุณ!
1. วิธีการเพิ่มประสิทธิภาพสำหรับฐานข้อมูลการทำงาน
วัตถุประสงค์หลักของการใช้ ASP ของเราคือการใช้งานฐานข้อมูล วิธีการดำเนินการเหล่านี้ให้เสร็จเร็วขึ้น?
1. อย่าใช้ "เลือก *... " โดยพลการ
โปรดลองรับฟิลด์ที่คุณต้องการ ตัวอย่างเช่นมี 10 ฟิลด์ในตาราง แต่คุณจะใช้หนึ่งในนั้น (ชื่อ) และใช้ "SelectNameFromyourTable" แทน "Select*fromyourtable" คุณอาจพูดว่านี่คือวิธีที่ฉันทำ แต่ถ้ามี 50 ฟิลด์ในตารางและคุณต้องใช้ 23 ฟิลด์คุณจะทำอะไร? เพื่อที่จะบันทึกปัญหาของการพิมพ์และค้นหาชื่อฟิลด์ที่เกี่ยวข้องคุณอาจไม่ได้ใช้ "SelectName, Sex, Age ... FromYourtable"!
ที่จริงแล้วการพยายามรับฟิลด์ที่คุณต้องใช้คำสั่ง SELECT จะเร็วขึ้นอย่างน้อย 5% สำหรับโปรแกรม ASP ของคุณ
2. ใช้ขั้นตอนการจัดเก็บระบบให้มากที่สุด (สำหรับ MSSQLServer)
บางครั้งการดำเนินการอ่านอาจเสร็จสมบูรณ์โดยใช้คำสั่ง SQL และขั้นตอนที่เก็บไว้ แต่การใช้ขั้นตอนที่เก็บไว้จะเพิ่มความเร็วในการดำเนินการอ่านอย่างมากซึ่งจะเพิ่มความเร็วของโปรแกรม ASP ของคุณ
3. ให้ความสนใจกับวิธีการใช้เคอร์เซอร์
หากคุณเพิ่งอ่านตารางโปรดใช้เคอร์เซอร์แบบล่วงหน้าอย่างเดียวเท่านั้นเนื่องจากเคอร์เซอร์นี้เร็วที่สุดในการอ่านฐานข้อมูลโดยเฉพาะอย่างยิ่งเมื่อคุณอ่านข้อมูลจำนวนมาก
4. อย่าเปิดชุดบันทึกอิสระที่ไร้ประโยชน์
บางทีคุณอาจจะหัวเราะฉันจะเปิดชุดบันทึกที่ไร้ประโยชน์หรือไม่? ใช่แน่นอนคุณจะยกตัวอย่างเช่นเมื่อสร้างชุดบันทึกต้นไม้คุณต้องเปิดชุดบันทึกหลักและชุดบันทึกเด็กที่เกี่ยวข้องและแม้แต่ชุดบันทึกที่ยิ่งใหญ่ ในความเป็นจริงคุณสามารถใช้เทคโนโลยี Datashaping ที่จัดทำโดย ADO เพื่อแทนที่การเปิดชุดระเบียนอิสระหลายชุดซึ่งจะเพิ่มความเร็วในการทำงานของโปรแกรม (สำหรับการใช้งาน datashaping โปรดดูความช่วยเหลือ ADO)
5. ตรวจสอบให้แน่ใจว่าได้ปิดวัตถุชุดบันทึกเปิดและวัตถุการเชื่อมต่อ
เพื่อนบางคนมักสงสัยว่าทำไมโปรแกรม ASP ของพวกเขาทำงานเร็วมากในตอนแรก แต่มันช้าลงและช้าลงหลังจากวิ่งอีกสองสามครั้ง? แม้แต่เซิร์ฟเวอร์ก็ล่ม สิ่งนี้เกิดขึ้นอาจเป็นไปได้ว่าคุณได้เปิดวัตถุระเบียนและวัตถุเชื่อมต่อมากเกินไปและในที่สุดก็ไม่ได้ปิด ใช้วิธีการต่อไปนี้เพื่อปิด:
YourRecordset.close
SetYourRecordSet = ไม่มีอะไร
SetYourConnection = ไม่มีอะไร
6. การเปรียบเทียบวิธีการรับข้อมูลฐานข้อมูล
คุณจะได้รับข้อมูลจากชุดระเบียนได้อย่างไร? ใช้ ourrecordset (หมายเลขฟิลด์) หรือ
YourRecordSet ("ชื่อฟิลด์")? จริงๆแล้วมีวิธีอื่นในการใช้งาน มาเปรียบเทียบกันเลย (100 ระเบียน):
RS ("ชื่อฟิลด์")
RS ("ชื่อฟิลด์") ค่า
RS ("หมายเลขฟิลด์")
ตั้งวิธี
เวลาตอบสนองฐานข้อมูล
2.967 วินาที
2.936 วินาที
1.650 วินาที
0.586 วินาที
2.824 วินาที
2.914 วินาที
1.611 วินาที
0.602 วินาที
2.893 วินาที
2.943 วินาที
1.613 วินาที
0.594 วินาที
เวลาตอบสนองเฉลี่ย
2.895 วินาที
2.931 วินาที
1.625 วินาที
0.594 วินาที
ตอนนี้ฉันรู้ ทุกคนสามารถเข้าใจวิธีการสามวิธีแรก ฉันจะพูดถึงวิธีการใช้วิธีที่สี่ (วิธีการตั้งค่า):
รหัสโปรแกรม
dimstrsql
strsql = "selectname, sex, agefromyourtable"
หรี่แสง
setRs = server.createObject ("adodb.recordset"))
Rs.Openstsql, Conn, 1,1
ConstfieldSorder = 2
dimobjorder
setObjorder = rs (fieldsorder)
Response.writeObjorder 'เมธอด
2. วิธีการเพิ่มประสิทธิภาพสำหรับการใช้วัตถุ ASP ในตัว
1. ลดการใช้วัตถุเซสชันและวัตถุแอปพลิเคชัน
แม้ว่าวัตถุทั้งสองนี้ที่ให้ไว้ใน ASP นั้นเป็นประโยชน์อย่างยิ่งต่อการเขียนโปรแกรมของเรา แต่วัตถุทั้งสองนี้ควรใช้อย่างสมเหตุสมผลและไม่ถูกทารุณกรรม เนื่องจากการใช้วัตถุทั้งสองนี้ในปริมาณมากจะเพิ่มภาระอย่างมากบนเซิร์ฟเวอร์และใช้ทรัพยากรระบบอย่างจริงจัง นอกจากนี้ยังจะทำให้โปรแกรม ASP ของคุณทำงานช้าเหมือนวัวเก่า
2. ปิดวัตถุที่ไม่ได้ใช้ในเวลาที่เหมาะสมอีกต่อไป (โดยเฉพาะเซสชันและแอปพลิเคชัน)
ความล้มเหลวในการปิดวัตถุที่คุณใช้จะทำให้ระบบทำงานช้า บางทีคุณอาจจะถาม
เซสชันและแอปพลิเคชันไม่สามารถหายไปได้โดยอัตโนมัติ? ถูกต้องอย่างสมบูรณ์ ระบบเริ่มต้นที่เหตุการณ์ Session_Onend และ Application_Onend จะทริกเกอร์โดยอัตโนมัติหากไม่มีการดำเนินการภายใน 30 นาที อย่างไรก็ตามผู้ใช้จำนวนมากอ่านเซิร์ฟเวอร์บ่อยครั้งและเซิร์ฟเวอร์จะรักษาผู้ที่ไร้ประโยชน์ไว้เป็นเวลานาน
เซสชันวัตถุแอปพลิเคชัน หากเซสชันและแอปพลิเคชันที่ไม่ได้ปิดในเวลาผลที่ตามมาจะไม่สามารถจินตนาการได้
วิธีการปิดคือ:
ตั้งค่าวัตถุ = ไม่มีอะไร
3. ใช้รวมไฟล์อย่างสมเหตุสมผล
สิ่งที่เรากำลังพูดถึงที่นี่ใช้ ไฟล์ที่รวมอยู่ในแบบฟอร์มและเนื้อหาไฟล์เป็นโปรแกรม ASP ทั้งหมดนั่นคือคุณใส่ฟังก์ชั่นสาธารณะบางอย่างลงในไฟล์และรวมไว้ในหน้าอื่น ๆ ที่อาจเรียกฟังก์ชั่น
ขอแนะนำให้คุณไม่ใส่ฟังก์ชั่นทั้งหมดในไฟล์รวมเพราะเมื่อคุณรวมไฟล์นี้ไว้ในหน้าอื่น ๆ ฝั่งเซิร์ฟเวอร์จะต้องคอมไพล์ไว้ มีความเป็นไปได้สูงที่จะมีฟังก์ชั่นหลายร้อยรายการในไฟล์รวมและคุณเพียงแค่ต้องการใช้หนึ่งในนั้นซึ่งไม่คุ้มค่ากับความพยายาม ดังนั้นแยกไฟล์รวมของคุณให้มากที่สุดเท่าที่จะทำได้ในไฟล์ขนาดเล็กหลายไฟล์ นอกจากนี้ยังสามารถปรับปรุงความเร็วในการทำงานของโปรแกรม
4. วิธีการเพิ่มประสิทธิภาพสำหรับภาษา vbscript
1. พยายามใช้ฟังก์ชั่นระบบแทนฟังก์ชั่นที่คุณเขียน
ตัวอย่างเช่นหากคุณต้องการแยกสตริงปกติ ("SSS, DDD, FFFF, GGG") คุณไม่จำเป็นต้องใช้ mid (), Instr และฟังก์ชั่นอื่น ๆ เพื่อวิเคราะห์ ในความเป็นจริง VBScript ให้ฟังก์ชันแยก () ซึ่งช่วยประหยัดเวลาและปรับปรุงความเร็ว ทำไมไม่ทำ?
2. ลดการใช้อาร์เรย์แบบไดนามิก
3. พัฒนานิสัยของการประกาศตัวแปรล่วงหน้าให้มากที่สุด
อย่าประมาทบทความนี้ การประกาศตัวแปรล่วงหน้าจะเพิ่มความเร็วในการดำเนินการของการตีความของโปรแกรม ในทางตรงกันข้ามไม่เคยประกาศตัวแปรไม่เพียง แต่อ่านยาก แต่ประสิทธิภาพการดำเนินการของโปรแกรมทั้งหมดบนเซิร์ฟเวอร์จะลดลงอย่างมาก
5. วิธีการเพิ่มประสิทธิภาพอื่น ๆ
1. ลองใช้ <%%> เพื่อฝังลงในแท็ก HTML ในไฟล์ ASP แทนที่จะใช้ Response.write ตัวอย่างเช่น:
รหัสโปรแกรม
<%ifok = 1 จากนั้น%>
สวัสดี! โลก!
<%endif%>
มันเป็นมากกว่า:
-
Response.write "
-
Response.write "
-
ifok = 1 จากนั้น
Response.write "สวัสดี! World!"
endif
Response.write ""
Response.write ""
-
ความเร็วในการทำงานควรเร็วโดยเฉพาะอย่างยิ่งเมื่อไฟล์ ASP ของคุณค่อนข้างใหญ่ เนื่องจากวิธีที่สองเพิ่มเวลาการตีความฝั่งเซิร์ฟเวอร์จึงช่วยลดประสิทธิภาพของโปรแกรม ASP
2. พยายามดำเนินการให้เสร็จสมบูรณ์ด้วยไฟล์ ASP
หลายคนชอบที่จะดำเนินการหลายอย่างเช่นการเพิ่มการลบการค้นหา ฯลฯ ในโปรแกรม ASP ในเวลาเดียวกัน อย่าคิดว่าสิ่งนี้มีประสิทธิภาพในการใช้ไฟล์ ในทางตรงกันข้ามผลลัพธ์ของสิ่งนี้คือการชะลอความเร็วในการทำงานของแอปพลิเคชันมาก
เพิ่มลบค้นหา ฯลฯ ควรแบ่งออกเป็นไฟล์ ASP อิสระเดียวเพื่อให้เสร็จสมบูรณ์ สิ่งนี้จะป้องกันไม่ให้ไฟล์มีขนาดใหญ่เกินไปลดภาระของการตีความและการดำเนินการด้านเซิร์ฟเวอร์และอ่านโปรแกรมได้อย่างรวดเร็ว
การเพิ่มประสิทธิภาพประสิทธิภาพของแอปพลิเคชัน ASP ได้รับการแนะนำ หลังจากการเพิ่มประสิทธิภาพที่ครอบคลุมของเราแอปพลิเคชัน ASP ของคุณทำงานได้อย่างเสถียรและเร็วขึ้นหรือไม่?