ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 62


Ignore:
Timestamp:
Aug 25, 2006, 2:29:26 AM (15 years ago)
Author:
ogawa
Message:

function cache に対応

Location:
OpenPNE/trunk
Files:
2 added
5 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/trunk/config.php.sample

    r13 r62  
    3434// 2: on  ... 1 + Smartyデバッグコンソール
    3535define('OPENPNE_DEBUGGING', 1);
     36
     37// ファンクションキャッシュ使用設定
     38//有効にした場合は、最新情報の表示に遅延が起こることがあります
     39define('OPENPNE_USE_FUNCTION_CACHE', false);
    3640
    3741// 無効にするモジュール
  • OpenPNE/trunk/webapp/lib/OpenPNE/Config.php

    r13 r62  
    144144            'SERVER_IP_KEY' => 'REMOTE_ADDR',
    145145            'OPENPNE_USE_CMD_TAG' => true,
     146            'OPENPNE_USE_FUNCTION_CACHE' => false,
    146147        // 固定値
    147148            'AMAZON_TOKEN'   => '1WZYY1W9YF49AGM0RTG2',
  • OpenPNE/trunk/webapp/lib/util/util.php

    r2 r62  
    389389}
    390390
     391//---
     392
     393function &get_cache_lite_function()
     394{
     395    static $instance;
     396    if (empty($instance)) {
     397        require_once 'Cache/Lite/Function.php';
     398        $options = array(
     399            'cacheDir' => OPENPNE_VAR_DIR . '/function_cache/',
     400            'hashedDirectoryLevel' => 2,
     401            'hashedDirectoryUmask' => 0777,
     402        );
     403        $instance = new Cache_Lite_Function($options);
     404    }
     405    return $instance;
     406}
     407
     408/**
     409 * call function cache
     410 */
     411function pne_cache_call()
     412{
     413    $arg_list = func_get_args();
     414    $lifetime = array_shift($arg_list);
     415
     416    if (OPENPNE_USE_FUNCTION_CACHE) {
     417        $cache =& get_cache_lite_function();
     418        $cache->setOption('lifetime', intval($lifetime));
     419        return call_user_func_array(array(&$cache, 'call'), $arg_list);
     420    } else {
     421        $function = array_shift($arg_list);
     422        return call_user_func_array($function, $arg_list);
     423    }
     424}
     425
     426/**
     427 * drop function cache
     428 */
     429function pne_cache_drop()
     430{
     431    $arg_list = func_get_args();
     432
     433    if (OPENPNE_USE_FUNCITON_CACHE) {
     434        $cache =& get_cache_lite_funcion();
     435        return call_user_func_array(array(&$cache, 'drop'), $arg_list);
     436    } else {
     437        return true;
     438    }
     439}
     440
    391441?>
  • OpenPNE/trunk/webapp/modules/ktai/page/h_ranking.php

    r2 r62  
    2020        switch ($kind) {
    2121        case "friend":
    22             $list = p_h_ranking_c_friend_ranking($limit);
     22            $list = pne_cache_call(3600, 'p_h_ranking_c_friend_ranking', $limit);
    2323            foreach ($list as $key => $value) {
    2424                $list[$key]['c_member'] = db_common_c_member_with_profile($value['c_member_id']);
     
    2626            break;
    2727        case "com_member":
    28             $list = p_h_ranking_c_commu_member_ranking($limit);
     28            $list = pne_cache_call(3600, 'p_h_ranking_c_commu_member_ranking', $limit);
    2929            foreach ($list as $key => $value) {
    3030                $list[$key]['c_commu'] = _db_c_commu4c_commu_id($value['c_commu_id']);
     
    3232            break;
    3333        case "com_comment":
    34             $list = p_h_ranking_c_commu_topic_comment_ranking($limit);
     34            $list = pne_cache_call(3600, 'p_h_ranking_c_commu_topic_comment_ranking', $limit);
    3535            foreach ($list as $key => $value) {
    3636                $list[$key]['c_commu'] = _db_c_commu4c_commu_id($value['c_commu_id']);
     
    3939        case "ashiato":
    4040        default:
    41             $list = p_h_ranking_c_ashiato_ranking($limit);
     41            $list = pne_cache_call(3600, 'p_h_ranking_c_ashiato_ranking', $limit);
    4242            foreach ($list as $key => $value) {
    4343                $list[$key]['c_member'] = db_common_c_member_with_profile($value['c_member_id']);
  • OpenPNE/trunk/webapp/modules/pc/page/h_ranking.php

    r2 r62  
    2323        switch ($kind) {
    2424        case "friend":
    25             $list = p_h_ranking_c_friend_ranking($limit);
     25            $list = pne_cache_call(3600, 'p_h_ranking_c_friend_ranking', $limit);
    2626            foreach ($list as $key => $value) {
    2727                $list[$key]['c_member'] = db_common_c_member_with_profile($value['c_member_id']);
     
    2929            break;
    3030        case "com_member":
    31             $list = p_h_ranking_c_commu_member_ranking($limit);
     31            $list = pne_cache_call(3600, 'p_h_ranking_c_commu_member_ranking', $limit);
    3232            foreach ($list as $key => $value) {
    3333                $list[$key]['c_commu'] = _db_c_commu4c_commu_id($value['c_commu_id']);
     
    3535            break;
    3636        case "com_comment":
    37             $list = p_h_ranking_c_commu_topic_comment_ranking($limit);
     37            $list = pne_cache_call(3600, 'p_h_ranking_c_commu_topic_comment_ranking', $limit);
    3838            foreach ($list as $key => $value) {
    3939                $list[$key]['c_commu'] = _db_c_commu4c_commu_id($value['c_commu_id']);
     
    4242        case "ashiato":
    4343        default:
    44             $list = p_h_ranking_c_ashiato_ranking($limit);
     44            $list = pne_cache_call(3600, 'p_h_ranking_c_ashiato_ranking', $limit);
    4545            foreach ($list as $key => $value) {
    4646                $list[$key]['c_member'] = db_common_c_member_with_profile($value['c_member_id']);
Note: See TracChangeset for help on using the changeset viewer.