AW: A99 und WebDAV
Thomas Berger
ThB at gymel.com
Mo Mär 10 08:47:43 CET 2003
Lieber Herr Henkel,
> Ja, der Zugriff müsste über eine entsprechende API erfolgen, vor allem
> dürfte nicht, wie das gegenwärtig zuweilen der Fall zu sein scheint, mit
> einer lokalen Kopie gearbeitet werden, die dann zurück geschrieben wird
> (dieses Verfahren ist, wenn ich richtig verstanden habe, aber nicht
> zwingend, sondern eher die Folge mangelhafter Implementation; DavFS zum
> Beispiel scheint "inplace" zu schreiben)
Das gaengige Paradigma scheint aber die Abbildung eines
Dateisystems zu sein mit Anwendungen wie "Distributed Authoring"
(DA) und "Versioning" (V). Da hat man das immer so gemacht.
Ansonsten, wenn Sie "lokale Kopie" durch "Netzwerkcache"
ersetzen, ist es alles wieder ziemlich gleich.
> Ansonsten: ich kenne mich zwar in Allegro nicht so gut aus, aber ist das
> Setzen eines Bits in der xxx.tbl nicht auch eher ein File- als ein
> Recordlocking? Und gesetzt, man könnte wirklich mit konventionellen Mitteln
> in place arbeiten, käme dann das Dav-Locking dem nicht gleich?
Wir haben hier ja mehrere Stufen:
1.) Datei ist zum Schreiben oder Lesen geoeffnet (Dateisystem)
2.) Gewisse umgeklappte Bits bedeuten Sperrungen (Allegro)
3.) Dateisperren realisieren sauberen Umgang mit 2. (Dateisystem)
[Und das ist logisch alles noch in einer hoeheren Schicht
angelegt als das reale Dateisystem mit Sektoren und Bloecken,
das wiederum eine Abstraktion der realen Fest- oder Sonstwie-
plattensituation ist].
Genau, wie ein Datenbankclient, der via Dateisystem operiert
(a99, MS-Access) ineffizienter ist als ein Datenbankclient,
der ueber Schnittstellen (ODBC, Avanti-"Protokoll") auf einen
Datenbankserver zugreift, waere ein ueber DavFS-Client
zugreifender Datenbankclient ziemlich langsam (HTTP ist
zwar ggfls. "zuverlaessiger", leidet aber unter langen
Latenzzeiten, vermutlich auch bei den persistenten Verbindungen
von HTTP 1.1, wie sie heutzutage meist ueblich sind).
Der Ansatz von DAD ist m.E. aehnlich wie bei ODBC eine
Abstraktion von Datenbankzugriffen und Datenbankobjekten
zu identifizieren, die weder mit Dateien (zu grob, zu
spezifisch) noch mit dem Dateisystem (zu fein, zu spezifisch)
umgeht, sondern versucht, das Faktum "Datenbank" in DAV
abzubilden. Dazu braucht es natuerlich serverseitig einen
allegro-DAV-Server und Clientseitig einen allegro-DAV-Client.
Am naechsten kommt dem das, was Herr Pfeiffer vor Jahren
einmal fuer das VD 17 implementiert hat: Im Prinzip ein
"in der Mitte durchgesaegtes" a99 oder PRESTO, die eine
Haelfte ist beim Benutzer, die andere Haelfte weit entfernt
auf dem Server. Uebertragen werden hoch abstrahierte
"Aktionen" und "Ergebnisse".
> Man hätte letztendlich doch eine ähnliche Situation wie bei einer
> Windows-Freigabe, nur dass einen wahrscheinlich eine gewisse Scheu davor
> bewahren würde, SMB für grössere Entfernungen von Client und Server zu
> verwenden, während ich zu etwas http-ähnlichen etwas größeres Zutrauen
> hätte.
... das seinen Preis hat ...
viele Gruesse
Thomas Berger
Mehr Informationen über die Mailingliste Allegro