Кеширование

Discussion in 'PHP' started by banned, 24 Apr 2008.

  1. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Стыдно!
    Никогда не юзал, а теперь необходимо..
    Хотел бы узнать как использовать кеширование в Php, хотел бы увидеть примеры и получить советы...
     
    1 person likes this.
  2. _Great_

    _Great_ Elder - Старейшина

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,118
    Reputations:
    1,139
    зависит от целей +) пусть ТС написать что хочет, тогда мб можно будет предложить более оптимальный алгоритм
     
    1 person likes this.
  3. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    http://img214.imageshack.us/img214/3965/04242008085933rg0.jpg
    Вот такой же результат хочу выводить, не каждому же пользователю заново обновлять страницу, поэтому вот оптимальный вариант мне не помешает :)
     
  4. Red_Red1

    Red_Red1 Banned

    Joined:
    12 Jan 2007
    Messages:
    246
    Likes Received:
    258
    Reputations:
    83
    Может это пригодится
    Двадцать вещей, которые вы можете кешировать с помощью Apache и о которых вы не знаете. http://netsago.org/ru/docs/2/4
     
    3 people like this.
  5. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Актуален вопрос: Как кешировать инфу из бд, её много..
    Файловое кеширование не подходит..
     
  6. nc.STRIEM

    nc.STRIEM Members of Antichat

    Joined:
    5 Apr 2006
    Messages:
    1,036
    Likes Received:
    347
    Reputations:
    292
    не уверен что в данном вопросе походит слово кеширование...
    Как вариант: запросы сохраняються в бд\файл и при вводе запроса пользователем при каждом изминение по средствам ajax отправляеться запрос с введенными данными к скрипту, он формирует результат, который будет отображаться. Это динамический поиск по истории запросов

    вот пример нашол:
    PHP:
    <?
        if (!empty(
    $_GET['q']))
        {
            
    $pages = array('aaaaaaa''aaabraaa''bbbbbssss''aasrfdfvb''ssaaaaaa');
            
    $result '';
            foreach (
    $pages as $page)
                if (
    strstr($page$_GET['q']))
                    
    $result .= "<li>$page</li>";
                    
            if (!empty(
    $result))
                echo 
    $result;
            else 
                echo 
    'Not found;)';
            exit;
        }
    ?>

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=cp1251" />
    <title>Привет, мир AJAX'a</title>
    <script language="JavaScript" src="ajax.js" type="text/javascript"></script>

    <script language="JavaScript" type="text/javascript">

    function sendSearchRequest() {
        sendRequest('index.php?q=' + document.getElementById('searchQuery').value, 'result', getRequest);
    }

    var httpRequest = createHttpRequest();
    var resultId = '';

    function createHttpRequest() {
        var httpRequest;
        var browser = navigator.appName;
        
        if (browser == "Microsoft Internet Explorer") {
            httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
        } else {
            httpRequest = new XMLHttpRequest();
        }
        
        return httpRequest;
    }

    function sendRequest(file, _resultId, getRequestProc) {
        resultId = _resultId;
        document.getElementById(resultId).innerHTML = 'Подождите, идет загрузка...';
        httpRequest.open('get', file);
        httpRequest.onreadystatechange = getRequestProc;
        httpRequest.send(null);
    }

    function getRequest() {
        if (httpRequest.readyState == 4) {
            document.getElementById(resultId).innerHTML = httpRequest.responseText;
        }
    }

    </script>

    </head>

    <body>

    Искать: <input id="searchQuery" type="text" size="30" maxlength="30" onKeyUp="javascript: sendSearchRequest();">
    <hr />
    <p id="result">Здесь будет результат запроса</p>
    </body>
    </html>
     
    #6 nc.STRIEM, 24 Apr 2008
    Last edited: 24 Apr 2008
  7. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
  8. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Эх.. memcache нельзя собрать на сервере...
    На досуге надо будет придумать иной выход из ситуации =\