So serialisieren Sie Redisson
Redisson ist ein Java-speicherbasiertes Datengrid, das auf der Basis von Redis implementiert wird und zugrunde liegende Vorgänge offenlegt stellt eine Reihe verteilter gemeinsamer Java-Objekte und viele verteilte Dienste bereit. (Empfohlenes Lernen: Redis-Video-Tutorial)
Serialisierung
Die Objektcodierungsklasse von Redisson wird zum Konvertieren von Objekten verwendet. Führen Sie eine Serialisierung durch und Deserialisierung zum Lesen und Speichern des Objekts in Redis.
Der Standard-Encoder von Redisson ist JsonJacksonCodec. Wenn JsonJackson Objekte mit bidirektionalen Referenzen serialisiert, tritt eine Endlosschleifenausnahme auf. Nachdem fastjson die doppelte Referenz ausgecheckt hat, ersetzt es diese automatisch durch das Referenzzeichen $ref und beendet den Zyklus.
In meinem Fall habe ich einen Dienst serialisiert, der von Spring gehostet wurde, und er kann normal in einen anderen Dienst eingefügt werden, während JsonJackson eine Endlosschleifenausnahme auslösen kann.
Um den serialisierten Inhalt sichtbar zu machen, ist es nicht erforderlich, die anderen integrierten binären Encoder von Redission zu verwenden und den Encoder selbst zu implementieren:
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.SerializerFeature; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufAllocator; import io.netty.buffer.ByteBufInputStream; import io.netty.buffer.ByteBufOutputStream; import org.redisson.client.codec.BaseCodec; import org.redisson.client.protocol.Decoder; import org.redisson.client.protocol.Encoder; import java.io.IOException; public class FastjsonCodec extends BaseCodec { private final Encoder encoder = in -> { ByteBuf out = ByteBufAllocator.DEFAULT.buffer(); try { ByteBufOutputStream os = new ByteBufOutputStream(out); JSON.writeJSONString(os, in,SerializerFeature.WriteClassName); return os.buffer(); } catch (IOException e) { out.release(); throw e; } catch (Exception e) { out.release(); throw new IOException(e); } }; private final Decoder<Object> decoder = (buf, state) -> JSON.parseObject(new ByteBufInputStream(buf), Object.class); @Override public Decoder<Object> getValueDecoder() { return decoder; } @Override public Encoder getValueEncoder() { return encoder; } }
Mehr Redis Verwandte technische Artikel. Bitte besuchen Sie die Spalte Redis Getting Started Tutorial, um mehr zu erfahren!
Das obige ist der detaillierte Inhalt vonSo serialisieren Sie Redisson. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Nutzungsszenario 1. Die Bestellung wurde erfolgreich aufgegeben, die Zahlung erfolgte jedoch nicht innerhalb von 30 Minuten. Die Zahlung ist abgelaufen und die Bestellung wurde automatisch storniert. 2. Die Bestellung wurde unterzeichnet und es wurde 7 Tage lang keine Bewertung durchgeführt. Wenn die Bestellung abläuft und nicht ausgewertet wird, wird die Bestellung standardmäßig positiv bewertet. Wenn der Händler die Bestellung innerhalb von 5 Minuten nicht erhält, wird die Bestellung abgebrochen Es wird eine SMS-Erinnerung gesendet ... Für Szenarien mit langen Verzögerungen und geringer Echtzeitleistung können wir die Aufgabenplanung verwenden, um eine regelmäßige Abfrageverarbeitung durchzuführen. Zum Beispiel: xxl-job Heute werden wir auswählen

Download Mavenorg.springframework.bootspring-boot-starter-data-redisio.lettucelettuce-coreredis.clientsjedisorg.springframework.sessionspring-session-data-redisorg.redissonredisson3.17.5application-redis.ymlspring:redis:host:106.12.174.220port: 6379Passwort

Wenn Sie Redis bereits verwendet haben, erzielen Sie mit Redisson das doppelte Ergebnis mit halbem Aufwand. Redisson bietet die einfachste und bequemste Möglichkeit, Redis zu verwenden. Der Zweck von Redisson besteht darin, die Trennung der Benutzer von Redis zu fördern, damit sich Benutzer mehr auf die Verarbeitung der Geschäftslogik konzentrieren können.

