cache built posts' HTML with memcached
This commit is contained in:
parent
fcab256146
commit
e60a6a1a58
@ -56,6 +56,8 @@
|
|||||||
// Experimental: cache entire thread HTML (for mods, since we already cache it with static HTML anyway)
|
// Experimental: cache entire thread HTML (for mods, since we already cache it with static HTML anyway)
|
||||||
// Increases load times for mods but might take up a bit of memory
|
// Increases load times for mods but might take up a bit of memory
|
||||||
$config['memcached']['cache_threads'] = false;
|
$config['memcached']['cache_threads'] = false;
|
||||||
|
// Timeout for cached objects such as posts and HTML
|
||||||
|
$config['memcached']['timeout'] = 86400; // one day
|
||||||
|
|
||||||
// The name of the session cookie (PHP's $_SESSION)
|
// The name of the session cookie (PHP's $_SESSION)
|
||||||
$config['cookies']['session']= 'imgboard';
|
$config['cookies']['session']= 'imgboard';
|
||||||
|
@ -260,7 +260,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function build($index=false) {
|
public function build($index=false) {
|
||||||
global $board, $config;
|
global $board, $config, $memcached;
|
||||||
|
|
||||||
|
if(!$this->mod && $config['memcached']['enabled']) {
|
||||||
|
if($built = $memcached->get('post_' . ($index ? 'index_' : '') . $board['uri'] . '_' . $this->id))
|
||||||
|
return $built;
|
||||||
|
}
|
||||||
|
|
||||||
$built = '<div class="post reply" id="reply_' . $this->id . '">' .
|
$built = '<div class="post reply" id="reply_' . $this->id . '">' .
|
||||||
'<p class="intro"' . (!$index?' id="' . $this->id . '"':'') . '>' .
|
'<p class="intro"' . (!$index?' id="' . $this->id . '"':'') . '>' .
|
||||||
@ -347,6 +352,10 @@
|
|||||||
// Body
|
// Body
|
||||||
$built .= '<p class="body">' . ($index ? truncate($this->body, $this->link()) : $this->body) . '</p></div><br class="clear"/>';
|
$built .= '<p class="body">' . ($index ? truncate($this->body, $this->link()) : $this->body) . '</p></div><br class="clear"/>';
|
||||||
|
|
||||||
|
if(!$this->mod && $config['memcached']['enabled']) {
|
||||||
|
$memcached->set('post_' . ($index ? 'index_' : '') . $board['uri'] . '_' . $this->id, $built, time() + $config['memcached']['timeout']);
|
||||||
|
}
|
||||||
|
|
||||||
return $built;
|
return $built;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -1258,7 +1258,7 @@
|
|||||||
));
|
));
|
||||||
|
|
||||||
if($config['memcached']['cache_threads'] && $config['memcached']['enabled']) {
|
if($config['memcached']['cache_threads'] && $config['memcached']['enabled']) {
|
||||||
$memcached->set('thread_' . $board['uri'] . '_' . $id, $body, time() + 86400);
|
$memcached->set('thread_' . $board['uri'] . '_' . $id, $body, time() + $config['memcached']['timeout']);
|
||||||
}
|
}
|
||||||
|
|
||||||
if($return)
|
if($return)
|
||||||
|
Loading…
Reference in New Issue
Block a user