mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-06 18:21:39 +09:00
Use object cache for member point
오브젝트 캐시 사용시 회원 포인트를 캐시에 저장하도록 변경하여 불필요한 캐시 파일이 다량으로 생성되는 것을 방지함.
This commit is contained in:
parent
4b0a2c512e
commit
2f3f1d4be0
2 changed files with 35 additions and 7 deletions
|
|
@ -683,11 +683,18 @@ class pointController extends point
|
||||||
$oDB->commit();
|
$oDB->commit();
|
||||||
|
|
||||||
// Cache Settings
|
// Cache Settings
|
||||||
|
$cache_key = sprintf('member:point:%d', $member_srl);
|
||||||
$cache_path = sprintf('./files/member_extra_info/point/%s/', getNumberingPath($member_srl));
|
$cache_path = sprintf('./files/member_extra_info/point/%s/', getNumberingPath($member_srl));
|
||||||
FileHandler::makedir($cache_path);
|
|
||||||
|
|
||||||
$cache_filename = sprintf('%s%d.cache.txt', $cache_path, $member_srl);
|
$cache_filename = sprintf('%s%d.cache.txt', $cache_path, $member_srl);
|
||||||
FileHandler::writeFile($cache_filename, $point);
|
if (Rhymix\Framework\Cache::getDriverName() !== 'dummy')
|
||||||
|
{
|
||||||
|
Rhymix\Framework\Cache::set($cache_key, $point);
|
||||||
|
Rhymix\Framework\Storage::delete($cache_filename);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Rhymix\Framework\Storage::write($cache_filename, $point);
|
||||||
|
}
|
||||||
|
|
||||||
getController('member')->_clearMemberCache($member_srl);
|
getController('member')->_clearMemberCache($member_srl);
|
||||||
unset(self::$_member_point_cache[$member_srl]);
|
unset(self::$_member_point_cache[$member_srl]);
|
||||||
|
|
|
||||||
|
|
@ -39,12 +39,23 @@ class pointModel extends point
|
||||||
return self::$_member_point_cache[$member_srl];
|
return self::$_member_point_cache[$member_srl];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Get from object cache
|
||||||
|
$cache_key = sprintf('member:point:%d', $member_srl);
|
||||||
|
if (!$from_db)
|
||||||
|
{
|
||||||
|
$point = Rhymix\Framework\Cache::get($cache_key);
|
||||||
|
if ($point !== null)
|
||||||
|
{
|
||||||
|
return $point;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Get from file cache
|
// Get from file cache
|
||||||
$cache_path = sprintf(_XE_PATH_ . 'files/member_extra_info/point/%s', getNumberingPath($member_srl));
|
$cache_path = sprintf(_XE_PATH_ . 'files/member_extra_info/point/%s', getNumberingPath($member_srl));
|
||||||
$cache_filename = sprintf('%s%d.cache.txt', $cache_path, $member_srl);
|
$cache_filename = sprintf('%s%d.cache.txt', $cache_path, $member_srl);
|
||||||
if (!$from_db && file_exists($cache_filename))
|
if (!$from_db && file_exists($cache_filename))
|
||||||
{
|
{
|
||||||
return self::$_member_point_cache[$member_srl] = trim(FileHandler::readFile($cache_filename));
|
return self::$_member_point_cache[$member_srl] = intval(trim(Rhymix\Framework\Storage::read($cache_filename)));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get from the DB
|
// Get from the DB
|
||||||
|
|
@ -54,14 +65,24 @@ class pointModel extends point
|
||||||
if (isset($output->data->member_srl))
|
if (isset($output->data->member_srl))
|
||||||
{
|
{
|
||||||
$point = intval($output->data->point);
|
$point = intval($output->data->point);
|
||||||
self::$_member_point_cache[$member_srl] = $point;
|
|
||||||
FileHandler::writeFile($cache_filename, $point);
|
|
||||||
return $point;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Save to cache
|
||||||
|
self::$_member_point_cache[$member_srl] = $point;
|
||||||
|
if (Rhymix\Framework\Cache::getDriverName() !== 'dummy')
|
||||||
|
{
|
||||||
|
Rhymix\Framework\Cache::set($cache_key, $point);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Rhymix\Framework\Storage::write($cache_filename, $point);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $point;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue