Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Klatsch und Tratsch (https://www.delphipraxis.net/34-klatsch-und-tratsch/)
-   -   Wer nutzt denn alles DataSnap? (https://www.delphipraxis.net/158379-wer-nutzt-denn-alles-datasnap.html)

Furtbichler 11. Nov 2011 19:50

AW: Wer nutzt denn alles DataSnap?
 
Midas läuft seit 12 Jahren in einem selbst entwickelten MES. Probleme gibt es keine, ich betreue das System immer noch.

stahli 11. Nov 2011 19:54

AW: Wer nutzt denn alles DataSnap?
 
@Sir Rufo

Kannst Du etwas konkreter werden?

Wenn die Option im Raum steht, das Projekt evtl. mal irgend wohin zu portieren oder einen Webbrowser-Client zusätzlich zu erstellen, dann kann ich das schon nachvollziehen.

Wenn das Projekt aber dauerhaft mit VCL-Forms und einem einmal festgelegten Dantanbankserver in einem Netzwerk laufen soll, dann reduziert sich der Nutzen doch schon wieder, oder?
Es bliebe also die Frage, ob ich eine "normale Netzwerkanwendung" effektiver erstellen und weiter entwickeln kann.

Die ganzen SQL-Statements etc. werden ja dann genau so benötigt, nur eben auf dem DataSnap-Server und nicht in den Clients...
(Ich muss mir dann (nach dem Fußball ;-)) mal noch ein paar Webinare anschauen)

stahli 13. Nov 2011 13:25

AW: Wer nutzt denn alles DataSnap?
 
MEissing´s Webinare sind schon interessant. Es geht aber dort nur so weit, dass existierende DB-Tabellen mal fix übertragen und angezeigt werden.
Wenn man einen Applicationserver einrichten kann, von dem man sowohl DB-Tabellen als auch irgendwelche Funktionsergebnisse abrufen (und natürlich Werte ändern) kann, klingt das schon reizvoll.
Die Clients müssen keine Daten und Logik mehr haben sondern sind lediglich für Darstellungen und Eingaben da.

Einige Fragen habe ich aber noch:

Wenn eine Tabelle mal 100.000 Datensätze hat und man diese an ein DBGrid bindet, puffert DataSnap dann automatisch die notwendigen zu übertragenden Daten oder werden alle 100.000 Datensätze an den Client übertragen?
Wie werden geänderte Datensätze an den Server zurück gesendet? Geht das automatisch oder muss der Client das explizit veranlassen?
Wie werden Konflikte verwaltet (ein Client will einen inzischen gelöschten oder geänderten Datensatz überschreiben). Es hat ja nur DataSnap Zugriff auf die DB (es gibt also wohl nur eine Transaktion)?

Ist eigentlich eine Art DataBinding von GUI-Controls an den DataSnap-Client möglich oder denkbar?
Ich meine das in der Form, dass man einem Edit eine Serverfunktion (z.b. die
Delphi-Quellcode:
function Person(ID: Integer): TPerson
) sowie eine ID zuweist und das Control sich bei Bedarf automatisch die benötigten Daten vom Server abruft bzw. Änderungen hin schickt.

Sir Rufo 13. Nov 2011 14:28

AW: Wer nutzt denn alles DataSnap?
 
Zitat:

Zitat von stahli (Beitrag 1135971)
Ist eigentlich eine Art DataBinding von GUI-Controls an den DataSnap-Client möglich oder denkbar?
Ich meine das in der Form, dass man einem Edit eine Serverfunktion (z.b. die
Delphi-Quellcode:
function Person(ID: Integer): TPerson
) sowie eine ID zuweist und das Control sich bei Bedarf automatisch die benötigten Daten vom Server abruft bzw. Änderungen hin schickt.

Um Himmels Willen bloß nicht ... Das edit Feld sollte solchen komplexen Operationen nicht vornehmen.
Schau dir dazu mal DSharp an, dann willst du sowas nie wieder versuchen ;)

stahli 15. Nov 2011 11:32

AW: Wer nutzt denn alles DataSnap?
 
Wie meinst Du das?

Wie eine Bindung an eine Objekteigenschaft funktioniert ist mir grundsätzlich schon klar. Bei einer Multi-Tier-Anwendung sehe ich aber das Problem, dass das zu nutzende Objekt auf dem Client möglicherweise noch gar nicht erzeugt worden ist bzw. dass die Daten erst von Server neu abgerufen werden müssen.
Daher denke ich, dass eine einfache Objektbindung nicht reicht.
Die Controls müsseten sozusagen direkt an den Proxyserver (bzw. eine bestimmte Funktion) gebunden werden.
Mir ist nicht klar, wie man den händischen Weg "aktuelle Serverdaten abrufen -> in das Edit schreiben -> Edit.Text an Server schicken" automatisieren kann.


PS: Falls jemand noch eine Antwort auf die anderen Fragen (größere Datenmengen / Änderungen rückschreiben / Konflikte) hat... das wäre noch nett.

sh17 23. Mär 2017 13:02

AW: Wer nutzt denn alles DataSnap?
 
Den grabe ich auch nochmal aus.

Wie ist der aktuelle Stand der Dinge bei DataSnap im Vergleich vielleicht zu RemObjectsSDK?

- Geschwindigkeit
- Stabilität

jaenicke 23. Mär 2017 14:49

AW: Wer nutzt denn alles DataSnap?
 
DataSnap ist nach wie vor relativ langsam. Unser größtes Problem ist aber die Verwendung von Blocking Sockets. Ansonsten gab es wenig Anlass zur Beschwerde.

Wir sind nun für einige Fälle auf ein Framework umgestiegen, das zwar deutlich weniger kann, aber schnell, einfach und nicht blockierend arbeitet, nämlich RTC. Das hat auch den Vorteil, dass es auch unter Android funktioniert, während das bei DataSnap nicht für alle Funktionen gilt.

Das Remobjects Remoting SDK kann zwar natürlich deutlich mehr, ist auch nach wie vor schneller als DataSnap und würde ich RTC und DataSnap vorziehen, aber da es genauso viel wie die Enterprise Edition von Delphi im Jahr kostet und wir die Funktionalität gar nicht ausnutzen würden...


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:41 Uhr.
Seite 4 von 4   « Erste     234   

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