Heim > Backend-Entwicklung > Golang > Wie richte ich mit Go den automatischen Ablauf von Dokumenten in MongoDB ein?

Wie richte ich mit Go den automatischen Ablauf von Dokumenten in MongoDB ein?

Mary-Kate Olsen
Freigeben: 2024-10-29 17:24:02
Original
367 Leute haben es durchsucht

How to Set Up Automatic Document Expiration in MongoDB with Go?

Ablaufen von Dokumenten in MongoDB nach einem festgelegten Zeitintervall

In Go können Sie mithilfe des Mongo-Go-Treibers Dokumente in einer Sammlung basierend auf einem festgelegten Zeitintervall automatisch ablaufen lassen Anzahl der Sekunden.

Erklärung

Damit Dokumente automatisch ablaufen, benötigen Sie an:

  1. Erstellen Sie einen Index mit der Option „expireAfterSeconds“: Dadurch wird die TTL (Lebensdauer) von Dokumenten basierend auf einem Feld (z. B. „createdAt“) festgelegt.
  2. Fügen Sie Dokumente mit dem angegebenen Zeitstempelfeld ein: Stellen Sie beim Einfügen von Dokumenten sicher, dass sie über das Feld „createdAt“ verfügen, um es zu bestimmen wenn die TTL startet.

Beispielcode

In Ihrem Go-Code:

<code class="go">// Add an index to expire documents after 1 second (for testing purposes).
model := mongo.IndexModel{
    Keys:    bson.M{"createdAt": 1},
    Options: options.Index().SetExpireAfterSeconds(1),
}
ind, err := col.Indexes().CreateOne(ctx, model)</code>
Nach dem Login kopieren

Hinweis zum Timing

Das ist wichtig zu beachten Die Option „expireAfterSeconds“ gibt die Dauer an, nach der ein Dokument gelöscht werden kann. Allerdings erfolgt die tatsächliche Löschung möglicherweise nicht sofort.

MongoDB führt alle 60 Sekunden eine Hintergrundaufgabe aus, um abgelaufene Dokumente zu entfernen. Daher können abgelaufene Dokumente bis zu 60 Sekunden nach Ablauf ihrer TTL in der Sammlung verbleiben. Darüber hinaus kann der Löschvorgang länger dauern, wenn die Datenbank stark ausgelastet ist.

Bedenken Sie dies, wenn Sie damit rechnen, dass Ihre Dokumente umgehend gelöscht werden.

Das obige ist der detaillierte Inhalt vonWie richte ich mit Go den automatischen Ablauf von Dokumenten in MongoDB ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage