Client- / Serverlösung

Operator_Jon

Erfahrenes Mitglied
Hallo liebes Forum,

ich hoffe das folgende Thema passt hierhin :eek:.

Ich möchte Daten von einer Serveranwendung an ca. 500 Clientanwendungen über das Internet verteilen.
Ich dachte zunächst an eine MySQL-Datenbank, in die der Server schreibt und von der die Clients lesen. Nun bin ich allerdings nicht so bewandert was die Sicherheit einer solchen Lösung angeht, denn die Zugangsdaten für den MySQL Server sind auf den Client Computern ja nicht gerade sicher...
Meine nächste Idee war es also bei der MySQL Verbindung zu bleiben, aber einen ASP.NET Webservice dazwischen zu setzen. Nun bin ich mir hier aber nicht so sicher was die Performance angeht, denn die Daten sollten schnellstmöglich beim Client ankommen.
Eine andere Möglichkeit wären vielleicht noch... Sockets glaube ich heißt die Technik, damit habe ich aber leider keine Erfahrung (was, wenn es sinnvoll ist, kein Problem wäre es zu ändern!).

Nun zu meiner Frage:
Was denkt Ihr wäre die beste Möglichkeit soetwas zu tun, natürlich mit größtmöglicher Sicherheit vor Angriffen...
(Wenn die Daten gelesen würden wäre es nicht so schlimm, allerdings dürfen auf keinen Fall falsche Daten durch einen Hacker in das System gelangen, denn das wäre finanziell für die Kunden fatal!).
... und auch größtmöglicher Performance!?

Vielen Dank im Vorraus,
schöne Grüße,
Jonathan
 

Operator_Jon

Erfahrenes Mitglied
Hat wirklich keiner einen Rat für mich?
Oder kann mir jemand eine Forensektion empfehlen wo das Thema besser aufgehoben wäre :)?
 

Nico Graichen

Erfahrenes Mitglied
Hi

Der Flaschenhals ist bei der Übertragung übers Internet nicht die gewählte Technologie in der Programmierung sondern eher die Verbindung zw. Client und Server (speziell der Upstream).

Den direkten Zugriff auf die Datenbank solltest du nicht wählen. Das Risiko ist hier viel zu hoch, dass jemand unberechtigt auf deine DB zugreift. Auf eine Datenbank sollte nie direkt über das Internet zugegriffen werden. (Hast du ja auch schon richtig erkannt)

Die Frage ist hier, was für Daten über die Leitung gehen sollen.
Wenn du vorallem viele strukturierte Daten hast würde ich Sockets nicht empfehlen. Die Payload ist hier zwar am geringsten, der Aufwand die Daten aber entsprechend zu ver- und entpacken aber dafür umso höher.

Ich empfehle dir, dass du dir mal WCF anschaust. Es ist ähnlich den von dir angesprochenen Xml WebServices, aber leichter zu händeln.
 

Operator_Jon

Erfahrenes Mitglied
Hallo,

vielen Dank für die Antwort!
Das Projekt so wie ich es ursprünglich vorhatte habe ich verschoben, deshalb auch noch keine weiteren Fortschritte.
Mein letzter Ansatz war ein Webservice welcher auch sehr gut funktionierte.

Die Version die ich zurzeit nutze funktioniert über Sockets, hat aber auch nicht den Umfang des ursprünglichen Projekts!
Sie ist aber auch nicht primär für das Internet gedacht sondern eher als Möglichkeit im Netzwerk zu laufen (Außerdem benutze ich eine C++ DLL die mit dem Programm kommuniziert (C++ ist leider zwingend in diesem Fall), ich glaube nicht das ich WCF mit C++ nutzen kann?).

Ich habe mir gerade WFC in der MSDN angesehen, das scheint die richtige Technik für das Projekt zu sein!
Falls ich irgendetwas nicht in der MSDN finde sobald es soweit ist, melde ich mich nochmal :)!

Danke bis hierhin,

schöne Grüße,
Jonathan