Прежде всего, если вы установите срок действия чего-либо через 1 секунду, вы не сможете получить его из Membase, если попросите об этом более чем через 1 секунду. Я предполагаю, что причина, по которой вы видите, что истечение срока действия происходит позже, заключается в том, что вы указываете абсолютное время, а время на вашем сервере и клиенте отличается. Если ваш сервер отстает от клиента на 20 секунд, я бы ожидал увидеть такое поведение. Попробуйте просто установить время истечения 1, и тогда вы увидите, что все происходит правильно. Для значений менее 30 дней время является относительным. Более 30 дней абсолютное время.
Внутри Membase, когда срок действия элемента истек, он не удаляется сразу. Существует задача истечения срока действия, которая запускается по умолчанию каждые 1 час, перебирает все ключи и удаляет просроченные. Если у вас много ключей с истекающим сроком действия, вы можете настроить выполнение задачи истечения срока действия чаще. Другой способ истечения срока действия элементов - заполнение кэша Membase и удаление элементов из памяти. Этой задачей также можно удалить просроченные элементы.