Beiträge: 117
Themen: 9
Thanks Received: 0 in 0 posts
Thanks Given: 0
Registriert seit: Jan 2019
Guten Morgen Mareta,
wenn mich nicht alles täuscht ist das nicht ganz richtig. Ein Asset was auf einer Region existiert (sofern alle dienste auf eine DB zugreifen) existiert definitiv auch in der DB. Somit wird das Asset auch nicht gelöscht weil es existiert ja auf einer Region oder habe ich das jetzt total falsch verstanden?
Viele Grüße
Christian Nill
Beiträge: 1.544
Themen: 74
Thanks Received: 777 in 334 posts
Thanks Given: 369
Registriert seit: May 2013
Hallo Christian,
normalerweise existiert jedes Asset auf einer Region auch in der Grid-Datenbank. Man muss es beim Rezzen aus dem Inventar ziehen, also schon im Grid haben, oder per OAR importieren. Ausnahme könnten Objekte sein, die Hypergrid-Touristen auf einer Region liegen lassen (ob mit oder ohne Absicht) und die niemand der Residents des eigenen Grids jemals ins Inventar genommen hat.
Wenn nun aber gerezzte Objekte bzw. deren Assets irgendwann später bei niemandem mehr im Inventar sind, weil alle das gelöscht haben, dann würde ein Bereinigungs-Script die Assets als nicht mehr benutzt ansehen. Denn auf den Regionenservern kann das Script nicht nachschauen - außer in deinem Fall, wo du die Regionen selber hostest.
Nach dem Bereinigen würden also unter Umständen Assets fehlen, die noch auf irgendwelchen Regionen existieren. Die Regionen haben zwar einen temporären Cache-Speicher, aber keinen dauerhaften. Die Regionen holen sich ggf. die Assets wieder aus dem Grid.
Wenn allen Residents im Grid von Anfang an klar ist, dass dort ein Bereinigungsscript läuft, könnten sie das Problem umgehen: Sie müssten einfach von allen auf der Region gerezzten Objekten eine Kopie im Inventar aufheben. (Meistens machen sie das ja eh.) Dann gibt es wieder mindestens ein Inventar im Grid, wo das Objekt vorkommt, und das Bereinigungsscript lässt die zugehörigen Assets stehen.
Bei einer Umstellung im laufenden Betrieb müssten alle Landbesitzer rechtzeitig dafür sorgen, dass sie sich Kopien ihrer gerezzten Objekte wieder ins Inventar legen. ein gespeichertes OAR zurückzuspielen wäre nur eine Notmaßnahme, wenn das Kind schon in den Brunnen gefallen ist, also irgendwas fehlt. Wenn das Script erst mal läuft, kann ja niemand mehr ernsthaft vor einem OAR-Backup eine voll bebaute Region auf Vollständigkeit überprüfen.
Liebe Grüße,
Mareta
Beiträge: 117
Themen: 9
Thanks Received: 0 in 0 posts
Thanks Given: 0
Registriert seit: Jan 2019
(17.01.2019, 20:55)Mareta Dagostino schrieb: Hallo Christian,
normalerweise existiert jedes Asset auf einer Region auch in der Grid-Datenbank. Man muss es beim Rezzen aus dem Inventar ziehen, also schon im Grid haben, oder per OAR importieren. Ausnahme könnten Objekte sein, die Hypergrid-Touristen auf einer Region liegen lassen (ob mit oder ohne Absicht) und die niemand der Residents des eigenen Grids jemals ins Inventar genommen hat.
Wenn nun aber gerezzte Objekte bzw. deren Assets irgendwann später bei niemandem mehr im Inventar sind, weil alle das gelöscht haben, dann würde ein Bereinigungs-Script die Assets als nicht mehr benutzt ansehen. Denn auf den Regionenservern kann das Script nicht nachschauen - außer in deinem Fall, wo du die Regionen selber hostest.
Nach dem Bereinigen würden also unter Umständen Assets fehlen, die noch auf irgendwelchen Regionen existieren. Die Regionen haben zwar einen temporären Cache-Speicher, aber keinen dauerhaften. Die Regionen holen sich ggf. die Assets wieder aus dem Grid.
Wenn allen Residents im Grid von Anfang an klar ist, dass dort ein Bereinigungsscript läuft, könnten sie das Problem umgehen: Sie müssten einfach von allen auf der Region gerezzten Objekten eine Kopie im Inventar aufheben. (Meistens machen sie das ja eh.) Dann gibt es wieder mindestens ein Inventar im Grid, wo das Objekt vorkommt, und das Bereinigungsscript lässt die zugehörigen Assets stehen.
Bei einer Umstellung im laufenden Betrieb müssten alle Landbesitzer rechtzeitig dafür sorgen, dass sie sich Kopien ihrer gerezzten Objekte wieder ins Inventar legen. ein gespeichertes OAR zurückzuspielen wäre nur eine Notmaßnahme, wenn das Kind schon in den Brunnen gefallen ist, also irgendwas fehlt. Wenn das Script erst mal läuft, kann ja niemand mehr ernsthaft vor einem OAR-Backup eine voll bebaute Region auf Vollständigkeit überprüfen.
Liebe Grüße,
Mareta
Hallo Mareta,
das ist nicht ganz richtig. Auch Hypergrid Avatare haben Asset IDs und produzieren asset ids wenn sie ein Objekt auf einer Region platzieren. Das habe ich getestet. Wenn ich von OSGrid (angemeldet bei OSGrid) mich nach VirtuLife teleportiere und auf der Sandbox ein objekt erstelle oder aus dem Inventar auf die Region ziehe wird in der Datenbank ein entsprechendes asset erstellt. Gleichzeitig wird in der Regionen-tabelle auf das asset in der DB referenziert.
Das mit den Backups sehe ich begrenzt so. Ich meine klar. Backups sollte man so oder so vor einer solchen Aktion machen OHNE WENN UND ABER . Ein OAR / IAR Backup reicht den Benutzern / dem Grid-Owner theoretisch aber praktisch wäre das DB-Backup eindeutig die sinnvollste variante, da, wenn wirklich etwas fehlt, wird einfach das DB-Backup zurückgespielt, der Assetcache der Region gelöscht und voila. Alles wieder wie vorher (habe ich auch bereits getestet ). Ein Restore der Datenbank nach einer Bereinigung führt nach entfernung des Assetcaches dazu, dass die Region die assets aus der DB neu lädt und da da alle Einträge vor der Bereinigung vorhanden sind ist auch alles wieder da wie vorher. Ich habe einfach in meinem Testgrid die gesamte regionentabelle geleert, dass angeblich keine Prims mehr auf der SIM sind. Dann habe ich die SIM gestartet und voila sie war leer (natürlich was auch sonst). Dann habe ich das backup wiederhergestellt, habe den assetcache der region geleert und habe die region gestartet. Voila alles wieder da (inklusive Scripte usw).
Viele Grüße
Christian Nill
Beiträge: 1.544
Themen: 74
Thanks Received: 777 in 334 posts
Thanks Given: 369
Registriert seit: May 2013
18.01.2019, 10:37
(Dieser Beitrag wurde zuletzt bearbeitet: 18.01.2019, 10:41 von Mareta Dagostino.)
(18.01.2019, 10:00)bimbam2103 schrieb: ... Auch Hypergrid Avatare haben Asset IDs und produzieren asset ids wenn sie ein Objekt auf einer Region platzieren. Das habe ich getestet. Wenn ich von OSGrid (angemeldet bei OSGrid) mich nach VirtuLife teleportiere und auf der Sandbox ein objekt erstelle oder aus dem Inventar auf die Region ziehe wird in der Datenbank ein entsprechendes asset erstellt. Gleichzeitig wird in der Regionen-tabelle auf das asset in der DB referenziert. ...
Vielen Dank, wieder was gelernt.
Zitat:... Praktisch wäre das DB-Backup eindeutig die sinnvollste variante ... Dann habe ich die SIM gestartet und voila sie war leer (natürlich was auch sonst). Dann habe ich das backup wiederhergestellt, habe den assetcache der region geleert und habe die region gestartet. Voila alles wieder da (inklusive Scripte usw).
Das ist mir bekannt und so empfehle ich es auch in meiner Anleitung für gewöhnliche tägliche Regionen-Backups. Ein SQL-Backup einer Region belastet das Grid viel weniger (nämlich gar nicht). Aber dieser Weg funktioniert eben nur, wenn die Assets auch noch alle im Grid vorhanden sind. Meine Kernfrage zielt darauf ab: Wie merkt sich dein Script, welche Assets die Regionen noch brauchen? Und zwar auch dann noch, wenn die zugehörigen Objekte aus allen Inventaren gelöscht wurden und über Monate hinweg sich niemand das Objekt mehr angeschaut hat? Die Assets werden aus dem Grid nur abgerufen, wenn sie ein Viewer zum Anzeigen braucht (der ein Script sie verwendet).
Also: Wie weiß dein Programm, ob Asset XY noch auf irgendeiner Region gebraucht wird, wenn es in der Grid-Datnbank mit keinem Inventar mehr verknüpft ist? Da musst du irgendeine Vorsorge treffen, entweder hast du eine gute technische Idee oder man muss das klar kommunizieren: Was in keinem Inventar mehr ist, wird ggf. bereinigt und ist dann weg...
Viele Grüße,
Mareta
Beiträge: 117
Themen: 9
Thanks Received: 0 in 0 posts
Thanks Given: 0
Registriert seit: Jan 2019
18.01.2019, 13:07
(Dieser Beitrag wurde zuletzt bearbeitet: 18.01.2019, 13:09 von bimbam2103.)
Hallo Mareta,
kein Problem. Wenn ein Objekt in keinem Inventar mehr vorhanden ist und ansonsten nur noch auf einer Region vorhanden ist bleibt die Ursprüngliche Annahme. Die Region kann nur Objekte laden, die auch noch in der Tabelle 'prims' mit entsprechendem Verweis in der Spalte 'RegionUUID' vorhanden sind. Das heißt wenn das Prim in der DB der Region nicht mehr zugewiesen ist sollte es das Prim auch da nicht geben.
Wie gesagt. Die Annahme geht davon aus, dass sowohl Region wie auch Robust auf dieselbe Datenbank auf demselben Server zugreifen.
Aber ich würde immer noch gerne darauf hinweisen, dass es für diese Art von Script zwischenzeitlich einen extra Thread hier im Forum gibt: https://www.gridtalk.de/showthread.php?tid=3294
Viele Grüße
Christian Nill
Beiträge: 2.449
Themen: 86
Thanks Received: 1.663 in 585 posts
Thanks Given: 1.864
Registriert seit: Oct 2011
(18.01.2019, 13:07)bimbam2103 schrieb: Wie gesagt. Die Annahme geht davon aus, dass sowohl Region wie auch Robust auf dieselbe Datenbank auf demselben Server zugreifen.
Davon kann man aber nicht ausgehen
Nicht einmal, dass die Region, welche das Asset nutzt, aktuell aktiv ist, kann in größeren Grids (z.B. Metropolis) als gegeben angenommen werden.
Wer nicht weiss wohin er will, der kommt leicht woanders hin.
Beiträge: 117
Themen: 9
Thanks Received: 0 in 0 posts
Thanks Given: 0
Registriert seit: Jan 2019
Hallo Anachron.
Das ist zwar richtig aber wenn die Region dieselbe Datenbank nutzt wie der Robust sind die Prims in der Datenbank registriert auch wenn die Region offline ist. Das ändert nichts an den Einträgen.
In Metropolis (weiß ich nicht genau) oder aus OSGrid ist es so, dass die Regionen eigene Datenbanken haben. Da ist es natürlich schwer bzw. sogar fast unmöglich die Bereinigung durchzuführen, da die Assets da nicht synchron mit den Regionen sind.
Ich persönlich habe einen Vorteil. Ich habe eine Tabelle in der alle Regionen, die in VirtuLife registriert sind aufgelistet. Das heißt ich kann sogar noch einen Schritt weiter gehen und Prims aus der prims-Liste löschen, die einer Region zugewiesen sind, die es schon gar nicht mehr gibt.
Das ist natürlich ein Punkt, der noch zu klären ist.
Viele Grüße
Christian Nill
Beiträge: 117
Themen: 9
Thanks Received: 0 in 0 posts
Thanks Given: 0
Registriert seit: Jan 2019
Hallo zusammen.
Auch hier möchte ich einen kurzen Statusbericht zum Gridleben in VirtuLife erbringen.
VirtuLife hat sich sehr stark und schnell etabliert. Dank einiger Bewohner von VirtuLife wurde innerhalb kürzester Zeit ein sehr ansehnlicher Club gegründet -> Der Blue Velvet Music Club. Aufgrund von Erhöhter Nachfrage haben wir kurzerhand beschlossen den Club von der Landing-Region Puflax auf die Region Paradise City zu verlegen. Der erste Stabilitätstest ist ebenfalls ohne große Schwierigkeiten verlaufen und wird in Kürze wiederholt.
Ich möchte mich an dieser Stelle nochmal herzlich bei den beiden Bewohner Piper Perano und Tommy Jonas bedanken für die unglaubliche Hilfe in VirtuLife.
In Kürze folgen dann auch Bilder vom aktuellen Innenleben von VirtuLife.
Die anfänglichen Probleme, die mit dem Money-System, dem XML-Upload und der Suchfunktion existierten sind nicht mehr vorhanden. Diese Probleme wurden erfolgreich behoben.
Wir rücken der Eröffnungsfeier immer näher.
Viele Grüße
Christian Nill
Beiträge: 117
Themen: 9
Thanks Received: 0 in 0 posts
Thanks Given: 0
Registriert seit: Jan 2019
Hallo zusammen.
Ich möchte eine kurze Ankündigung mitteilen bevor es nachher wieder viele Fragen gibt
In Kürze werden die Serverdienste von VirtuLife aufgeteilt. Das bedeutet im einzelnen:
Folgende Serverdienste werden unter mehreren Servern aufgeteilt:
- MySQL (separater Server)
- ROBUST wird auf einen Server ausgelagert
- MoneyServer bleibt wo er ist, da dieser nicht viel Belastung produziert
Warum werden solche Änderungen durchgeführt?:
Derzeit erfährt VirtuLife noch keine Spitzenlasten. Um jedoch für solche Fälle vorbereitet zu sein werden die Dienste entsprechend ausgelagert um eine zukünftige Skalierbarkeit gewährleisten zu können.
In der Zeit, in der die Dienste auf andere Server verteilt werden, ist VirtuLife nicht verfügbar. Wir reden hier allerdings von einer Downtime in der Nacht (zwischen 23:00 Uhr und 05:00 Uhr) von maximal 3 Stunden.
Wir erwarten trotz Verteilung auf andere Server keine spürbare Verbesserung da die Belastung an sich noch nicht groß ist.
Sobald die Migration abgeschlossen ist gibt es hier entsprechend einen Eintrag.
Viele Grüße
Christian Nill
Beiträge: 403
Themen: 16
Thanks Received: 224 in 115 posts
Thanks Given: 807
Registriert seit: Sep 2017
(24.01.2019, 07:18)bimbam2103 schrieb: In der Zeit, in der die Dienste auf andere Server verteilt werden, ist VirtuLife nicht verfügbar. Wir reden hier allerdings von einer Downtime in der Nacht (zwischen 23:00 Uhr und 05:00 Uhr) von maximal 3 Stunden. Es ist natürlich deine Sache, aber ich würde die Downtime, insbesondere Freitag/Samstag auf 2:30 - 5:30 Uhr setzen. 23 Uhr finde ich wegen Parties viel zu früh. Erkundige dich vor allem bei deinen Mietern.
|