Ein kurzer Blick auf die Implementierung der Pub -Sub -Technik mithilfe von JQuery -Ein- und Ausschieben.
Verwandte Beiträge:
- jQuery 1.7 .on () vs .live () review
- Das Fascade JavaScript -Design -Muster
<span>/* jQuery Tiny Pub/Sub - v0.7 - 10/27/2011
</span><span> * http://benalman.com/
</span><span> * Copyright (c) 2011 "Cowboy" Ben Alman; Licensed MIT, GPL */
</span>
<span>(function($) {
</span>
<span>var o = $({});
</span>
$<span>.subscribe = function() {
</span> o<span>.on.apply(o, arguments);
</span> <span>};
</span>
$<span>.unsubscribe = function() {
</span> o<span>.off.apply(o, arguments);
</span> <span>};
</span>
$<span>.publish = function() {
</span> o<span>.trigger.apply(o, arguments);
</span> <span>};
</span>
<span>}(jQuery));</span>
Nach dem Login kopieren
Quelle: https://gist.github.com/661855
Wie funktioniert es und wie man es benutzt? Arbeitsbeispiel: https://jsfiddle.net/cowboy/hvajf/
häufig gestellte Fragen (FAQs) zu Jquery Pub/Submuster
Was ist das JQuery Pub/Sub-Muster? Es handelt sich um eine Form der asynchronen Service-zu-Service-Kommunikation, die in serverlosen und Microservices-Architekturen verwendet wird. Das Muster wird implementiert, indem eine Nachrichtenwarteschlange erstellt wird, in der Sender, die als Publishers bezeichnet werden, Nachrichten und Empfänger erstellen, die als Abonnenten bezeichnet werden. Die Verlage und Abonnenten sind locker gekoppelt, was bedeutet, dass sie die Existenz des anderen nicht kennen müssen. Verlage senden Nachrichten an diesen Hub, und Abonnenten erhalten Nachrichten daraus. Der Hub ist dafür verantwortlich, die Nachrichten an die entsprechenden Abonnenten zu verteilen. Dieses Muster ermöglicht ein hohes Maß an Entkopplung, was es einfacher macht, das System aufrechtzuerhalten und zu ändern. Es ermöglicht eine lockere Kopplung zwischen den Komponenten, wodurch das System flexibler und leichter zu warten ist. Es ermöglicht auch eine asynchrone Kommunikation, die die Leistung verbessern kann, indem Komponenten fortgesetzt werden, während sie auf Nachrichten warten. Darüber hinaus kann es dazu beitragen, das System zu vereinfachen, indem die Anzahl der direkten Verbindungen zwischen Komponenten reduziert wird. Der Hub kann mithilfe einer Vielzahl von Techniken implementiert werden, z. Die Verlage und Abonnenten können als Funktionen oder Objekte implementiert werden, die mit dem Hub interagieren. Es ist ein allgemeines Muster, das in jeder JavaScript-Anwendung verwendet werden kann. Einige Bibliotheken bieten jedoch möglicherweise ihre eigene Implementierung des Musters oder können Funktionen liefern, die das Implementieren des Musters erleichtern.
Was sind einige häufige Anwendungsfälle für das JQuery Pub/Sub -Muster? Dies schließt Webanwendungen ein, in denen es verwendet werden kann, um Ereignisse zu verarbeiten, und serverlose Architekturen, bei denen es zur Behandlung von Anforderungen und Antworten verwendet werden kann. Es wird auch häufig in Microservices -Architekturen verwendet, bei denen es zum Entkoppeln von Diensten verwendet werden kann. Ein potenzieller Nachteil ist, dass das System komplexer werden kann, da ein zentraler Hub für Nachrichten erforderlich ist. Da das Muster eine asynchrone Kommunikation beinhaltet, kann es schwieriger sein, zu debuggen als die synchrone Kommunikation. Es unterscheidet sich jedoch darin, dass es einen zentralen Hub für Nachrichten verwendet und eine asynchrone Kommunikation ermöglicht. Dies macht es flexibler und skalierbarer als einige andere Muster, aber auch möglicherweise komplexer. Es muss jedoch darauf geachtet werden, dass der Hub mit einer Gewinde sicher ist, da mehrere Threads möglicherweise gleichzeitig darauf zugreifen. Dies kann durch die Verwendung von Synchronisationstechniken wie Sperren oder Semaphoren erreicht werden. Da die asynchrone Kommunikation in modernen Anwendungen immer wichtiger wird, wird die Fähigkeit des Musters, diese Art der Kommunikation zu bewältigen, sie wahrscheinlich noch beliebter macht. Wenn sich mehr Anwendungen in Richtung Microservices -Architekturen bewegen, wird die Fähigkeit des Musters, Komponenten zu entkoppeln, wahrscheinlich immer wertvoller.
Das obige ist der detaillierte Inhalt vonPub -Untermuster mit jQuery .on () und .off (). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!