Re(7): JavaScript-Dauproblem...
Geizhals » Forum » Programmierung » JavaScript-Dauproblem... (49 Beiträge, 340 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
JavaScript-Dauproblem...
13.04.2006, 13:03:13
Hi !

Bin wieder mal am Rumprimitiveln - diesmal wird's ein HTML/JS-Teil.
Ich versuche mal, das Problem zu reduzieren:

Gegeben sei eine Datenbank, in der es pro Guppe bis zu 100 Kundennamen gibt.

Ein Mitarbeiter soll jetzt in einem HTML-Formular nach Auswahl der Gruppe einen Kunden in eine Inputbox eingeben - wobei er implizit gleich neue Anlegen können soll.

Bisher hatte er eine freie Inputbox zur Verfügung, wobei natürlich das Problem entsteht, daß 3 Buchende denselben Kunden verschieden schreiben - und dadurch mehrere Einträge in der DB entstehen.

Mein Lösungsansatz wäre grob jetzt folgender:

  • Nach Auswahl der Gruppe wird ein XMLHttpRequest zum Server geschickt, der eine Liste der bekannten Kunden in der Gruppe holt.
  • Die Kunden werden dem Eingebenden in einem DIV oder so präsentiert. Wenn er auf einen klickt, soll der automatisch eingetragen werden
  • ansonsten kann er weiter frei eingeben


Folgende Probleme erwarte ich dabei:
1.) Das dauernde Requesten der bekannten Kunden macht ja wohl nur Sinn, wenn man es mit Caching am Client verheiratet. Der Client könnte sich also in einem Array merken, daß es in Gruppe "GRUPPE_1" zb die Kunden "Müller","Meier",... gibt.
Mir ist jetzt völlig unklar, wie ich eine Obergrenze des Cachings implementieren soll...

  • Wie erkenne ich, wann ich zuviele gecacht habe und wieder welche nach LRU wegwerfen soll ?
  • Bekomme ich aus JS meine Speicherauslastung raus ?
  • Oder soll ich eine willkürliche Grenze ziehen mit zB 1000 Kunden und danach die ältesten rauswerfen ?
Dann werden sowohl die Benutzer mit sehr alten als auch die mit sehr neuen Rechnern unglücklich sein ... Wie löst man sowas richtig ?

2.) Wenn parallel eingebucht wird, soll es möglich sein, daß

  • zB Benutzer A einen neuen Kunden in GRUPPE2 anlegt und
  • Benutzer B den automatisch auch in seiner Vorschlagsliste sieht, wenn er einen in Gruppe2 anlegen will.

Das bedeutet also, daß es eine Möglichkeit geben muß, daß Benutzer A den Cache von Benutzer B invalidiert. Wie löst man das ?
Mein billigster Lösungsansatz wäre,

  • daß Benutzer A einen eigenen Request an den Server schickt, wenn er einen neuen Kunden anlegt.
  • Der Server könnte eine SerialNumber/Sequence (ähnlich wie bei DNS) pro Gruppe haben, die er dann hochzählt.
  • Jeder Benutzer würde dann pro Buchung die SerialNumber der gerade aktuellen Gruppe am Server holen müssen -
  • und könnte so feststellen, wann er den eigenen Gruppencache invalidieren muß.

Kommt mir einfach aber beshissen vor.
Ein anderen Fall wäre, daß sich der Server merkt, welcher Client welche Stände kennt - und nur die Differenzen/neuen an den Client mitschickt. Kommt mir aber stressig und umständlich vor... Lösungsansätze ?

Ach ja, Gruppen gibt es rund 7000 - also es ist ausgeschlossen, daß man alles (Gruppen+Kunden) an den Client überträgt, vor allem, weil es dann mit der Adresse weitergeht  ;-)

13.04.2006, 13:05 Uhr - Editiert von gepeinigter_aon_neukunde, alte Version: hier
Antworten PM Alle Chronologisch
 
Melden nicht möglich
.  Re: JavaScript-Dauproblem...  (Sir Hondo am 13.04.2006, 13:14:11)
...  Re(3): JavaScript-Dauproblem...  (Sir Hondo am 13.04.2006, 13:32:41)
.....  Re(5): JavaScript-Dauproblem...  (Sir Hondo am 13.04.2006, 13:52:20)
.......  Re(7): JavaScript-Dauproblem...  (Sir Hondo am 13.04.2006, 14:12:10)
.....  Re(5): JavaScript-Dauproblem...  (Sir Hondo am 13.04.2006, 14:03:54)
.......  Re(7): JavaScript-Dauproblem...  (Sir Hondo am 13.04.2006, 14:09:48)
.........  Re(9): JavaScript-Dauproblem...  (Sir Hondo am 13.04.2006, 14:30:42)
........  Re(8): JavaScript-Dauproblem...  (Dr. Watson am 13.04.2006, 19:56:53)
.  Re: JavaScript-Dauproblem...  (littleo am 13.04.2006, 14:43:47)
..  Re(2): JavaScript-Dauproblem...  (Sir Hondo am 13.04.2006, 14:55:24)
....  Re(4): JavaScript-Dauproblem...  (littleo am 13.04.2006, 15:42:09)
...  Re(3): JavaScript-Dauproblem...  (littleo am 13.04.2006, 16:09:58)
.  Re: JavaScript-Dauproblem...  (Undying am 13.04.2006, 15:38:46)
...  Re(3): JavaScript-Dauproblem...  (Undying am 13.04.2006, 15:50:14)
.....  Re(5): JavaScript-Dauproblem...  (Undying am 13.04.2006, 17:11:03)
.......  Re(7): JavaScript-Dauproblem...  (Undying am 13.04.2006, 18:54:41)
.........  Re(9): JavaScript-Dauproblem...  (Undying am 13.04.2006, 20:58:47)
...........  Re(11): JavaScript-Dauproblem...  (Undying am 13.04.2006, 21:28:40)
.  Re: JavaScript-Dauproblem...  (Ingenico am 18.04.2006, 18:34:51)
..  Re(2): JavaScript-Dauproblem...  (littleo am 19.04.2006, 09:35:06)
.  Re: JavaScript-Dauproblem...  (littleo am 19.04.2006, 09:30:33)
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung