Noch keinen Account? Jetzt registrieren!

Seiten (3): « 1 [2] 3 »  
Autor Beitrag
 
doctor_albertio
Staff
2087 hopper . Ok der Wert ist viel größer als ich dachte. Jedoch stehen von diesen nur ein Bruchteil voll. Ich hatte die Überlegung, das er bei vollen Holpern vielleicht mit dem Serverticks selber überprüft. Jedenfalls hab ich nicht hunderte von Hoppern nachgebaut. Trotzdem stieg der Wert von 1.5 zu 1.85 an. Was ich aber gemacht habe, ist viele Hopper vollzufüllen mit cooble und cleanstone. Es stehen also viel mehr hopper voll. Es müsste möglich sein, die Zahl der vollen Hopper auf einen Wert vom 1.5 fachen des Freefarmlagers zu reduzieren. Die Hopperzahl ist da bei 4mal so groß. Jedenfalls musste es dann mit vergleichbaren eventzahlen laufen. Und nicht mit dem Ca. 15fachen.
_________________________
In meinem Gerichtssaal gibt es keine Unschuldsbeteuerungen.
Eine Unschuldsbeteuerung ist schuldig der Vergeudung meiner Zeit. Schuldig!
+++ Großinquisitor Fjodor Karamasow +++
doctor_albertio ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen
 
Joey_Crafter
Zitat von kaahne:
Ich gehe momentan davon aus, dass wir eine Regelung brauchen, die die maximale Zahl der Hopper pro Anlage/Grundstück auf 100 oder eher weniger begrenzt und jede Anlage mit mehr als 30 Hoppern im Forum angemeldet sein muß, damit wir gelegentlich prüfen können, ob es von dort her laggt.


Habe bei:
X: 3376
Y: 71
Z: -244

Eine Automatische Hühnchenbratanlage. Hopper werden da so ~40-60 verbaut sein.
Laggtechnisch ist das Ding ne Katastrophe (wegen den Hühnchen und den Redstone-Events), hat daher auch nen Hauptschalter und ist nie an.
_________________________
Slow down, take your time, drink some weed, smoke some wine.
Joey_Crafter ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen
 
kaahne
Administrator
In der Welt vom 15.01., die ich hier noch auf der Platte habe waren es noch 1770 Hopper :) = Normaler Smile

Um von der Theorie wegzukommen, habe ich eben auf einem frisch geclonten Server die Hopper in einer bestimmten berüchtigten Protection ersetzt:

Code:
1
2
3
2017 hopper ---> 1.810.057 Events/25s
   0 hopper ---> 29.940 "
2017 hopper ---> 1.804.165 " nach //undo


Das Milchmädchen würde jetzt sagen:

1810057events/25s/2017hopper ~ 35,9 events pro hopper pro sekunde.
35,9 / 6 fifo-pipeline ~ 6

Wenn man jetzt durch die 2,5 items teilt, die ein hopper angeblich pro sekunde schafft, sind wir wieder in der Nähe von 50% (voll aufgelöst wäre die Rechnung bei 1). Vielleicht wird der Event doppelt gezählt, einmal wenn der Server ihn sendet und einmal wenn LWC ihn empfängt, vielleicht hat LWC zwei OnEvent Methoden und die zählen. Ich weiß nicht. Aber die Zählen hängen auf jeden Fall kausal aneinander.
_________________________
kaahne - Geistlande Administrator
Bitte keine Anfragen per PM, nutzt das entsprechende Forum!
Zuletzt bearbeitet 28.01.2014 - 18:47:32 Uhr von kaahne
kaahne ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen ICQ
 
kaahne
Administrator
Zitat von Joey_Crafter:
Zitat von kaahne:
Ich gehe momentan davon aus, dass wir eine Regelung brauchen, die die maximale Zahl der Hopper pro Anlage/Grundstück auf 100 oder eher weniger begrenzt und jede Anlage mit mehr als 30 Hoppern im Forum angemeldet sein muß, damit wir gelegentlich prüfen können, ob es von dort her laggt.


Habe bei:
X: 3376
Y: 71
Z: -244

Eine Automatische Hühnchenbratanlage. Hopper werden da so ~40-60 verbaut sein.
Laggtechnisch ist das Ding ne Katastrophe (wegen den Hühnchen und den Redstone-Events), hat daher auch nen Hauptschalter und ist nie an.


Direkt nach dem Einschalten kaum InventoryMoveItemEvents.
Nach ca. 20 Minuten ca. 50000 Events
Nach ca. 40 Minuten ca. 52000 Events.
Nach ca. 60 Minuten 53233 Events.

Allerdings interessant, dass hier eine hohe Zahl BlockPhysicsEvents im Zusammenhang mit Worldguard entsteht. Das zusammen sind die rechenintensivsten Teile hier für die CPU, die damit aber gut klar kommt, hier entsteht kein Serverlag.

Wenn von solchen Anlagen nicht mehrere nebeneinander stehen, sondern über die Welt verteilt, stellt das wohl kein Problem dar. Hopper sind es übrigens 112 auf dem Gelände. Ich hoffe mal ich hab den richtigen Schalten gefunden ... stand "Hauptschalter" dran :) = Normaler Smile
_________________________
kaahne - Geistlande Administrator
Bitte keine Anfragen per PM, nutzt das entsprechende Forum!
Zuletzt bearbeitet 28.01.2014 - 20:01:47 Uhr von kaahne
kaahne ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen ICQ
 
kaahne
Administrator
Wenn ich mir die Bukkit Beschreibung des Events nochmal ins Gedächtnis rufe:

