Я пытаюсь кэшировать вывод метода python, поэтому для ключа кеша я использую хеш (метод) + сериализованные аргументы. Я использую один сервер memcached для нескольких рабочих машин.Идентификатор уникального метода Python
Проблема в том, что хэш (метод) оказался непоследовательным в отношении этих рабочих машин и процессов.
class Foo(object):
def bar():
pass
x = Foo()
hash(x.bar) #was inconsistent across machines/processes
ID() не будет работать, потому что это место памяти и, следовательно, работает только на одной машине.
Спасибо!
@ delnan: О, мы хешируем функции ... Nvm –
@NiklasB. что вы рекомендуете, я беру хэш MD5? Функция принимает строковый ввод ... – djs22
djs22: Аргументы и какое-то полное имя функции. Это уже решена проблема, однако, просто посмотрите на ссылки, представленные во втором ответе. –