撤销 文件缓存暂时取消,下一个Release再发布
This commit is contained in:
parent
ee005b9697
commit
03fe5cc9e2
|
@ -1,11 +1,11 @@
|
||||||
+======================================+
|
+======================================+
|
||||||
Discuz! X3.3 Release 20170210
|
Discuz! X3.3 Release 20170210
|
||||||
+======================================+
|
+======================================+
|
||||||
兼容 PHP7
|
兼容 PHP7
|
||||||
优化 SQL查询
|
优化 SQL查询
|
||||||
修复 安全问题
|
修复 安全问题
|
||||||
优化 优化缓存机制改为扩展形式,可自由扩展
|
优化 优化缓存机制改为扩展形式,可自由扩展
|
||||||
新增 APCu、Yac、文件缓存,文件缓存默认开启
|
新增 APCu、Yac缓存
|
||||||
|
|
||||||
+--------------------------------------+
|
+--------------------------------------+
|
||||||
往日版本( Old Version )
|
往日版本( Old Version )
|
||||||
|
|
|
@ -117,7 +117,6 @@ $_config['memory']['xcache'] = 0; // 启动对 xcache 的支持
|
||||||
$_config['memory']['eaccelerator'] = 0; // 启动对 eaccelerator 的支持
|
$_config['memory']['eaccelerator'] = 0; // 启动对 eaccelerator 的支持
|
||||||
$_config['memory']['wincache'] = 0; // 启动对 wincache 的支持
|
$_config['memory']['wincache'] = 0; // 启动对 wincache 的支持
|
||||||
$_config['memory']['yac'] = 0; //启动对 YAC 的支持
|
$_config['memory']['yac'] = 0; //启动对 YAC 的支持
|
||||||
$_config['memory']['file']['server'] = 'data/cache/filecache'; // 启动对 File 缓存的支持
|
|
||||||
// 服务器相关设置
|
// 服务器相关设置
|
||||||
$_config['server']['id'] = 1; // 服务器编号,多webserver的时候,用于标识当前服务器的ID
|
$_config['server']['id'] = 1; // 服务器编号,多webserver的时候,用于标识当前服务器的ID
|
||||||
|
|
||||||
|
|
|
@ -1,103 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/**
|
|
||||||
* [Discuz!] (C)2001-2099 Comsenz Inc.
|
|
||||||
* This is NOT a freeware, use is subject to license terms
|
|
||||||
*
|
|
||||||
* $Id: memory_driver_yac.php 27635 2017-02-02 17:02:46Z NaiXiaoxIN $
|
|
||||||
*/
|
|
||||||
if (!defined('IN_DISCUZ')) {
|
|
||||||
exit('Access Denied');
|
|
||||||
}
|
|
||||||
|
|
||||||
class memory_driver_file {
|
|
||||||
|
|
||||||
public $cacheName = 'File';
|
|
||||||
public $enable;
|
|
||||||
public $path;
|
|
||||||
|
|
||||||
public function env() {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function init($config) {
|
|
||||||
$this->path = $config['server'].'/';
|
|
||||||
if($config['server']) {
|
|
||||||
$this->enable = is_dir(DISCUZ_ROOT.$this->path);
|
|
||||||
if(!$this->enable) {
|
|
||||||
dmkdir(DISCUZ_ROOT.$this->path);
|
|
||||||
$this->enable = is_dir(DISCUZ_ROOT.$this->path);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$this->enable = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private function cachefile($key) {
|
|
||||||
return str_replace('_', '/', $key).'/'.$key;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function get($key) {
|
|
||||||
$data = null;
|
|
||||||
@include_once DISCUZ_ROOT.$this->path.$this->cachefile($key).'.php';
|
|
||||||
if($data !== null) {
|
|
||||||
if($data['exp'] && $data['exp'] < TIMESTAMP) {
|
|
||||||
return array();
|
|
||||||
}
|
|
||||||
return $data['data'];
|
|
||||||
}
|
|
||||||
return array();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function set($key, $value, $ttl = 0) {
|
|
||||||
$file = DISCUZ_ROOT.$this->path.$this->cachefile($key).'.php';
|
|
||||||
dmkdir(dirname($file));
|
|
||||||
$data = array(
|
|
||||||
'exp' => $ttl ? TIMESTAMP + $ttl : 0,
|
|
||||||
'data' => $value,
|
|
||||||
);
|
|
||||||
return file_put_contents($file, "<?php\n\$data = ".var_export($data, 1).";\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
public function rm($key) {
|
|
||||||
return @unlink(DISCUZ_ROOT.$this->path.$this->cachefile($key));
|
|
||||||
}
|
|
||||||
|
|
||||||
private function dir_clear($dir) {
|
|
||||||
if($directory = @dir($dir)) {
|
|
||||||
while($entry = $directory->read()) {
|
|
||||||
$filename = $dir.'/'.$entry;
|
|
||||||
if($entry != '.' && $entry != '..') {
|
|
||||||
if(is_file($filename)) {
|
|
||||||
@unlink($filename);
|
|
||||||
} else {
|
|
||||||
$this->dir_clear($filename);
|
|
||||||
@rmdir($filename);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$directory->close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clear() {
|
|
||||||
return $this->dir_clear(DISCUZ_ROOT.$this->path);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function inc($key, $step = 1) {
|
|
||||||
$old = $this->get($key);
|
|
||||||
if (!$old) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return $this->set($key, $old + $step);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function dec($key, $step = 1) {
|
|
||||||
$old = $this->get($key);
|
|
||||||
if (!$old) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return $this->set($key, $old - $step);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in New Issue