AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Socket-/Http-Verbindung in Threads
Thema durchsuchen
Ansicht
Themen-Optionen

Socket-/Http-Verbindung in Threads

Ein Thema von Wollaston · begonnen am 20. Feb 2010 · letzter Beitrag vom 21. Feb 2010
Antwort Antwort
Wollaston

Registriert seit: 22. Feb 2009
4 Beiträge
 
#1

Socket-/Http-Verbindung in Threads

  Alt 20. Feb 2010, 12:17
Hallo Zusammen,

ich soll einen Dienst schreiben über den mit verschiedenen externen Anwendungen kommuniziert werden soll. Dies kann über Dateiaustausch, serielle Kommunikation, Socket-Verbindung und WSDL geschehen. Jede Anbindung soll dynamisch über einen DB-Eintrag aktiviert oder nicht aktiviert werden können.

Meine Idee war die einzelnen Anbindungen in einzelnen Klassen zu kapseln und für jede Anbindung einen einzelnen Thread zu erstellen. Für den Dateiaustausch ist das auch kein Thema, While-Schleife im Thread-Execute und gut. Nur bei den anderen Wegen habe ich ein Verständnisproblem.

Da die Socket-/Http-Verbindungen (Indy) ja eigenständig laufen und über Events reagieren frage ich mich, ob ein Thread hier Sinn macht. Wie geht man bei soetwas vor?
  Mit Zitat antworten Zitat
Astat

Registriert seit: 2. Dez 2009
Ort: München
320 Beiträge
 
Lazarus
 
#2

Re: Socket-/Http-Verbindung in Threads

  Alt 20. Feb 2010, 18:27
Hallo Wollaston,

Dienst Schreiben, verschiedene Externe Anwendungen, Sockets, DB, WSDl, Serielle Kommunikation,
Threads und auch noch die Indys.

Also ich weiss nicht ob es anderen auch so geht, aber ich hab keine Ahnung was du eigentlich willst?

Erklär doch bitte mal alles genauer, dann kann man leichter helfen.

lg. Astat
Lanthan Astat
06810110811210410503210511511603209711003210010110 9032084097103
03211611111604403209711003210010110903210010510103 2108101116122
11610103209010110510810103206711110010103210511003 2068101108112
10410503210310111509910411410510109810111003211910 5114100046
  Mit Zitat antworten Zitat
mjustin

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

Re: Socket-/Http-Verbindung in Threads

  Alt 20. Feb 2010, 19:38
Zitat von Wollaston:
Da die Socket-/Http-Verbindungen (Indy) ja eigenständig laufen und über Events reagieren frage ich mich, ob ein Thread hier Sinn macht. Wie geht man bei soetwas vor?
Indy arbeitet bei Socket/Http in der Regel auch mit Threads. Also würde eine Anbindung für Sockets einen Thread benötigen, in dem für eingehende Verbindungen dann ein Port z.B. für Telnet aufgemacht wird. Daran können sich dann (einer oder mehrere) Clients anmelden, auf die der Server dann parallel reagieren kann. Auch der umgekehrte Fall ist möglich, dass die Socket-Verbindung nicht vom entfernten Client sondern von der Anwendung (Anbindung) hergestellt wird. Im ersten Fall wird die Anbindung die Rolle eines Servers annehmen, im zweiten die eines Clients.

Die Anforderung einer Multiprotokoll-Anwendung klingt allerdings nach einer ziemlich grossen technischen Herausforderung - wartungsfreundlich (Stichwort: Update der Software im laufenden Betrieb) und robust sollte sie ja auch sein, und aus eigener Erfahrung wird man immer weitere Sonderfälle in der Anwendung haben wollen, bis ihre UML-Diagramme Ähnlichkeit mit dem Bauplan einer Erdölraffinerie haben

Cheers,
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat
Wollaston

Registriert seit: 22. Feb 2009
4 Beiträge
 
#4

Re: Socket-/Http-Verbindung in Threads

  Alt 21. Feb 2010, 20:39
Vielen Dank an Euch.

Ich habs einfach mal probiert und habe im Thread-Execute einen Private Indy Http-Server gestartet. Das ganze funktioniert soweit. Ich hatte nur Verständnisprobleme wie ich Client- und Server-Objekte im Thread benutze weil diese ja eigene Threads haben.

@mjustin
Der Vergleich mit der Erdölraffinerie passt ganz gut. Aber zu meinem Glück sind die einzelen Anbindungen in unserer Software schon vorhanden und sollen "nur" vom Frontend getrennt werden.

Gruß
Wollaston
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:52 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