в настоящее время у меня есть три разных запущенных экземпляра memcached, каждый для среды (dev, test и live)
Во всех трех средах используется одна и та же версия memcached (1.4.5) и конфигурации с немного разными дистрибутивами и машинами Linux, а именно:
Dev: Linux версии 2.6.17-13mdv (rtp@octopus.mandriva.com) (gcc версия 4.1.2 20070302 (предварительная версия) (4.1.2-1mdv2007.1)) # 1 SMP Пт 23 марта, 15:18:36 EDT 2007 Выпуск 2007.1 в Mandriva Linux (Официальный) для x86_64 Ядро 2.6.17-13mdv на двухпроцессорном x86_64 / \ l
Тест: Linux версии 2.6.33.2-desktop-2mnb (herton@celeste.mandriva.com) (gcc версия 4.4.3 (GCC)) # 1 SMP Чт 15 апреля 21:34:06 UTC 2010 Mandriva Linux release 2010.0 (Официальный) для x86_64 Ядро 2.6.33.2-desktop-2mnb на 4-процессорной x86_64 / \ l
Жить: Linux версии 2.6.31.13-server-1mnb (qateam@titan.mandriva.com) (gcc версия 4.4.1 (GCC)) # 1 SMP Tue Apr 27 21:14:30 EDT 2010 Mandriva Linux release 2010.0 (Official) для x86_64 Ядро 2.6.31.13-server-1mnb на 16-процессоре x86_64 / \ l
Моя проблема в том, что в реальной среде все кеширование безупречно, я устанавливаю некоторый ключ / значение, и он реагирует, как ожидалось, но в тесте и dev env приложение устанавливает некоторый ключ / значение, но не может его получить.
Регистрация вывода memcached с использованием -vvv дает мне некоторое представление о том, что происходит, когда он пытается получить ключи следующим образом:
<40 получить qZPh2MQDIs% 2BXTBrL3C7hiAcClZgOiklYwnz0a0LN6tY% 3D НАЙДЕННЫЙ КЛЮЧ qZPh2MQDIs% 2BXTBrL3C7hiAcClZgOiklYwnz0a0LN6tY% 3D. 0 2700 ?? -nuked по истечении срока действия
это ядерный по истечении срока действия сводит меня с ума, к счастью, моя live env в порядке.
Я дважды проверил конфигурацию NTP для серверов (я подумал, что, возможно, если дата была неправильной, истечение срока было в прошлом или что-то в этом роде), и все в порядке, ожидается, что мой кеш будет длиться 10 минут с этого момента, и все серверы синхронизированы по времени .
Итак, кто-нибудь может помочь мне узнать, что не так?
Хорошо, обнаружил, проблема заключалась в том, что даже при включенном NTP и "date", показывающем правильное локальное datetime, была неправильная конфигурация даты и времени UTC.
Решение: date +% T -u -s "фактическое-UTC-время"
Я не знаю, почему даже с NTP это было так, но просто дам обратную связь, если кто-то столкнется с той же проблемой: D