diff options
| author | Scott Ostler <scottbot9000@gmail.com> | 2010-08-30 17:57:19 -0400 |
|---|---|---|
| committer | Scott Ostler <scottbot9000@gmail.com> | 2010-08-30 17:57:19 -0400 |
| commit | b492c944c67f7c1245926fe7f1096c0589f642ce (patch) | |
| tree | 27994505b33f757d17624f35e9e289da087c97b6 /src/site.clj | |
| parent | 4f0109cba3f656fa93643295e4eb8c4f47f43271 (diff) | |
Memoize directory contents with expiry of ten minutes
Diffstat (limited to 'src/site.clj')
| -rw-r--r-- | src/site.clj | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/site.clj b/src/site.clj index 5253f88..297f4a5 100644 --- a/src/site.clj +++ b/src/site.clj @@ -616,10 +616,14 @@ WHERE u.user_id = ANY(?) (map process-directory-entry (add-recent-posts (get-user-ranking offset *per-directory-page*)))) + +(def directory-cache-ttl (minutes 10)) +(def memoized-get-directory-info + (ttl-memoize get-directory-info directory-cache-ttl)) (defn directory [session offset] (let [st (fetch-template "directory" session) - users (get-directory-info offset)] + users (memoized-get-directory-info offset)] (.setAttribute st "users" users) (cond (= offset 0) (.setAttribute st "prev" false) (= offset 1) (.setAttribute st "prev" "") |
