Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi FCM-ähnliches für Windows (https://www.delphipraxis.net/206465-fcm-aehnliches-fuer-windows.html)

MyRealName 24. Dez 2020 10:16

FCM-ähnliches für Windows
 
Gibt es eigentlich etwas Firebase Cloud Messaging (FCM) ähnliches für Windows, wo ich mein Programm benachrichtigen kann, wenn zum Bsp. auf dem Server eine neue Information vorliegt, ohne dass ich permanent eine Verbindung offen halten muss ? Oder alle x Minuten pollen.

Danke schonmal :)

Rollo62 24. Dez 2020 18:01

AW: FCM-ähnliches für Windows
 
Such mal in der AzureCloud.

MyRealName 26. Dez 2020 10:23

AW: FCM-ähnliches für Windows
 
Wenn ich das alles richtig verstehe (es gibt scheinbar niemand der das in Delpgi nutzt) muss es wohl eine UWP App sein (die man wohl in Delphi machen kann, aber keiner tut und wohl selbst MS an UWP nicht mehr wirklich festhalten will).

Hast Du denn AzureCloud schon mit Delphi probiert ? Wenn ja, gibt es da ein paar Info dazu irgendwo ?

mytbo 26. Dez 2020 11:31

AW: FCM-ähnliches für Windows
 
Zitat:

Zitat von MyRealName (Beitrag 1479822)
... wo ich mein Programm benachrichtigen kann, wenn zum Bsp. auf dem Server eine neue Information vorliegt, ohne dass ich permanent eine Verbindung offen halten muss ? Oder alle x Minuten pollen.

Ich kenne FCM nicht. Bin mir deshalb nicht sicher, ob ich deine Frage richtig verstanden habe. Wenn ich nur den zweiten Teil deiner Frage berücksichtige, könnte mORMot WebSockets die Antwort sein. Hilfe zum Thema findest du hier: WebSockets support

Eine ausführliche Hilfe zu mORMot findest du hier: Hilfe. Weitere Informationen findest du hier: Download, Forum

Frohe Weihnachten...
Thomas

MyRealName 27. Dez 2020 11:00

AW: FCM-ähnliches für Windows
 
Zitat:

Zitat von mytbo (Beitrag 1479872)
Zitat:

Zitat von MyRealName (Beitrag 1479822)
... wo ich mein Programm benachrichtigen kann, wenn zum Bsp. auf dem Server eine neue Information vorliegt, ohne dass ich permanent eine Verbindung offen halten muss ? Oder alle x Minuten pollen.

Ich kenne FCM nicht. Bin mir deshalb nicht sicher, ob ich deine Frage richtig verstanden habe. Wenn ich nur den zweiten Teil deiner Frage berücksichtige, könnte mORMot WebSockets die Antwort sein. Hilfe zum Thema findest du hier: WebSockets support

Eine ausführliche Hilfe zu mORMot findest du hier: Hilfe. Weitere Informationen findest du hier: Download, Forum

Frohe Weihnachten...
Thomas

Zu den Websockets bin ich auch gestern abend als Idee gekommen. Bisher nutzte ich immer RealThinClient mit einer http-Verbindung um Daten auszutauschen, aber im RTC Forum hatte ich mal gelesen, dass die recht viele Resourcen verbauchen.
Im Internet sah ich da einige Tests mit Millionen von Verbindungen... Gibt es da Erfahrung ? Weil das würde mich erstmal locker reichen :-D Braucht man keinen teuren BaaS Push-Service...

mytbo 27. Dez 2020 13:10

AW: FCM-ähnliches für Windows
 
Zitat:

Zitat von MyRealName (Beitrag 1479900)
Im Internet sah ich da einige Tests mit Millionen von Verbindungen... Gibt es da Erfahrung ?

Zahlen zur Performance kann ich dir nicht geben. Für meine Projekte miete ich sehr günstige leichtgewichtige V-Server. Trotzdem habe ich ständig Sorge, dass sie vor lauter Langeweile sterben.

Dunkel kann ich mich daran erinnern, von einem synthetischen Test mit mORMot gelesen zu haben: Desktop Rechner mit Linux - >70K Requests/sec. Vielleicht einfach mal mit den mORMot Demos einen eigenen Test starten. Das Ergebnis würde mich auch sehr interessieren.

Hier noch etwas aus dem Forum und einem Blog Artikel:
mORMot - Windows (http.sys/FastMM4) vs Linux
Win 100GB of log space from a Real Life mORMot Project

Frohe Weihnachten...
Thomas

himitsu 27. Dez 2020 14:33

AW: FCM-ähnliches für Windows
 
Nja, da in den seltenstens Fällen nicht der "Server" eine Verbindung zum Client aufbauen kann,
also indem man auch in den Client einen "Server" einbaut, welche dann auf Verbindungen/Daten warten kann,
muß der Client eben entweder Pollen und ständig fragen ob was da ist, oder er baut eine "dauherhafte" Verbindung auf und über den Rückkanal kann der Server zurückschreiben.

Viele Frameworks haben Callbacks.
z.B. Datenbanken/Komponenten oder sowas wie mORMot und DataSnap.

Ohne Datenübertragung werden "dauerhadt" Verbindungen ab und an auch mal wieder getrennt (Timeouts),
drum wird auch da oftmals "gepollt", also ein "ich lebe noch" gesendet. (bekannt z.B. vom NOOP beim FTP)
Außerdem kann man das "ich lebe noch" auch verwenden, um zu prüfen ob die Verbindung noch besteht, um sie notfalls wiederherstellen zu können.

Wenn aber keine "stabile" Netzwerkverbundung besteht (arschlangsames Modem, WLAN, Handy usw.), dann gibt es öfters mal Abbrüche, wodurch die Callbacks versagen (vor allem wenn nichts eingebaut wurde, um den Abbruch zu erkennen und zu beheben)

z.B. obwohl DataSnap intern "ursprünglich" eine Datenbankverbndung benutzt (dbExpress und später optional auch REST), sind/waren dessen Callback sehr unzuverlässig.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:43 Uhr.

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