Re: Performance: SQL-Server mit ASP-NET oder WinForms



Calle Manthey wrote:
....
> ich will eine App bauen, in der bei der Datenerfassung auf ca. 9.000
> vorhandene Datensätze in einem MS SQL-Server zugegriffen werden muß,
> um dort den jeweils aktuellen zuerfassenden Datensatz hierarchisch
> anzuhängen.

Calle,
für eine eindeutige Antwort ist das zu wenig Information. Z.B. ergeben 9000
Datensätze mit 4 Byte für PK und 10 Byte Text lediglich 130 kByte
Information, was für eine 2 MB-Leitung nun keine Belastung darstellt.

> Geplant war das als ASP-NET App. Inzwischen bekomme ich große
> Bauchschmerzen wegen der Performance:
> - Ist in diesem Fall nicht eine WinForm-App generell schneller?

Der Algorithmus der Realisierung ist von größerer Bedeutung als Unterschiede
zwischen WinForm-App und WebForm-App.

> Oder:
> - Wird eine ASP.NET-App. beim Datenzugriff schneller, wenn der
> WebServer und der SQL-Server mit im lokalen Netz hängen (gegenüber
> einer 2MBitLeitung wenn die Server
> im Internet erreichbar sind)?

Die Abarbeitungszeit hat mehrere Bestandteile:
Applikation - Netz - Datenbank-Server.
Natürlich trägt ein unbelastetes 100MB-Netz anteilig mehr zur Beschleunigung
der Anwednung bei als besipielsweise eine 2MB-Leitung, die vielleicht noch
zusätzlich belastet ist. Wichtig wäre zu ermittelen, wie hoch dieser Anteil
ist. So etwas kann man nur durch Tests unter realen Bedingungen ermitteln.

> Oder:
> - Was ist der beste Weg, um 9.000 Datensätze als Refernzdaten im sehr
> schnellen Zugriff zu haben
> (diese Referenzdaten müssen auch noch vom Client sortiert werden
> können um möglichst schnell
> auf den richtigen Satz verweisen zu können)

Was verstehst du unter "bester" Weg? Amschnellsten ist garantiert, die
Mittel und Möglichkeiten des Datenbankservers zu nutzen. Dieser kann die
Datensätze beispielsweise bereits sortiert bereitstellen.

> Oder:
> - Was ist die Hauptbremse bei einem Disconnected Scenarium:

Die Hauptbremse ist meist der Projektant, der eine unpassende Realisierung
aufbaut:-)

> die
> Datenselection via Select auf
> dem SQL-Server,

Das hängt davon ab, wie komplex die Abfrage ist und wie der Server noch
belastet ist. Vielfach geschachtelte JOIN und WHERE..IN.. können für den
Server eine große Last erzeugen.

> das Transportieren der selektierten Daten vom
> WebServer zum Browser (das entfällt
> ja wohl in einem WebForm-Scenario wenn alles im LAN stattfindet)?

Der Transport vom Server zum Client entfällt nicht. Er kann bei schenllem
Netz nur weniger Zeit in Anspruch nehmen.

> Oder:
> - Wie macht man solch große Datenmengen für den Anwender sichtbar (im
> Grid, TreeView, CoboBox)?

Überhaupt nicht. 9000 Datensätze kann kein Anwender im Stück übersehen. Da
sind zwingend logische Gliederungen erforderlich, um struktueriert schnell
zuzugreifen. Anderfalls ist der Anwender die größte Bremse in der
Abarbeitung.

Bei diesem strukturiertem Zugriff kann der Einsatz aller drei Control
günstig sein:
- ComboBox: grobe Vorauswahl zwischen ca. 5 Kategorien
- TreeView links: weitere Auswahl zwischen 10 Hauptknoten mit jeweils 10
Unterknoten
- DataGrid rechts: Endauswahl zwischen 20 Datensätzen

Bei dieser Technologie braucht man nicht alle Datensätze zu übertragen,
sondern immer nur das, was ausgewählt wurde. Das geht garantiert am
schnellesten.

Peter

.



Relevant Pages

  • Re: Homegrown synchronization
    ... to check for update files in the Import DropBox for the server. ... similar to the import code used to update a remote backend). ... code to close the "sync" app. ... synch app, but only one at a time would be able to do synchs. ...
    (microsoft.public.access.replication)
  • RE: Beginners Questions
    ... We do use Windows form on the presentation layer which is on ... terminal server and call web services on the business logic side. ... of using "proxy" authentication on SQL Server. ... > I have written an app with a Windows Forms UI that is deployed to clients ...
    (microsoft.public.dotnet.distributed_apps)
  • Re: Ruby Enterprise App Design Advice
    ... Load balanced to send user to best server. ... FastCGI or SCGI - We would like to replace FastCGI with something ... certain instance and want to have a single session server (if I understand ... deals with login and logout and assigns an app server. ...
    (comp.lang.ruby)
  • RE: C++ Garbage Collector on VMS?
    ... And HW is usually not a problem in th app tier. ... One for App server, one for DB. ... Tiers were a great concept when HW could not keep up with the processing required by each tier and network speeds were slow and unreliable. ... In small to medium app environments, ...
    (comp.os.vms)
  • Re: Schannel and Session Renegotiation
    ... Schannel does not support the server sending app ... We are discussing the option of providing support for the client blowing off ...
    (microsoft.public.platformsdk.security)

Loading