25 Punkte von xguru 2025-01-06 | 2 Kommentare | Auf WhatsApp teilen
  • Eine einfache, schnelle, stabile und batterieeffiziente Open-Source-Lösung
  • Überträgt Datenaktualisierungen per Push an Webbrowser und andere HTTP-Clients
  • Besonders nützlich, um asynchrone/Echtzeit-Updates von Ressourcen, die über Web-APIs bereitgestellt werden, in responsiven Web- und Mobile-Apps anzuzeigen
  • Rein HTTP-basiert: Unterstützt bidirektionale Kommunikation unter Nutzung von Protokollen ab HTTP/2
  • Schnelle Reaktionszeiten und geringe Latenz
  • Bietet Browser-Kompatibilität in allen Umgebungen ohne zusätzliche Installation
  • Einfaches Publish und Subscribe
    • Publish: Wird mit einer einfachen POST-Anfrage verarbeitet
    • Subscribe: Empfang von Echtzeit-Updates über Server-Sent Events (SSE)
  • Unterstützt automatische Wiederverbindung und das erneute Anfordern verpasster Nachrichten bei Verbindungsabbruch
  • Entwickelt für RESTful APIs und GraphQL
  • Bietet private Updates per JWT-Authentifizierung
  • Stellt eine Presence API bereit, mit der sich der Verbindungsstatus von Nutzern prüfen lässt. Abonnements und Ereignisstatus können nachverfolgt werden
  • Event Store: Ermöglicht das Speichern und Verwalten aufgetretener Ereignisse
  • Kompatibel mit PHP und anderen serverlosen Architekturen
  • Bietet E2EE (End-to-End Encryption) für vollständige Datensicherheit
  • Stellt eine produktionsreife Referenzimplementierung des Mercure Hub bereit
    • Wird zusammen mit einer Bibliothek und offiziellen Docker-Images bereitgestellt, die in allen Go-Anwendungen zur direkten Implementierung des Mercure-Protokolls ohne Hub verwendet werden können

2 Kommentare

 
jhj0517 2025-01-06

Wenn es auf SSE basiert, frage ich mich, ob es sich um unidirektionale Kommunikation handelt oder ob es wie WebSockets bidirektionale Kommunikation unterstützt! 😮
Soweit ich selbst recherchiert habe, scheint es jedenfalls nur unidirektionale Kommunikation (Server -> Client) zu unterstützen... 🥺
https://medium.com/@sirajul.anik/…

 
nemorize 2025-01-06

In dem von derselben Person entwickelten FrankenPHP ist eine Mercure-Implementierung integriert.
https://de.news.hada.io/topic?id=15103

Als Alternative kommt auch Pushpin infrage, das insofern ein Ersatz sein kann, als es einen Realtime-Hub bereitstellt.
https://de.news.hada.io/topic?id=11377

Ich fand Pushpin intuitiver als Mercure (haha ... ich war einfach zu faul, die Mercure-Dokumentation zu lesen), deshalb habe ich früher für ein Side-Project Pushpin verwendet, aber als Nächstes würde ich dieses hier gern ausprobieren.