wenn sowohl Server als auch Client mit Delphi betrieben werden, kommst Du halt mit DataSnap außerordentlich schnell zu verwertbaren Resultaten.
Nicht nur dann, durch die nativen Clientanbindungen für verschiedene Systeme ist auch das sehr schnell.
Mir ist bewusst, dass DataSnap wahrscheinlich nie so gut ist wie eine eigene entwickelte Lösung.
Vor allem die beidseitigen Kommunikationsmöglichkeiten bekommt mal so einfach nicht selbst hin. Sprich, dass der Server auch z.B. Callbacks zurück schickt usw.
Wenn es dann aber um fortgeschrittene Themen wie Verbindungsabbrüche mit Sessions usw. geht, dann ist es nicht mehr so einfach. Ob das für deinen Anwendungsfall relevant ist, weiß ich nicht. Wir haben jedenfalls jetzt eine jetzt stabil laufende Lösung, die auch mit Verbindungsabbrüchen klar kommt und diese auch schnell erkennt und behandelt, mit DataSnap umgesetzt.
Bei anderen Frameworks ist die Performance wohl deutlich besser (Probleme hatten wir damit bisher aber weniger bei DataSnap), aber Themen wie Verbindungsabbrucherkennung usw. habe ich dort eher noch schlechter hinbekommen. Dazu kommt, dass die Integration schlechter ist als bei DataSnap und man diese Frameworks separat kaufen muss, sprich zusätzliche Kosten hat.
Und auch eine Eigenentwicklung kostet einiges in Form von Entwicklungszeit.
Bei dir hört sich das aber gar nicht so an als ob du einen Verbindungsabbruch erkennen musst. Und darauf zu reagieren ist einfach, im Grunde die
Exception beim Aufruf einer Servermethode abfangen und die Verbindung versuchen wieder aufzubauen. Genau das kann dann die angesprochene Zwischenschicht machen, die die Aufrufe der Servermethoden kapselt.
Deshalb würde ich nach den Informationen, die du gegeben hast, DataSnap für geeignet halten.