Einzelnen Beitrag anzeigen

mjustin

Registriert seit: 14. Apr 2008
3.005 Beiträge
 
Delphi 2009 Professional
 
#3

AW: Bitte um Hilfe für Webservice/Gateway/PortListener

  Alt 20. Sep 2012, 06:54
System A soll Informationen in einem String an das Zwischenprogramm schicken, dieses wiederum parst den String, bereitet ihn auf und schickt in passend an System B.
System A schickt in unterschiedlichsten Zeiträumen solche Informationen.
Können denn beide Programme um Funktionen erweitert und neu kompiliert werden?
(Oder haben sie schon irgendeine Möglichkeit, Daten zu senden (A) oder zu empfangen (B)?)

Denn der WebService müsste ja A bekannt gemacht werden, damit A dahin senden kann, und B muss eine Eingangsschnittstelle haben, damit der Webservice B ansprechen kann.

Auf welche Weise (Übertragungsprotokoll) sendet A seine Informationen zur Zeit?

Angenommen, beide Systeme sind änderbar, kommen verschiedene Techniken in Frage. Hier ein Beispiel mit HTTP:

Schritt 1:
* Anwendung A kann über ein Protokoll wie HTTP Daten an C senden. Dazu benötigt A einen HTTP Client und C einen HTTP Server, der auf einem freien Port läuft. (Internet Direct (Indy) enthält einen einfachen HTTP Server)

Schritt 2:
* Anwendung C verarbeitet die erhaltenen Daten um sie für B passend zu machen.

Schritt 3:
* um die Daten von C an B zu übermitteln, gibt es zwei konträre Möglichkeiten, je nachdem, welcher Partner die Verbindung herstellen darf (d.h. wer Client und wer Server ist):

- wenn die Anwendung B auch einen integrierten HTTP Server starten darf, dann kann C als HTTP Client mit B kommunizieren. (C sendet den HTTP Request an B)

- falls die Anwendung B keinen integrierten HTTP Server enthalten darf (z.B. wegen Firewall), kann sie stattdessen als HTTP Client in regelmäßigen Abständen auf den Server C zugreifen und auf neue Nachrichten prüfen. Der Server auf C puffert die Nachrichten dazu bis sie von B abgerufen werden. Um Datenverlust zu vermeiden, kann C die Daten persistent machen (z.B. in einer kleinen lokalen Datenbank).
Michael Justin
habarisoft.com

Geändert von mjustin (20. Sep 2012 um 07:24 Uhr)
  Mit Zitat antworten Zitat