Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Berechnungen vom Programm oder vom Server durchführen lassen? Vor- und Nachteile

Frage Entwicklung

Mitglied: 85232

85232 (Level 1)

21.05.2010 um 18:42 Uhr, 3473 Aufrufe, 2 Kommentare

Hi Community,
ich habe da noch eine Frage bezüglich Berechnungen. Und zwar würde ich gerne wissen, ob es etwas ausmacht Berechnungen vom Server durchführen zu lassen oder vom Programm.

Um es einfach zu halten, habe ich versucht mir ein kleines Beispiel auszudenken.

Und zwar möchte ich das Volumen ausrechnen und in SQL Datenbank speichern.

Möglichkeit 1:
Ich schreibe ein kleines Programm mit den Feldern A, B, C und V. Dann lasse ich den Benutzer die Flächen A,B und C ausfüllen und lasse dann V= Volumen durch eine einfache Funktion (A*B*C) berrechnen und dann die Werte in die SQL Datenbank speichern.

Möglichkeit 2:
Ich schreibe ein kleines Programm mit den Feldern A,B und C. Der Benutzer gibt die Daten ein und schickt sie an den SQL-Server. Danach übernimmt der SQL Server die Berrechnung.


Mir ist klar, das bei diesem kleine Beispiel die Zeit wohl keine Rolle spielt, aber wie ist es bei größeren Projekten? Welche Methode ist für die Schnelligkeit am besten geeignet (möglicherweise noch eine ganz andere nicht aufgeführte)?


Vielen Dank und Gruß
speckles
Mitglied: 48507
21.05.2010 um 18:52 Uhr
Kommt auf die Anzahl der Clients und die "Rechen-Power" des Servers an. Größere Berechnungen würden zumindest zeitweise den Server "beschäftigen" (die anderen Clients müssten hier warten, schließlich arbeitet der Dienst alles nacheinander ab). Ich habe schon mit vielen DB-Anwendungen gearbeitet (z.B. Navision) - die Berechnung hat stets der Client übernommen. Bei den heutigen PCs mit 2 oder gar 4 Cores (sofern die Anwendung diese nutzt) ist es absolut kein Problem.
Bitte warten ..
Mitglied: Biber
21.05.2010 um 19:32 Uhr
Moin speckles,

die Berechnung von Werten wird so oder so nicht der Engpass sein, sondern immer
  • das Volumen der transferierten Daten von Client nach Server und umgekehrt
  • serverseitig das Finden der Daten, die der Client haben will
  • und vor allem, wenn Daten (egal ob die Detaildaten oder die Ergebnisdaten) auf dem Server gespeichert werden sollen das Handeln von konkurrierender Verarbeitung.

Parallelisieren lässt es sich ja nur sinnvoll, wenn in deinem Beispiel sichergestellt ist, dass nicht gleichzeitig 100 Benutzer die gleiche Berechnung mit den vom Server geholten Werten A, B und C machen und logischerweise auch dasselbe Ergebnis im selben Ergebnissatz speichern wollen.

In der Tendenz solltest du (Massen-)Berechnungen auf dem Server immer außerhalb der Online-User-Spitzenzeiten als Batch/als Stored Procedure durchführen lassen und bei allem, was ohnehin Benutzerinteraktion (Eingabe von Werten oder Parametern) erfordert so gestalten, dass der Datenverkehr zwischen Clients und Server gering bleibt. Also auf dem Client "rechnen" lassen.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Cloud-Dienste
Lieferanten auf eigenem Server arbeiten lassen (2)

Frage von pmsfw22 zum Thema Cloud-Dienste ...

Monitoring
gelöst Zugewiesene Benutzerrechte auf Server anzeigen lassen (1)

Frage von Fitzel69 zum Thema Monitoring ...

Windows Server
Programm als Dienst einrichten auf Server 2012 R2 (3)

Frage von survial555 zum Thema Windows Server ...

Windows Server
DNS Windows Server 2008R2 alte DNS Einträge löschen lassen (3)

Frage von WinLiCLI zum Thema Windows Server ...

Neue Wissensbeiträge
Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Router & Routing

PfSense auf Supermicro Intel Xeon D-15x8 SoC Bare Bone

Tipp von Dobby zum Thema Router & Routing ...

Windows Server

Exchange 2010 auf Windows Server 2016 und AD

(2)

Tipp von Herbrich19 zum Thema Windows Server ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Brauche Hilfe: Mit (schnellem) WLAN Strecke überbrücken (22)

Frage von pierrehansen zum Thema LAN, WAN, Wireless ...

Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (16)

Frage von FA-jka zum Thema Windows 10 ...

Basic
Programmierung von Windows Programmen (10)

Frage von Ghost108 zum Thema Basic ...