Почему эта страница "загружается 3 раза?"(Это неверная конфигурация?) - PullRequest
0 голосов
/ 12 января 2011
  • Ubuntu 10.10
  • Apache 2.2.17
  • PHP 5.3.4
  • APC 3.1.6
  • Memcache 3.0.5

Код:

<?php
$cache = new Memcache();
$cache->connect('localhost', 11211);

$num = 1;

if (($a = $cache->get('key')) !== false) $num = $a;
$num += 1;
$cache->set('key', $num);

echo $num;

Вывод (при трех последовательных обновлениях сразу после перезагрузки Apache):

2

тогда

5

тогда

8

Вопрос: почему? Я ожидаю 2, 3, 4. Кажется, что первая страница получилась, но последующие загрузки страниц всегда увеличивают в три раза больше, чем число, которое я фактически добавляю. Другими словами, если я напишу

$num += 10;

Тогда цифры выходят 11, 41, 71. Что я делаю неправильно? Я неправильно настроил APC или Memcache? Я уверен, что проблема в APC, но если бы я точно знал, в чем проблема, я бы не стал спрашивать!

Обновление: Apache access_log показывает 3 разных запроса для каждой загрузки страницы, когда это происходит.

1 Ответ

1 голос
/ 16 января 2011

Какой метод вы используете, чтобы сделать запрос?Я заметил, что некоторые плагины Firefox (например, Firebug) иногда вызывают загрузку страницы по разным причинам.Возможно, стоит попробовать использовать какой-нибудь другой браузер, или просто wget или curl, чтобы сделать запрос и посмотреть, все ли он дает те же результаты.

...