http://jd.bukkit.org/dev/apidocs/org/bukkit/event/inventory/InventoryMoveItemEvent.html

Zitat:


public class InventoryMoveItemEvent
extends Event
implements Cancellable

Called when some entity or block (e.g. hopper) tries to move items directly from one inventory to another.

When this event is called, the initiator may already have removed the item from the source inventory and is ready to move it into the destination inventory.

If this event is cancelled, the items will be returned to the source inventory, if needed.

If this event is not cancelled, the initiator will try to put the ItemStack into the destination inventory. If this is not possible and the ItemStack has not been modified, the source inventory slot will be restored to its former state. Otherwise any additional items will be discarded.


... kann es schon sein, dass doc's Vermutung mit den vollen Hoppern schon auch eine Rolle spielt. Vielleicht nicht bei der Zahl der Events, denn ein zweites Event scheint für die "Rückabwicklung" nicht ausgelöst zu werden, dass macht die Methode wohl alleine, aber beim Entstehen der Server Belastungung.

p. s. ItemStack bei Bukkit bedeutet nicht, dass es ein "Stack" = 64 Items ist.
_________________________
kaahne - Geistlande Administrator
Bitte keine Anfragen per PM, nutzt das entsprechende Forum!
kaahne ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen ICQ
 
Joey_Crafter
Zitat von kaahne:
Hopper sind es übrigens 112 auf dem Gelände. Ich hoffe mal ich hab den richtigen Schalten gefunden ... stand "Hauptschalter" dran :) = Normaler Smile

Leicht verschätzt
:) = Normaler Smile Und ja, das war der richtige Schalter.
_________________________
Slow down, take your time, drink some weed, smoke some wine.
Joey_Crafter ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen
 
doctor_albertio
Staff
So hab nun erstmal ein Großteil der voll stehenden Hopper geleert. Lager läuft nun konstant 20ticks mit einem Mitspieler auf Server. Dies tut er sogar, wenn ich ne Doublechest voll mit Krams durchjage. Nur in Verbindung mit Joeys Hühnerfarm hatte der Server stark zu Kämpfen.

Was viel interresanter ist, das ein joinen im Lager oder hinporten nun ohne wirkliche Ladezeit möglich ist.
_________________________
In meinem Gerichtssaal gibt es keine Unschuldsbeteuerungen.
Eine Unschuldsbeteuerung ist schuldig der Vergeudung meiner Zeit. Schuldig!
+++ Großinquisitor Fjodor Karamasow +++
doctor_albertio ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen
 
Couchracer
100 ist etwas wenig, nicht ?

Außerdem gibt es dann immernoch die Möglichkeit, Kisten zwischen die Hopper zu setzen, was wesentlich mehr Events hervorrufen wird, so wie ich das verstanden hab.

Ich finde bevor man zu so radikalen Mitteln greift, sollten wir erstmal herrausfinden durch was diese Events erhöht oder gesenkt werden.
Ich meine ein Unterschied von 1050% zwischen dem Freefarm-Lager und Doc's Lager ist schon gravierend.

Edit:
Mist, hab die 2. Seite nicht gesehen
_________________________
* Signatur auf Abwegen *
Couchracer ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen
 
doctor_albertio
Staff
Zitat von kaahne:
Wenn ich mir die Bukkit Beschreibung des Events nochmal ins Gedächtnis rufe:

http://jd.bukkit.org/dev/apidocs/org/bukkit/event/inventory/InventoryMoveItemEvent.html

Zitat:


public class InventoryMoveItemEvent
extends Event
implements Cancellable

Called when some entity or block (e.g. hopper) tries to move items directly from one inventory to another.

When this event is called, the initiator may already have removed the item from the source inventory and is ready to move it into the destination inventory.

If this event is cancelled, the items will be returned to the source inventory, if needed.

If this event is not cancelled, the initiator will try to put the ItemStack into the destination inventory. If this is not possible and the ItemStack has not been modified, the source inventory slot will be restored to its former state. Otherwise any additional items will be discarded.


...


Wenn ich das richtig verstehe, entsteht das Event doch nicht, wenn der Hopper einfach leer ist. Dann muss er nämlich nicht beim nächsten anfragen, ob das Inventar frei ist. Und auch gut zu wissen, das das Event auch von Droppern und Loren erzeugt wird.
_________________________
In meinem Gerichtssaal gibt es keine Unschuldsbeteuerungen.
Eine Unschuldsbeteuerung ist schuldig der Vergeudung meiner Zeit. Schuldig!
+++ Großinquisitor Fjodor Karamasow +++
doctor_albertio ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen
 
doctor_albertio
Staff
hmmm wenn eine volle Lore mit highspeed über volle Hopper fährt, wird doch jedes mal für 27 slots getestet, ob er die abladen kann oder nicht. Bei mir sind das ca. 40 Hopper oder so. Kann das vielleicht Ursache für die hohen Werte sein.
_________________________
In meinem Gerichtssaal gibt es keine Unschuldsbeteuerungen.
Eine Unschuldsbeteuerung ist schuldig der Vergeudung meiner Zeit. Schuldig!
+++ Großinquisitor Fjodor Karamasow +++
doctor_albertio ist offline   eMail senden Persönliche Nachricht senden Beiträge suchen
Seiten (3): « 1 [2] 3 »  
Zurzeit aktive Benutzer (0 Registrierte, 0 Gäste)
Suche Optionen
» Erweiterte Suche
Druckansicht Druckansicht
Thema weiterempfehlen Thema weiterempfehlen

© 2024 Geistlande - Deutscher Minecraft Server mcgeist.de

Datenschutzerklärung | Impressum