2014-04-03 4 views
5

Was ist der Unterschied zwischen gepoolten vs Unpooled und Direct vs Heap in ByteBuf?Netty 4 Puffer gepoolt vs unpooled

Wie, was bedeutet pooled im Zusammenhang mit einer Nachricht erhalten, weil Objekt wie HttpRequest von ByteBuf in einem der HttpRequestDecoder erstellt und dann im letzten Handler der Pipeline freigegeben? Was ist die gepoolte Erinnerung in diesem Fall? Wie unterscheidet sich die Speicherverwaltung für gepoolte oder nicht gepoolte?

Antwort

9

Der Unterschied besteht darin, dass bei nicht gepoolten Netty bei jedem Aufruf von ByteBufAllocator ein neuer Puffer zugewiesen wird. Puffer, die mit einigen Overhead, vor allem mit direkten Puffer kommt. Wenn Sie gepoolte Netty verwenden, versuchen Sie, die Puffer zu poolen und so den Aufwand für die Zuweisung und Freigabe von Puffern zu minimieren.