Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Alternative zu DCOM gesucht (https://www.delphipraxis.net/140930-alternative-zu-dcom-gesucht.html)

ToFaceTeKilla 29. Sep 2009 08:56

Datenbank: MS SQL Server • Version: 2000/2008 • Zugriff über: ADO

Alternative zu DCOM gesucht
 
Hiho,

wir überlegen gerade ob wir im Zuge der Vorbereitung auf Delphi2010 gleich mal auf ein anderes Kommunikationmodell umsteigen.
Mir fiel die Aufgabe zu, mich mal nach Alternativen zu DCOM (was wir gerade nutzen) umzuschauen.
Bin dann schließlich auf WCF gestoßen. Kann mir dazu jemand bisschen was erzählen? :-) Ist das schneller/besser als DCOM? Besser könnte ich mir durchaus vorstellen, weil DCOM ja nur eine Teilmenge von WCF ist.
Gibts noch andere Methoden, die evtl. performanter sind?

Thx

Chris.R 29. Sep 2009 10:30

Re: Alternative zu DCOM gesucht
 
Hallo,

WCF ist ein Teil des .Net Frameworks und wird mit Delphi 2010 nicht zu realisieren sein, es sei denn Ihr schreibt es selbst.

Kommunizieren eure Anwendungen untereinander mit DCOM oder kommuniziert ihr mit Anwendungen von Drittanbietern??

Geht es um Client/Server Kommunikation?

DCOM ist ja eher ein RPC (Remote Procedure Call) Protokoll und kein klassisches Kommunikationsprotokoll.

Ciao Chris

ToFaceTeKilla 29. Sep 2009 10:38

Re: Alternative zu DCOM gesucht
 
Ja es geht um Client/Server-Kommunikation. Ist da RPC nicht der richtige Ansatz?
Also genauer gesagt, geht es um die Kommunikation zwischen MS SQL Server und unserem Anwendungsserver (eigene SW).
Danke schonmal soweit

Chris.R 29. Sep 2009 10:49

Re: Alternative zu DCOM gesucht
 
Hallo,

ihr greift über DCOM auf den MSSQL Server zu? Nicht über DbExpress oder ADO?

Ciao Chris

ToFaceTeKilla 29. Sep 2009 11:00

Re: Alternative zu DCOM gesucht
 
Nein der direkte Zugriff erfolgt über Delphi. Aber die Mitteilungen an den Anwendungsserver vom SQL Server gehen über DCOM.
"Da wo er seine Ergebnisse hinschickt" (Zitat mein Kollege).
Ich kann das leider auch nicht so richtig erklären, da ich das nicht programmiert hab und die Aussage so hingenommen hab...

Chris.R 29. Sep 2009 11:24

Re: Alternative zu DCOM gesucht
 
Hallo,

ganz versteht ich das nicht. Was für Mitteilungen schickt den der Sql-Server über DCOM an euren Anwendungsserver?
Wenn aber der Sql-Server direkt mit integrierten Mitteln mit eurem Server kommuniziert, dann seid ihr auf die Protokolle,
die der Sql-Server unterstützt, festgelegt.

Ciao Chris

generic 29. Sep 2009 12:18

Re: Alternative zu DCOM gesucht
 
Das Datasnap unter Delphi 2010 ist richtig Klasse geworden.
Du kannst natürlich auch auf Rest oder Soap Basis arbeiten.

ToFaceTeKilla 29. Sep 2009 12:28

Re: Alternative zu DCOM gesucht
 
Hm hab jetzt nochmal nachgefragt und jetzt heißt es, der Client kommuniziert mit dem Anwendungsserver über DCOM. Ist auch irgendwie logischer...
Soap und Rest? Hm, werd das mal in die Runde werfen und mich mal dazu schlau machen.
Achja und einer der Gründe weswegen wir von DCOM weg wollen, ist dass es da offensichtlich Probleme mit Vista/7 in Sachen Benutzerrechte (UAC) gibt.

Thx

fajac 29. Sep 2009 12:36

Re: Alternative zu DCOM gesucht
 
Wenn ich das richtig verstanden habe, benutzen eure Clients DCOM, um auf dem Anwendungsserver Aktionen anzustoßen, die dann intern mit SQLServer arbeiten. Richtig?
Wenn nicht, vergiss das folgende :wink:
Wir arbeiten hier auch mit DCOM und haben damit große Probleme. Das fängt damit an, dass es sehr kompliziert ist, auf den einzelnen Rechnern die Rechte so zu verwalten, dass sie Zugriff auf die DCOM-Server haben und hört damit auf, dass die Kommunikation häufig aus unerfindlichen Gründen eingestellt wird und der Server beendet werden muss.
DCOM hat eigentlich nur einen Vorteil: Du kannst eine Instanz des Servers einfach dadurch starten, dass du eine Serverfunktion aufrufst. Das System erledigt den Rest.
Nachteil: Die DCOM-Kommunikation läuft auf dem Server im Haupt-Thread. Man kann zwar andere Threads nach Aufruf von CoInitialize(Ex) benutzen, aber um z.B. ein Abfrageergebnis an den Client zurückzuschicken musst du wieder in den Hauptthread, sonst knallts (Vielleicht sind wir ja auch nur zu blöd dafür, aber wir haben schon viel probiert...).

Daher wird die nächste Version von unserem Server als Windows-Service laufen und per TCP/IP kommunizieren. Webservices wären eine Alternative, aber, da wir nur im LAN kommunizieren, eher Overkill. Dasselbe gilt m.E. für WCF. Wenn du allerdings übers WAN mit dem Server reden willst, ist WCF eine gute Sache, weil die Authentifizierung integriert und gut gelöst ist. Dummerweise ist dann Delphi erstmal außen vor.

ToFaceTeKilla 29. Sep 2009 12:44

Re: Alternative zu DCOM gesucht
 
@fajac:
Ich würde sagen Volltreffer :thumb: ^^
So ist das bei uns auch, wenn ich das richtig mitbekommen habe. Hm die Kommunikation soll schon über WAN gehen - aber auf Delphi können wir nicht verzichten. Also wäre ja eine Lösung über TCP/IP und Webservices zu gehen, oder?
Habt ihr auch Probleme mit Vista / 7 und DCOM? Anscheinend lief unser Client unter XP usw. immer unter dem Hauptbenutzer, weswegen wir uns jetzt allerhand Probleme gegenüber sehen. (Nichts genaues weis ich nicht - Asche über mein Haupt, war bisher nicht meine Baustelle xD)


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:18 Uhr.
Seite 1 von 2  1 2      

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