🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.java
2 messages
2 total messages Started by Adam Gramowski Thu, 22 Sep 2011 11:13
NIO złożoność obliczeniowa
#152898
Author: Adam Gramowski
Date: Thu, 22 Sep 2011 11:13
16 lines
2082 bytes
Witam

Mam pytanie do znawców komunikacji sieciowej.
Czy jest sens używania na serwerze NIO w przypadku dużej liczby
klientów często coś wysyłających?

Chodzi o to, że jeżeli na przykład podczas jednej iteracji pętli
czytającej dostanę 1000 obiektów typu KeySelector, to dla każdego z
tych obiektów muszę znaleźć odpowiadającego mu odbiorcę takiego
pakietu danych, a tych jak łatwo się domyśleć jest więcej jak 1000 i
tyle będzie iteracji pętli szukającej odbiorcy. W sumie daje to
1000*1000 operacji do wykonania.
Czy nie lepiej przy takiej sytuacji ostać się przy zwykłych socketach
i 1000 wątkach?

Adam Gramowski
Re: NIO złożoność obliczeniowa
#152899
Author: Adam Gramowski
Date: Thu, 22 Sep 2011 11:35
14 lines
2078 bytes
Witam znowu

Poszperalem i okazalo sie, ze zerejstrujac SocketChannel i otrzymujac
w jego rezultacie KeySelector można ustawić mu obiekt attachment, do
ktorego pozniej referencje przechowuje KeySelector.
Nie trzeba zatem sluchacza socketChannela szukac, ale jest juz gotowy
w zalaczeniu KeySelectora.

Prose wybaczyc zawracanie dUPy, ale wszystkoe przez ksiazke "Java
Tworzenie Gier", w ktorej to przyklad serwera NIO jest napsiany
błędnie. Mało że nie wywołują na obiekcie KeySelector metody cancel(),
to jeszze ten problem teraz.

Adam G.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads