Я пытаюсь разделить ключ Memcache между Python и PHP. Python пишет ключ, а PHP читает его. Я использую фреймворк Cakephp с php-pecl-memcache (не php-pecl-memcached) и python-memcache all из библиотеки python.
Python:
mc = memcache.Client( ["127.0.0.1:11211"])
key = "key1"
value = 1323779849
mc.set(key, value)
PHP:
echo Cache::read('key1', 'memcached');
PHP не может прочитать переменную, я получаю странные ошибки "MemcachePool :: get () [http://php.net/memcachepool.get]: Не удалось распаковать данные"; Я подозреваю, что это связано с флагами memcached, которые устанавливаются по-разному в каждой библиотеке.
Вот что происходит, когда я telnet к memcached:
Python устанавливает ключ:
get key1
VALUE key1 1 12
1323779849
.
END
PHP устанавливает ключ:
get key1
VALUE key 1 0 12
1323779849
END
- Есть ли способ переопределить эти флаги и просто "сделать свое дело"?
- Существуют ли библиотеки php / python memcache, которые лучше играют вместе?
- В качестве альтернативы, есть ли простой способ создать общее пространство памяти между python / php?