Perkembangan dua website terbaru ini memberi saya banyak ide baru! Saya telah membaca banyak kode bagus, tetapi saya belum pernah menemukan pola yang cocok untuk saya! Berdasarkan desain cache, sepertinya saya telah menemukan cara berpikir yang lebih nyaman. Faktanya, halaman statis di sini tidak statis dalam arti sebenarnya, tetapi halaman tersebut dapat mencapai efisiensi penguraian halaman statis. Halaman tersebut belum diuji oleh proyek dan dibagikan di sini.
Copy kode kodenya sebagai berikut:
<%
Konstanta DEVJS_INDEX=index.html
Konstanta INDEX_DEFAULT_INTERVAL=300
Redupkan Pembaruan Terakhir
'Gunakan Aplikasi untuk menyimpan waktu pembaruan terakhir, dan membuat penilaian pada halaman, menghasilkan halaman setiap 300 detik (5 menit)
sLastUpdate=Aplikasi(INDEX_LAST_Update)
Jika sLastUpdate= atau DateDiff(s,sLastUpdate,now())>INDEX_DEFAULT_INTERVAL Lalu
'Panggil MakeIndex() untuk membuat halaman dan mengubah waktu pembaruan terakhir secara bersamaan
MakeIndex()
sPembaruan Terakhir=Sekarang()
Aplikasi(INDEX_LAST_Update)=sLastUpdate
Response.Write melebihi waktu default, diperbarui pada & sLastUpdate
Kalau tidak
Response.Write membaca halaman statis, diperbarui dengan & sLastUpdate
Akhiri Jika
Respons.Tulis LoadTextFile(Server.MapPath(DEVJS_INDEX),GB2312)
Fungsi MakeIndex()
sKonten=<jam> & Sekarang()
Panggil SaveTextFile(Server.MapPath(DEVJS_INDEX),GB2312,sContent)
Fungsi Akhir
%>
Jika sudah habis masa berlakunya, perbarui halamannya. Jika belum habis masa berlakunya, panggil halaman statis secara langsung. Dua fungsi juga digunakan di sini. Harap dicatat bahwa SaveTextFile() ditulis dalam metode penimpaan.
Ini adalah kalimat oStream.SaveToFile sFilePath,2
Copy kode kodenya sebagai berikut:
<%
Fungsi LoadTextFile(sFilePath,sCharset)
Redupkan oStream
Setel oStream=Server.CreateObject(ADODB.Stream)
oStream.Jenis=2
oStream.Mode=3
oStream.Buka
oStream.Charset=sCharset
oStream.Posisi=oStream.Ukuran
oStream.LoadFromFile sFilePath
LoadTextFile=oStream.ReadText
oStream.Tutup
Setel oStream=Tidak Ada
Fungsi Akhir
Fungsi SaveTextFile(sFilePath,sCharset,outString)
SimpanFile=salah
Redupkan oStream
Setel oStream = Server.CreateObject(ADODB.Stream)
oStream.Jenis=2
oStream.Mode=3
oStream.Buka
oStream.Charset=sCharset
oStream.WriteText = outString
oStream.SaveToFile sFilePath,2
oStream.Tutup
Setel oStream = Tidak Ada
SaveTextFile=benar
Fungsi Akhir
%>
Ini tidak terlalu merepotkan dibandingkan caching dan jauh lebih mudah! Faktanya, Anda bisa melakukan banyak hal di MakeIndex(), seperti membaca file template dan menggantinya.