Обновление существующей записи Memcached - PullRequest
2 голосов
/ 22 февраля 2012

У меня есть приложение, которое должно выполнять несколько сетевых запросов, каждый из которых возвращает 100 записей.

Я хотел бы сохранить все результаты (несколько тысяч или около того) вместе в одной записи Memcached, названной в соответствии с запросом пользователя.

Есть ли способ добавить данные в Memcachedзаписать или мне нужно читать и записывать его туда-сюда и комбинировать старые результаты с новыми с помощью моего приложения?

Спасибо!

PS Я использую Rails 3.2

Ответы [ 2 ]

2 голосов
/ 22 февраля 2012

Нет способа добавить что-либо к ключу memcached.Вам придется читать его в хранилище и из него каждый раз.

redis, однако, допускает такую ​​операцию, как указывает на ошибку - у нее есть собственный тип списка, который позволяет выдвигать новые данныена него.Обратитесь к документации redis для получения информации о том, как это сделать.

0 голосов
/ 24 февраля 2012

Вы можете написать класс, который будет эмулировать список в memcached (что на самом деле я и сделал) ... добавление к записи не является атомарной операцией, поэтому он будет генерировать ошибки, которые будут накапливаться со временем (по крайней мере,в memcached).Кроме того, он будет очень медленным.

Как уже указывалось, Redis имеет собственные списки, но его можно эмулировать в любом решении для хранилища noSQL / KV.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...