Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Event Bus über Redis (https://www.delphipraxis.net/215881-event-bus-ueber-redis.html)

BastiFantasti 20. Sep 2024 14:02

Delphi-Version: 5

Event Bus über Redis
 
Hallo zusammen,

ich habe auf Github 2 interessante Projekte gesehen, die in Delphi einen Event Bus implementiert haben.

Der eine ist der "DEB" Delphi Event Bus Link
Der andere ist NX Horizon Link

Diese beiden scheinen für das was sie machen wollen auch sehr gut zu funktionieren.

Kennt jemand einen Event Bus für Delphi, der im Hintergrund z.B. eine Redis Datenbank verwendet,
so dass der Event Bus auch über mehrere Prozesse verwendet werden kann?

Eine Partnerfirma von uns hat einen solchen Event Bus in .net implementiert und regelt darüber die Kommunikation ihrere Microservices.

Viele Grüße
Bastian

Rollo62 23. Sep 2024 10:19

AW: Event Bus über Redis
 
Ich weiß nicht, ob TMS MQTT auch Redis einbinden kann, vermutlich eher nicht
https://www.tmssoftware.com/site/tmsmqtt.asp
Wäre vielleicht eine Alternative?

TMS sollte aber auch ein CloudPack mit Redis haben, meine ich.

BastiFantasti 27. Sep 2024 09:25

AW: Event Bus über Redis
 
Hallo und danke für die Rückeldung.
MQTT habe ich mir auch schon überlegt zu verwenden. Allerdings muss auch hier das ganze Handling der Prozesse untereinander dann händisch erledigt werden.

Die gleiche Grundfunktionalität kann ich über Redis auch abbilden und benötige nicht noch einen weiteren Dienst der im Hintergrund ausgeführt werden muss.
Über Redis kann ich Pub/Sub Modelle abbilden oder auch einfach Statuswerte langfristig veröffentlichen.

Ich hatte gehofft, dass eine Library die Redis Datenbank als Backend für die automatische Kommunikation nicht nur von unterschiedlichen Threads verwendet sondern eben auch über Prozessgrenzen hinweg funktioniert.

Rollo62 30. Sep 2024 06:20

AW: Event Bus über Redis
 
Zitat:

Zitat von BastiFantasti (Beitrag 1541561)
Hallo und danke für die Rückeldung.
MQTT habe ich mir auch schon überlegt zu verwenden. Allerdings muss auch hier das ganze Handling der Prozesse untereinander dann händisch erledigt werden.

Die gleiche Grundfunktionalität kann ich über Redis auch abbilden und benötige nicht noch einen weiteren Dienst der im Hintergrund ausgeführt werden muss.
Über Redis kann ich Pub/Sub Modelle abbilden oder auch einfach Statuswerte langfristig veröffentlichen.

Ich hatte gehofft, dass eine Library die Redis Datenbank als Backend für die automatische Kommunikation nicht nur von unterschiedlichen Threads verwendet sondern eben auch über Prozessgrenzen hinweg funktioniert.

Was genau willst Du denn händisch managen?
Mit einem zentralen Pub/Sub Server können sich alle Prozesse P1,2,3,4,5 subscriben und
wenn es ein publish Signal S1 gibt, dann empfangen alle Prozesse dieses Signal.

Oder willst Du erreichen, dass z.B. nur P1,2 zusammen und P3,4 zusammen subscriben,
und mit einem publish Signal S12 nur P1,2 empfagen und Signal S34 nur P3,4 empfangen?

Das könnte man doch einfach über entsprechende, separate Channels steuern.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:25 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz