Autor Thema: Serverseitige Pflichfeldprüfung und Loadbalancing  (Gelesen 1884 mal)

Offline Lotuseffekt

  • Frischling
  • *
  • Beiträge: 34
  • Geschlecht: Männlich
Ich habe ein Problem mit der Serverseitigen Pflichtfeldprüfung und deswegen wende ich mich natürlich an euch, ihr Spezialisten. Das Problem ist schwierig zu beschreiben aber ich versuche mein Bestes

Ich habe ein Kontaktformular erstellt. Beim Submit-Button, wird im Web-Query-Save-Ereignis ein Dokument in einer separaten Datenbank erzeugt. Ist das Formular nicht vollständig ausgefüllt wird die Maske wieder mit bereits eingegebenen Inhalten geöffnet und die Pflichtfelder mit Hinweisen ausgegeben. Dies wird so oft gemacht, bis alle Pflichfelder ausfgefüllt sind. Nun kommt der Knackpunkt. Solange ich auf dem gleichen Server mich befinde, läuft die Technik sauber und die Anwendung verhält sich so, wie ich es gerne möchte.
Die Anwendung ist für den Webauftritt erstellt worden und wenn wir die Anwendung auf unseren Webserver replizieren und das Kontaktformular über eine Domäne (Bsp. www.test.de) ansprechen, sorgt der Loadbalancer dafür, dass die geclusterten Server gleichermaßen ausgelastet sind. Und das ist genau das Problem was der Loadbalancer verursacht.
Beim Kontaktformular spielen zwei Datenbanken eine Rolle. Die Eingabemaske befindet sich in einer DB und die gespeicherten Daten befinden sich in einer 'Kontakt-DB'. Wenn ich dieses Formular über die Domäne öffne, sorgt der Loadbalancer besipielsweise dass ich auf den 1. Server lande. Fülle ich nun das Formular nicht vollständig aus und schicke es ab, wird das Dokument in der Kontakt-Db erzeugt. Mit Hilfe einer Reference-Id öffne ich wieder die Eingabemaske. Über diese Reference-Id beziehe ich mich immer wieder auf das Dokument in der Kontakt-Db und lese die Werte aus. Durch den Loadbalancer kann es aber passieren, dass das Dokument auf dem 2. Server erzeugt wird und nicht auf dem gleichen Server. Und das ist genau mein Problem: Durch die Ref-Id beziehe ich mich auf das Dokument in der Datenbank, was durch die Replizierung noch nicht erzeugt worden ist und dann knallt es. Es wird ein Fehler vom HTTP-Server zurück gegeben 'Entry Not Found in Index'. Zwar ist die Replizierung schnell, aber das reicht mir einfach nicht aus. 

Nun bin ich mit den Admins ratlos und wir wissen nicht wie wir das Problem am sinnvollsten lösen. Gibt es evtl. Erfahrungen und Lösungen wie man dieses Problem in den Griff bekommt. Ich meine, es gibt doch sehr viele Web-Notes-Anwendungen, die Eingabeformularen verwenden.  Wie haben Sie dieses Problem beseitigt?
Würde mich über eure Hilfestellung sehr freuen. Ich bedanke mich schon vorab.

Viele Grüße
Vik

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Serverseitige Pflichfeldprüfung und Loadbalancing
« Antwort #1 am: 30.09.06 - 16:09:54 »
Das Problem ist der benötigte Roundtrip. Wenn du die Logik mit in die Maske reinnimmst, dann sollte sich dein Problem in Luft auflösen.
Wenn du das nicht willst, dann musst du die Prüfung und die Speicherung solange in der ersten DB durchführen, bis du alle Daten hast und erst dann wirklich in der zweiten Datenbank sichern.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Serverseitige Pflichfeldprüfung und Loadbalancing
« Antwort #2 am: 30.09.06 - 23:41:33 »
Wir haben das bei uns so "gelöst", dass der Load-Balancer die Clients immer zum gleichen Server schickt, solange dieser online ist.

