listy-django-cache

Screenshot Software:
listy-django-cache
Detalii soft:
Versiune: 0.9.0
Incarca data: 11 May 15
Producător: Wavii, Inc.
Licenţă: Gratuit
Popularitate: 0

Rating: 4.0/5 (Total Votes: 1)

listy-django-cache este un mecanism de caching determinist pentru proiecte de Django. & Nbsp; Se va încerca să păstreze memoria cache în sincronizare cu baza de date, prin actualizarea în timpul schimbării loc să se bazeze pe timeout. Așa cum se sugerează cu numele, Listy susține Cautati liste de obiecte.
Instalare
& Nbsp; pip instala listy-django-cache
Utilizare
Utilizarea Listy este la fel de simplu ca înlocuirea administratorului modelul implicit cu un CachingManager și furnizarea cu lista de taste pe care le va dori să interoga cu.
În acest exemplu contrived, mă pot uita în sus pe baza PK, doar adeptul, sau ambele adeptul și followee:
listy import
Follow clasa (models.Model):
& Nbsp; # Configurare acest cache pentru a sprijini căutare de "PK" sau "adept"
& Nbsp; obiecte = listy.CachingManager ([("PK",), ("adept",), ("adept", "followee ')])
& Nbsp; a creat = models.DateTimeField (auto_now_add = True)
& Nbsp; adept = models.ForeignKey ("utilizator", related_name = 'urmează')
& Nbsp; followee = models.ForeignKey ("utilizator", related_name = 'fani')
# Urmați cineva
Follow.cache.add (adept = mine, followee = te)
# Anulați urmărirea cineva
Follow.cache.delete (adept = mine, followee = te)
# Ia utilizatorii urmez
Follow.cache.get (adept = ma)
# Ia dacă te-am urmat
Follow.cache.get (adept = mine, adept = te)
# Ia contează pentru utilizatori am urmat
de la data import datetime, timedelta
din dateutil.rrule rrule import, zilnic, săptămânal, lunar, anual
începe, end = date.today () - timedelta (zile = 100), date.today ()
Follow.cache.daily_counts (creat = rrule (DAILY, dtstart = începe, până la sfârșitul =))
Puteți vedea un set complet de exemple în test_django_app / cache / tests.py.
Argumente pentru CachingManager:
- Cache - o listă a tupluri descriu domeniile care ar trebui să fie chei în cache
- Soft_delete_field - numele câmpului ștergere, care poate fi utilizat pentru a șterge obiectele fără a scoate de fapt le din baza de date în cazul în care această funcție este susținută de modelul (implicit Niciuna)
- Deleted_timestamp_field - numele câmpului care ar trebui să fie setat la o datetime atunci când ștergeți un obiect (implicit Niciunul)
- Enabled_field - numele câmpului care definește dacă un obiect este activată sau nu, acest lucru este tratat ca un șterge ce nu poate fi anulată în condiții normale (implicit Niciunul)
- Timestamp_field - numele câmpului care deține marca de timp pentru a fi utilizate pentru contori (implicit Niciunul)
- Disable_cache - opriți caching, poate fi folosit pentru depanare (implicit false)
- Adresa - o funcție care returnează adresa Memcache (implicit 127.0.0.1:11211)
- Filter_out_soft_deletes - trateze Șterge moi ca Șterge adevărați, filtra le la întoarcerea liste (implicit Adevărat)
Lista de tupluri definite de argumentul cache este inima acestui mecanism de caching. Prin aceasta definim ce liste de obiecte ne-o dorim cache și actualizate, precum și modul în care vom accesa aceste liste

Caracteristici :.

  • Foarte usor de folosit
  • deterministă
  • acces rapid la liste de lucruri
  • Pachete de date în formă compactă (înregistrări mai mici merge de la aproximativ 1k pana la 10s de bytes)
  • la cerere deserializarea
  • Utilizarea comenzii Prefixeaza memcache pentru rapidă adaugă
  • Monitorizează din total, anual, numărul lunar, săptămânal, zilnic și pentru fiecare listă cache
  • Optional registru pe-cerere obiect
  • suport opțional pentru Șterge moi

Cerințe :

  • Python
  • Django

Comentarii la listy-django-cache

Comentariile nu a fost găsit
Adauga comentarii
Porniţi pe imagini!