При написании небольшой утилиты на Python потребовалось оптимизировать взаимодействие с внешней системой (получение имени организации по её id). Очевидно, что простейшим решением будет кэширование результатов. А простейшим решением будет использование dict / или его аналога.
Прежде чем написать свой кэш на dict (у меня все работает в один поток) заглянул на StackOverflow и совсем не зря: Is there a Python caching library?. Вопрос очень старый, но содержит очень интересный ответ:
Я надеюсь этот snippet пригодится не только мне.
ps: В HighLoad production режиме я его использовать не рекомендую, но для повседневных утилит подходит.
Прежде чем написать свой кэш на dict (у меня все работает в один поток) заглянул на StackOverflow и совсем не зря: Is there a Python caching library?. Вопрос очень старый, но содержит очень интересный ответ:
from functools import lru_cache @lru_cache(maxsize=256) def f(x): return x*x
Я надеюсь этот snippet пригодится не только мне.
ps: В HighLoad production режиме я его использовать не рекомендую, но для повседневных утилит подходит.
Комментариев нет:
Отправить комментарий