From a04cdd7703d8214b34ba9a8ad7ed7bac2b052e0a Mon Sep 17 00:00:00 2001 From: Markus Koch Date: Fri, 19 Aug 2016 20:31:08 +0200 Subject: [PATCH] Changed caching to APCU (fixed #1) --- index.php | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/index.php b/index.php index 98282bb..1f2f61b 100644 --- a/index.php +++ b/index.php @@ -37,12 +37,12 @@ else $selectedServer = "konachan"; - $tag = $_GET['tag']; - $santag = checkTag($tag); - $tempfile = "/tmp/konasub/$selectedServer/$santag.xml"; - $selfUrl = "https://shimatta.de/konasub/?tag=$tag"; + $tag = $_GET['tag']; + $santag = checkTag($tag); + $cacheName = "konasub_$selectedServer_$santag"; + $selfUrl = "https://shimatta.de/konasub/?tag=$tag"; + dbg ("Tag: \"$tag\" ($santag, $tempfile)\n"); - mkdir ("/tmp/konasub/$selectedServer"); // Configure server urls and meta data $svr['konachan']['imgBase'] = "http://konachan.com/post/show/"; @@ -52,20 +52,14 @@ $svr['konachan']['link'] = "http://konachan.com/post?tags=" . urlencode($tag); $svr['konachan']['re'] = "//"; - dbg ("File mtime delta: " . (time() - filemtime($tempfile)) . " (of $refreshTime)"); - if ((time() - filemtime($tempfile)) > $refreshTime) { - $cacheFile = fopen($tempfile, "w"); - dbg (" -> Retrieving file..."); + if ($data = apcu_fetch($cacheName)) { + dbg (" -> Loading cached data..."); + } + else { + dbg (" -> Retrieving latest data from server..."); $data = file_get_contents($svr[$selectedServer]['url']); - fwrite($cacheFile, $data); - flush(); + apcu_store($cacheName, $data, $refreshTime); } - else { - $cacheFile = fopen($tempfile, "r"); - dbg (" -> Loading cached file..."); - $data = fread($cacheFile,filesize($tempfile)); - } - fclose($cacheFile); dbg("BEGIN XML:\n");