Ist zwar nicht sonderlich elegant, aber es funktioniert ganz brauchbar. :)
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline Lotuseffekt

  • Frischling
  • *
  • Beiträge: 34
  • Geschlecht: Männlich
Re: Serverseitige Pflichfeldprüfung und Loadbalancing
« Antwort #3 am: 02.10.06 - 09:15:02 »
@Thomas Schulte & m3:

Vielen Dank für eure Antworten. War über das Wochenende nicht im Lande, daher kann ich erst jetzt antworten. Die Informationen geben mir einen Anhaltspunkt. Ich muss jetzt schauen, wie ich das am besten umsetze.

@Thomas Schulte:
Das Problem ist der benötigte Roundtrip. Wenn du die Logik mit in die Maske reinnimmst, dann sollte sich dein Problem in Luft auflösen.
Wenn du das nicht willst, dann musst du die Prüfung und die Speicherung solange in der ersten DB durchführen, bis du alle Daten hast und erst dann wirklich in der zweiten Datenbank sichern.
Roundtrip?! Dein erster Tipp klingt interessant, allerdings weiß ich noch nicht genau, wie ich das Problem lösen könnte und was Du genau damit meinst. 'Meine' Logik ist ja in der Maske eingebaut, allerdings läuft es nicht sauber. Dein anderer Tipp ist ein guter Anhaltspunkt: ich versuche zu überprüen ob ich damit weiter komme.

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Serverseitige Pflichfeldprüfung und Loadbalancing
« Antwort #4 am: 02.10.06 - 09:30:16 »
du machst die Überprüfung mit "externer" Logik (Querysave Agenten). Mit in dies Maske reinnehmen meine ich so was Ajax mäßiges.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Ayhan

  • Aktives Mitglied
  • ***
  • Beiträge: 102
  • Geschlecht: Männlich
  • Geht immer!
    • fabrique d' images ebusiness GmbH
Re: Serverseitige Pflichfeldprüfung und Loadbalancing
« Antwort #5 am: 02.10.06 - 13:34:24 »
Warum muss denn die Prüfung serverseitig passieren? Werden weitere Abhängigkeiten (z. B. Adresskorrektur bzw. generierung eines Tickets in einem anderen System / einer anderen DB) überprüft?

Die einfachste Lösung ist hier die überprüfung dem Client ( in deinem Fall der Webbrowser des Anfragenden) zu überlassen, mit ganz simplem JavaScript.
Ayhan

Offline Lotuseffekt

  • Frischling
  • *
  • Beiträge: 34
  • Geschlecht: Männlich
Re: Serverseitige Pflichfeldprüfung und Loadbalancing
« Antwort #6 am: 02.10.06 - 15:39:19 »
Warum muss denn die Prüfung serverseitig passieren? Werden weitere Abhängigkeiten (z. B. Adresskorrektur bzw. generierung eines Tickets in einem anderen System / einer anderen DB) überprüft?

Die einfachste Lösung ist hier die überprüfung dem Client ( in deinem Fall der Webbrowser des Anfragenden) zu überlassen, mit ganz simplem JavaScript.
Das ist richtig. Es wäre einfacher die Prüfung mit Hilfe von Java-Script durchzuführen, aber ich kann das in diesem Fall nicht verwenden. Stichwort: Barrierefreieheit! Java-Script kommt somit nicht in Frage.
Einer unserer Administratoren hat die Idee mit SSL. Weiß aber nicht genau ob es hinhaut. Was das anbelangt, habe ich da nicht sehr viel Ahnung. Er ist der Meinung, dass mit der Aktivierung der SSL Verschlüsselung für die eine Datenbank, ein Cookie mitgegeben wird. Der Loadbalancer würde somit automatisch immer auf den einen Server zugreifen, von wo der erste Aufruf kam und 'mein' Problem damit in der Luft auflösen. Das wird aber noch überprüft. Sobald ich neue Erkenntnisse habe, melde ich mich.



 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz