Pada fungsi generate tabel, simpan hasilnya ke dalam file di disk:
/cache/groups/1.txt
/cache/groups/2.txt
Anda tidak perlu menjalankan pekerjaan batch mingguan untuk itu, saat memanggil fungsi untuk mendapatkan data, periksa apakah cache sudah kedaluwarsa (atau tidak ada). Jika demikian, buat dan tembolok hasilnya. Jika tidak, kembalikan saja file yang di-cache.
function getGroupTable($groupId) {
if (cacheIsStale($groupId)) {
generateCache($groupId);
}
return file_get_contents($cacheFile);
}
cacheIsStale()
fungsi hanya bisa melihat stempel waktu file
untuk menguji kesegarannya.