Johnny cache not invalidating


johnny cache not invalidating-9

Если вам нужно закэшировать редко изменяющуюся таблицу, это решение может подойти, в остальных случаях (а их большинство) — увы. Django Cache Machine и Django-cachebot приемлемо решают поставленную задачу, Johnny Cache же слишком неразборчив в инвалидации, его бы я рекомендовать не стал.

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

It's not often you get these two coming hand in hand.

Every time you do a query that hits cache, your database doesn't have to accept a connection, allocate cursors, examine your query, execute it, and return the result.

Например, @receiver(post_save, sender=Article) def on_change(instance, **kwargs): cache.set('article::%(id)d' % , instance) @receiver(pre_delete, sender=Article) def on_delete(instance, **kwargs): cache.delete('article::%(id)d' % ) Зачем удалять значение, когда его можно заменить на новое? Во-первых, это слово смотрится очень умно, а во-вторых, помните, что с кэшем можно делать ровно две вещи: читать оттуда и записывать туда новое значение.