Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Planung von einem großen Verwaltunsprogramm (https://www.delphipraxis.net/82616-planung-von-einem-grossen-verwaltunsprogramm.html)

gsh 16. Dez 2006 11:51


Planung von einem großen Verwaltunsprogramm
 
Hi DPler

Ich bin gerade beim plannen von einem großen Verwaltungsprogramm. Dieses sollte mehere Kunden und daten verwalten können aber auch ein eigenes benutzer system besitzen. Also es sollte dann auf einem server laufen bzw. auf meheren clients. Der Client kann also dann beim starten unter angabe von benutzername und passwort sich zum server verbinden. Dort darf er jetzt verschiedene dinge machen je nachdem welche rechte er hat. Das ist alles jetzt nicht so des problem

ABER: Soll ich als server nur eine MySQL datenbank hernehmen und die clients verbinden sich zum mysql server oder ein eigenes server programm schreiben das clients akzeptiert und ihnen daten von der mysql datenbank übergibt?
Außerdem bin ich sehr besorgt um die performance, also wenn man in einer combobox einen benutzerauswählt dann wäre es ja der totalle performance killer wenn ich jedesmal die gesamte userliste übertrage, wie kann ich des am besten lösen?

Sonst nocht Tips? Anregungen? Kritik?


mfg
Alex

Mao 16. Dez 2006 12:01

Re: Planung von einem großen Verwaltunsprogramm
 
Serverprogramm und MySQL-Server auf gleichem Computer laufen lassen.
Das Serverprogramm kann sich dadurch schneller die gesamte User-Liste in einen internen Cache holen (am Besten immer beim Systemstart).
Und im Clientprogramm beispielsweise zwei Edit-Boxen. Ist sowieso sicherer, wenn man den User-Namen eingeben muss, statt auswählen. :)

gsh 16. Dez 2006 12:13

Re: Planung von einem großen Verwaltunsprogramm
 
Zitat:

Zitat von Mao
Serverprogramm und MySQL-Server auf gleichem Computer laufen lassen.
Das Serverprogramm kann sich dadurch schneller die gesamte User-Liste in einen internen Cache holen (am Besten immer beim Systemstart).
Und im Clientprogramm beispielsweise zwei Edit-Boxen. Ist sowieso sicherer, wenn man den User-Namen eingeben muss, statt auswählen. :)

Ne ich glaub du hast mich falsch verstanden.
Sry hab mich ein bissi komplitziert ausgedrückt.

Also wenn ich einen server programmier dann kommt der ganz sicher als service auf den server drauf wo dann auch die DB läuft. Aber es geht vorallem um die Kundenuserliste (fast 5 stelligen bereich und vllt. noch größer) es geht vorallem um die übertragung zwischen Server und client. Es wäre sicher nicht klug die liste bei jedem gebrauch neu vom server zu laden. Da sie sich aber ändern kann muss sie immer "frisch" sein

Igotcha 16. Dez 2006 13:37

Re: Planung von einem großen Verwaltunsprogramm
 
Ich glaube der Ansatz ist falsch.

Kein Mensch schaut sich am Client eine Liste mit 5000 Kunden an. Wozu gibt es Kundennummern, wozu gibt es Suchfunktionen?

Benutze diese und schränke damit die zu übertragenen Datensätze ein.

Gruß Igotcha

Mao 16. Dez 2006 14:34

Re: Planung von einem großen Verwaltunsprogramm
 
Hi. :)
Achso... :lol:
Hm, oder die Kundenamen so speichern:
eine Datenbank, mehrere Tabellen, die jeweils die beiden Anfangsbuchstaben des Vornamens enthalten. So werden auch nur nötige Informationen übertragen.
So ähnlich macht es übrigens auch Funpic, auch wenn dort (virtuelle) Server verwendet werden.

joel93 16. Dez 2006 14:45

Re: Planung von einem großen Verwaltunsprogramm
 
Ich würde für die Benutzer keine ComboBox nutzen, weil es dann viel einfacher wäre, das zu hacken, machs ganz normal (z.B.wie hier in der DP)

gsh 16. Dez 2006 18:05

Re: Planung von einem großen Verwaltunsprogramm
 
Zitat:

Zitat von Igotcha
Ich glaube der Ansatz ist falsch.

Kein Mensch schaut sich am Client eine Liste mit 5000 Kunden an. Wozu gibt es Kundennummern, wozu gibt es Suchfunktionen?

Benutze diese und schränke damit die zu übertragenen Datensätze ein.

Gruß Igotcha

Ne es geht nicht ums anschauen aber es sollte zum auswählen gehen und keine angst suchfunktion und so gibt es dann sicher auch

Zitat:

Zitat von Mao
Hi. :)
Achso... :lol:
Hm, oder die Kundenamen so speichern:
eine Datenbank, mehrere Tabellen, die jeweils die beiden Anfangsbuchstaben des Vornamens enthalten. So werden auch nur nötige Informationen übertragen.
So ähnlich macht es übrigens auch Funpic, auch wenn dort (virtuelle) Server verwendet werden.

hmm ja des wäre eine möglichkeit aber eher komplitziert, eher das ich mir die datensätze die die ersten zwei buchstaben haben mit einem SQL Befehl mir raussuchen lasse.

Zitat:

Zitat von joel93
Ich würde für die Benutzer keine ComboBox nutzen, weil es dann viel einfacher wäre, das zu hacken, machs ganz normal (z.B.wie hier in der DP)

Ich glaub du hast mich wie Mao am Anfang falsch verstanden (lies dir den 3 Beitrag nochmal durch)

@All: Ich hätte mir eher sowas überlegt das am Anfang (beim einloggen) der client sich eine temporäre DB anlegt wo nur die kunden drinnen stehen und wenn etwas bei den usern geändert wird dann holen sich alle clients die neue DB. Aber dann brauch ich bei den Clients auch eine DB engine :wall: und des ist nicht so gut

jbg 16. Dez 2006 18:20

Re: Planung von einem großen Verwaltunsprogramm
 
Zitat:

Zitat von gsh
Ich hätte mir eher sowas überlegt das am Anfang (beim einloggen) der client sich eine temporäre DB anlegt wo nur die kunden drinnen stehen und wenn etwas bei den usern geändert wird dann holen sich alle clients die neue DB. Aber dann brauch ich bei den Clients auch eine DB engine :wall: und des ist nicht so gut

Klingt nach MIDAS. Ein TClientDataSet plus TDataSetProvider könnten dies erledigen. Dem ClientDataSet kann man dann auch noch sagen, wieviele Datensätze es auf einmal holen soll um dann die restlichen bei bedarf nachzuladen.

gsh 17. Dez 2006 18:47

Re: Planung von einem großen Verwaltunsprogramm
 
Was ist MIDAS genau?

alzaimar 17. Dez 2006 19:58

Re: Planung von einem großen Verwaltunsprogramm
 
gsh: Bist Du Dir sicher, das Du das schaffst? Du kennst Dich mit Client/Server Systemen nicht aus, und ich glaube, Du hast auch noch keine größere DB entwickelt. Sei mir nicht böse, aber sei mal ehrlich zu Dir und dem potentiellen Anwender: Meinst Du wirklich, das Du so eine Aufgabe stemmen kannst?


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:03 Uhr.
Seite 1 von 2  1 2      

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