У меня не работает даже с net.sf.w чем бы то ни было!

ичок в Google App Engine, и последние несколько дней я потратил на создание приложения с использованием Memcache GAE для хранения данных. Исходя из моих первоначальных результатов, кажется, что Memcache GAE НЕ глобален?

Позвольте мне объяснить дальше. Мне известно, что разные запросы к GAE могут потенциально обслуживаться разными экземплярами (на самом деле это, кажется, происходит довольно часто). Именно по этой причине я использую Memcache для хранения общих данных, а не статической карты. Я подумал (возможно, неправильно), что это было смыслом использования распределенного кэша, чтобы к данным мог получить доступ любой узел.

Другая определенная возможность состоит в том, что я делаю что-то не так. Я пробовал и JCache, и низкоуровневый Memcache API (я пишу на Java, а не на Python). Вот что я делаю, чтобы получить кеш:

MemcacheService cache = MemcacheServiceFactory.getMemcacheService();

После развертывания я проверяю это (через журналы приложений):

Первоначальный запрос обслуживается конкретным узлом, а данные сохраняются в кеше, найденном выше.Новые несколько запросов извлекают этот же кеш, и данные там.Когда новый узел создается для обслуживания запроса (из журналов, которые я знаю, когда это происходит, потому что GAE регистрирует тот факт, что «Этот запрос вызвал запуск нового процесса для вашего приложения ...»), кэш извлекается и становится ПУСТОЙ !!

Теперь я также знаю, что нет никакой гарантии того, как долго будут храниться данные в Memcache, но из моих выводов выясняется, что данные исчезают в тот момент, когда экземпляр diff пытается получить доступ к кэшу. Кажется, это идет вразрез с концепцией распределенного глобального кэша?

Надеюсь, кто-то может прояснить, как именно это ДОЛЖНО вести себя. Если Memcache НЕ предполагается глобальным и каждый экземпляр сервера имеет свою собственную копию, то зачем вообще использовать Memcache? Я мог бы просто использовать статический HashMap (который я первоначально делал, пока не понял, что он не будет глобальным из-за различных случаев, обслуживающих мои запросы).

Помогите?

Ответы на вопрос(3)

Ваш ответ на вопрос