/ / implementieren von memcached: native Django's Module oder auf (Front Server, Reverse Proxy) nginx - django, nginx, memcached

Implementieren von Memcached: native django-Module oder on (Frontserver, Reverseproxy) nginx - django, nginx, memcached

Ich habe ein Setup wie nginx vorne zum servieren static files und reverse proxying zu apache zum django über mod_wsgi und ich möchte memcached in meinem Setup implementieren. Ich habe keinen großen Datenverkehr, den mein Server heute nicht bewältigen kann, aber er wird bald größer werden.

Ich sehe zwei Möglichkeiten für mich: Das erste ist das native memcached-Modul von django, das viele Dinge automatisch erledigt (afaik, Confirm at comments pls), z. B. wenn ein Datenbankeintrag aktualisiert wird, der zugehörige Schlüssel und möglicherweise vom Benutzer authentifizierte Seiten entfernt werden (bitte bestätigen).

Der andere implementiert memcached auf nginx. Die verantwortliche Struktur für das Caching sollte der Front-Server sein, der mir semantischer erscheint. Ich bin mir dessen nicht ganz sicher, aber es ist wie eine Aufteilung der Verantwortung. Wenn ich dies jedoch wähle, muss ich mehr Code schreiben, um Cache-Schlüssel für Updates und Benutzerauthentifizierungen freizugeben. Dies dauert natürlich einige Zeit, aber ich bin nicht in Eile.

Der erste ist der einfache Weg, der zweite isthärter aber scheint logischer. Was wäre die beste Option in Bezug auf Verwaltbarkeit und Reaktionszeiten sowie die zur Implementierung erforderliche Arbeit? Wäre es das wert?

Es gibt auch nur eine Site, die ich hosten würde, die im Moment eine Zwischenspeicherung erfordern würde, aber es werden in Zukunft mehr Sites und so weiter nicht dürfen auf Python basieren. Vielleicht möchten Sie darüber nachdenken.

Antworten:

2 für die Antwort № 1

Es könnte einen Vorteil geben, wenn man die Nginx-Route geht ... aber ich sehe es nicht.

Die Vorteile der Verwendung des Django-Moduls:

  1. Sie können festlegen, dass Daten zwischengespeichert werden, z. B. teure Abfragen und Ergebnisse von API-Aufrufen, anstatt die gesamte Ansicht im Cache zu speichern.

  2. Es ist einfach, und Sie können Ihre Anwendung dann wieder cool gestalten.