Client Programm - Updates mitbekommen

hesk

Erfahrenes Mitglied
Hallo!

Meine Situation ist folgende:

Ich habe ein ClientProgramm geschrieben welches über JavaWebStart deployed wird.
Auf einem Server ist eine MySQL Datenbank wohin connected wird.

Was das Programm macht ist nicht wichtig.

Als Beispiel gehen wir davon aus dass 2 User das Programm benutzen.
User 1 ändert etwas. Er sieht es sofort und es kommt in die Datenbank.
User 2 muss aber erst einen Button drücken, damit alle Daten aktualisiert werden.
(Momentan aktualisiert es sich automatisch alle 5 min - Hierbei werden alle Daten geholt).

Die Aktualisierung kann ich aber nicht jede 5 sek machen, weil dies dann zu lange dauern würde.


Ich such nach einem Konzept, wie man quasi den anderen Client mitteilen kann "hey, es wurde etwas geändert. Hol dir diesen Datensatz"?

Bitte um Hilfe:)
 
Hm. Die Lösungen beziehen sich auf Webanwendungen. Ich habe aber keinen "Webserver", sondern nur 2 Clientprogramme.
 
Natürlich habe ich einen Server wo das JAR-File liegt. Webstart holt sich von dort das Jar und führt es lokal aus.

Doch das Programm hat keine Verbindung zu einem Webserver oder sonstigem.
 
Soweit ich weiß ist eine MySQL-Datenbank kein Webserver.... aber ich mag mich ja auch irren:)
 
MySQL ist eine Datenbank und somit kein Webserver, soweit richtig. Aber es hindert dich doch keiner daran in der Datenbank irgendwo einen Timestamp zu hinterlegen, der die letzte zeitliche Änderung markiert. Diese timestamp kannst du regelmäßig abchecken lassen und wenn es neue Daten gibt (der Timestamp sich also geändert hat), dann werden die Daten aktualisiert, ansonsten besteht kein Bedarf dafür. Das sollte auch den Gesamttraffic runterschrauber, weil sogar wenn du nur alle 5min die Daten komplett aktualisierst, das frisst mehr Traffic als alle sagen wir mal alle 10sek eine einfache Zahl.
 
Ja. Die Idee hatte ich auch schon. Nur gefällt mir dieses "regelmäßige Abfragen" nicht.

Ich bastel gerade an einem Socket-Programm welches am Server laufen wird und wohin sich die Clients connecten. Sollten die Clients eine Änderung machen teilen sie das dem Socket-Programm mit, und dieses sagt wiederum allen regestrierten clients "aktualisieren". Ist schon fast fertig.

Das einzige was hier wackelig ist, ist die Sicherheit.

Sollte dies nicht hinhaun, so werde ich wohl die Alternative mit dem timestamp machen.
 

Neue Beiträge

Zurück