Moin moin liebe CB Gemeinde.
Wiedereinmal habe ich eine Frage, die allerdings mehr tehoretischer Natur ist.
Und zwar geht es im folgenden um einen Kalender zur Mitarbeiterverwaltung.
In diesem Kalender werden nach tagen sortiert Projekte angezeigt auf die Mitarbeiter eingeplant werden können.
Das ganze System steht auch und so weiter, was wir, bzw. ich jetzt einbauen will ist eine Funktionalität ähnlich G+ oder FB.
Sprich wenn ein user an einem projekt etwas ändert soll jeder andere User der ebenfalls dieses Projekt offen hat, oder aber es nur im Kalender sieht über diese Änderungen informiert werden.
Ich hab mir da mehrere möglichkeiten Überlegt.
Es wird eh für jede veränderung im System ein protokoll Eintrag angelegt, diesen müsste man also nur periodisch abfragen und immer nur die neuesten Einträge lesen und anschließend entsprechend das DOM manipulieren.
Da ist meine Sorge allerdings das es unnötig viel Serverlast verursacht.
Einen weg diese zu umgehen wäre z.b. das alle 10 / 20 / 30 sekunden eine protokoll datei erstellt wird und jeder client nur diese abruft, so müsste nicht jeder selber die DB nerven.
Das problem ist das er die dann auch erstellen würde wenn gar niemand arbeitet, z.b nachts.
( könnte man umgehen indem man einen master clienten festlegt der die regelmäßig erstellen lässt, geht er weg wird der nächste zum master clienten und ist keiner da wird auch kein protokoll mehr erstellt, bin mir aber über die relaisierung unsicher)
Zweite möglichkeit wäre die verwendung von websockets. Also jeder client meldet sich beim server an und wenn jemand was ändert schickt er ganz simple die änderung an alle Clienten raus.
Ich würde den Server dann in java Schreiben.
Dazu meine frage: hat jemand erfahrung damit und kann mir etwas zur performance sagen?
Ist die kommunikation zwischen java server und php leicht ? Ich dachte da einfach an eine lokale socket verbindung zum server.....
sprich php ändert etwas, schickt über nen socket ne nachricht an den java server und der verteilt die dann an alle verbunde clienten. Ich habe hier noch nen alten chat server liegen, der könnte genau das übernehmen
Übersehe ich möglichkeiten?
Zu welcher würdet ihr raten?
Server Power steht fast unbegrenzt zur verfügung da Geld keine große rolle spielt. (natürlich sollte das ergebnis trotzdem keine reosurcen verschwenden)
Und auch an eingesetzer software ist alles erlaubt, ich habe so ziemlich freie hand.
Könnte MySql selber sogar solche Delta Daten erstellem? Also alle änderungen seit meiner letzen anfrage?
und keine sorge, es ist dafür gesorgt das nur ein user zur zeit einen datensatz bearbeiten kann
Derzeit arbeiten etwa 20 Leute gleichzeitig, verteilt auf 2 Niederlassungen mit dem System.
Ende des Jahres kommt eine dritte Niederlassung und ca. 10 weitere benutzer dazu.
Im schnitt werden pro tag 200 positionen disponiert.
Projekte gibts im schnitt 30 / tag
(zumindest in der aktuellen version)
Einzige vorausetzung: Technik muss in Chrome relaisierbar sein
Wiedereinmal habe ich eine Frage, die allerdings mehr tehoretischer Natur ist.
Und zwar geht es im folgenden um einen Kalender zur Mitarbeiterverwaltung.
In diesem Kalender werden nach tagen sortiert Projekte angezeigt auf die Mitarbeiter eingeplant werden können.
Das ganze System steht auch und so weiter, was wir, bzw. ich jetzt einbauen will ist eine Funktionalität ähnlich G+ oder FB.
Sprich wenn ein user an einem projekt etwas ändert soll jeder andere User der ebenfalls dieses Projekt offen hat, oder aber es nur im Kalender sieht über diese Änderungen informiert werden.
Ich hab mir da mehrere möglichkeiten Überlegt.
Es wird eh für jede veränderung im System ein protokoll Eintrag angelegt, diesen müsste man also nur periodisch abfragen und immer nur die neuesten Einträge lesen und anschließend entsprechend das DOM manipulieren.
Da ist meine Sorge allerdings das es unnötig viel Serverlast verursacht.
Einen weg diese zu umgehen wäre z.b. das alle 10 / 20 / 30 sekunden eine protokoll datei erstellt wird und jeder client nur diese abruft, so müsste nicht jeder selber die DB nerven.
Das problem ist das er die dann auch erstellen würde wenn gar niemand arbeitet, z.b nachts.
( könnte man umgehen indem man einen master clienten festlegt der die regelmäßig erstellen lässt, geht er weg wird der nächste zum master clienten und ist keiner da wird auch kein protokoll mehr erstellt, bin mir aber über die relaisierung unsicher)
Zweite möglichkeit wäre die verwendung von websockets. Also jeder client meldet sich beim server an und wenn jemand was ändert schickt er ganz simple die änderung an alle Clienten raus.
Ich würde den Server dann in java Schreiben.
Dazu meine frage: hat jemand erfahrung damit und kann mir etwas zur performance sagen?
Ist die kommunikation zwischen java server und php leicht ? Ich dachte da einfach an eine lokale socket verbindung zum server.....
sprich php ändert etwas, schickt über nen socket ne nachricht an den java server und der verteilt die dann an alle verbunde clienten. Ich habe hier noch nen alten chat server liegen, der könnte genau das übernehmen
Übersehe ich möglichkeiten?
Zu welcher würdet ihr raten?
Server Power steht fast unbegrenzt zur verfügung da Geld keine große rolle spielt. (natürlich sollte das ergebnis trotzdem keine reosurcen verschwenden)
Und auch an eingesetzer software ist alles erlaubt, ich habe so ziemlich freie hand.
Könnte MySql selber sogar solche Delta Daten erstellem? Also alle änderungen seit meiner letzen anfrage?
und keine sorge, es ist dafür gesorgt das nur ein user zur zeit einen datensatz bearbeiten kann
Derzeit arbeiten etwa 20 Leute gleichzeitig, verteilt auf 2 Niederlassungen mit dem System.
Ende des Jahres kommt eine dritte Niederlassung und ca. 10 weitere benutzer dazu.
Im schnitt werden pro tag 200 positionen disponiert.
Projekte gibts im schnitt 30 / tag
(zumindest in der aktuellen version)
Einzige vorausetzung: Technik muss in Chrome relaisierbar sein
Zuletzt bearbeitet: