BloodSKreaper
Vorarbeiter
Guten Tag,
ich bin derzeit an der Entwicklung eines Ticketssystems für meinen Minecraft-Server. Auf dem Minecraftserver ist ein Plugin installiert, dessen Befehle verwendet werden können um Tickets zu erstellen, zu claimen, etc. Diese Tickets sollen in einer MySQL Datenbank gespeichert werden, auf die auch ein php-Script zugreifen kann und Tickets claimen, schließen, etc. kann.
Nun zu meinem Problem:
Wird ein Ticket erstellt, dann wird zunächst ein Ticket-Objekt in Java erstellt. Anschließend wird das Ticket in die Datenbank eingetragen. Da ich das Ticket-Objekt beibehalte um nochmaligen Zugriff darauf zu beschleunigen, kann es vorkommen, dass das php-Script Änderungen in der Datenbank vorgenommen hat, die aber im Plugin noch nicht vorgenommen wurden.
Meine Ideen zur Lösung des Problems:
1. Auf die Speicherung des Java-Objekts verzichten und bei jedem Zugriff auf das Ticket eine Datenbankabfrage starten.
2. Das php-Script nicht direkt auf die Datenbank zugreifen lassen, sondern Anfragen mit socket an das Java-Plugin stellen.
3. In der Datenbank einen Eintrag für die letzte Änderung durch das php-Script erstellen und diesen Eintrag regelmäßig mit dem Java Plugin prüfen und dann die Tickets neu ins Plugin laden
Nun brauche ich einen Rat, welche der Lösungen das sinnvollste wäre. Eventuell gibt es auch Lösungen, auf die ich noch nicht gekommen bin.
WICHTIG: Alle Dienste (Plugin, MySQL, PHP) laufen auf derselben Maschine.
Freundliche Grüße
BloodSKreaper
ich bin derzeit an der Entwicklung eines Ticketssystems für meinen Minecraft-Server. Auf dem Minecraftserver ist ein Plugin installiert, dessen Befehle verwendet werden können um Tickets zu erstellen, zu claimen, etc. Diese Tickets sollen in einer MySQL Datenbank gespeichert werden, auf die auch ein php-Script zugreifen kann und Tickets claimen, schließen, etc. kann.
Nun zu meinem Problem:
Wird ein Ticket erstellt, dann wird zunächst ein Ticket-Objekt in Java erstellt. Anschließend wird das Ticket in die Datenbank eingetragen. Da ich das Ticket-Objekt beibehalte um nochmaligen Zugriff darauf zu beschleunigen, kann es vorkommen, dass das php-Script Änderungen in der Datenbank vorgenommen hat, die aber im Plugin noch nicht vorgenommen wurden.
Meine Ideen zur Lösung des Problems:
1. Auf die Speicherung des Java-Objekts verzichten und bei jedem Zugriff auf das Ticket eine Datenbankabfrage starten.
2. Das php-Script nicht direkt auf die Datenbank zugreifen lassen, sondern Anfragen mit socket an das Java-Plugin stellen.
3. In der Datenbank einen Eintrag für die letzte Änderung durch das php-Script erstellen und diesen Eintrag regelmäßig mit dem Java Plugin prüfen und dann die Tickets neu ins Plugin laden
Nun brauche ich einen Rat, welche der Lösungen das sinnvollste wäre. Eventuell gibt es auch Lösungen, auf die ich noch nicht gekommen bin.
WICHTIG: Alle Dienste (Plugin, MySQL, PHP) laufen auf derselben Maschine.
Freundliche Grüße
BloodSKreaper