Redisson ist eine Redis-basierte Caching-Lösung für Java-Anwendungen. Es bietet viele nützliche Funktionen, die die Verwendung von Redis als Cache in Java-Anwendungen komfortabler und effizienter machen. Zu den von Redisson bereitgestellten Caching-Funktionen gehören: 1. Verteilte Zuordnung (Karte): Redisson stellt einige APIs zum Erstellen verteilter Karten bereit. Diese Karten können Schlüssel-Wert-Paare, Hash-Einträge oder Objekte enthalten und die gemeinsame Nutzung durch mehrere Knoten unterstützen.

Redis und Redisson sind zwei wichtige Tools für die moderne In-Memory-Datenspeicherung und verteilte Datenspeicherung. Redis ist eine Open-Source-In-Memory-Datenbank, die verschiedene Datenstrukturen wie Strings, Listen, Hash-Tabellen, Sätze usw. unterstützt. Redisson ist ein in der Java-Sprache geschriebenes verteiltes Datendienst-Framework, mit dem Java-Objekte problemlos verteiltem Speicher zugeordnet werden können. Redis und Redisson haben einige gleiche Verwendungsszenarien, wie zum Beispiel: Caching: Redis und R

Mit der kontinuierlichen Weiterentwicklung der Internettechnologie und der Diversifizierung der Anwendungsszenarien sind verteilte Anwendungen zum Standard für moderne Internetanwendungen geworden. In verteilten Anwendungen muss ein verteilter Sperrmechanismus verwendet werden, um die Datensynchronisierung und Zusammenarbeit zwischen Knoten zu koordinieren. Redisson ist ein Framework für verteilte Sperren, das auf der Redis-Technologie basiert. Es bietet eine einfache und benutzerfreundliche API, um Java-Entwicklern die Verwendung verteilter Sperren in der Entwicklung zu erleichtern. In diesem Artikel wird hauptsächlich die Verwendung von Redisson für die verteilte Sperrverarbeitung in der Java-API-Entwicklung vorgestellt.

Da Internetanwendungen immer weiter zunehmen und die Zahl der Nutzer weiter zunimmt, wird die Nachfrage nach verteilten Systemen immer größer. Um die Stabilität und Datenkonsistenz verteilter Systeme sicherzustellen, ist der Einsatz von Sperren unerlässlich. In verteilten Systemen ist die Implementierung von Sperren jedoch schwierig und komplex. Mit herkömmlichen Methoden zur Sperrenimplementierung ist es schwierig, die Anforderungen hoher Parallelität und hoher Verfügbarkeit zu erfüllen. Daher wird in diesem Artikel erläutert, wie Sie mit Redisson verteilte API-Sperren implementieren und Sperrprobleme in verteilten Systemen lösen können. Redisson ist eine auf Redis basierende Implementierung

Integration und Vorsichtsmaßnahmen Redisson unterstützt Redis-Umgebungen, Standalone, Cluster, Sentinel, Cloud usw. Hier werde ich darüber sprechen, worauf Sie im Cluster-Modus achten müssen. Redisson erkennt beim Start, ob der Master/Slave-Knoten normal ist. Im Allgemeinen gibt es kein Problem mit 3 Shards, 3 Mastern und 3 Slaves. Wenn die Testumgebung jedoch 1 Shard, 1 Master und 1 Slave hat oder keiner der 3 Master gestartet werden kann. Neben der Umgebung müssen Sie auch auf die Kompatibilität mit oder ohne Passwörter achten. Manuelles Einfügen der Redisson-Konfiguration. Im Allgemeinen verfügt die Produktionsumgebung über ein Kennwort. Wenn ein Kennwort vorhanden ist, wird empfohlen, die Redisson-Konfiguration manuell einzufügen, ohne Springboot zu verwenden, um die Integration zu erleichtern, da Springboot das Kennwort möglicherweise nicht erkennen kann.
