This page (revision-4) was last changed on 11-Sep-2009 22:10 by JensKapitza 

This page was created on 05-Sep-2009 23:49 by JensKapitza

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
4 11-Sep-2009 22:10 1 KB JensKapitza to previous nio - video
3 09-Sep-2009 22:58 1018 bytes JensKapitza to previous | to last links
2 09-Sep-2009 22:28 962 bytes JensKapitza to previous | to last links
1 05-Sep-2009 23:49 828 bytes JensKapitza to last Netzwerkanwendungen

Page References

Incoming links Outgoing links

Version management

Difference between version and

Ich hab mich ein wenig mit Netzwerk-Programmierung beschäftigt,
an vielen Seiten sieht man noch das alte verwendete, Kommunikationsmodell
Wo Threads für jeden Client verwendet werden. Das endet bei mir schnell mit der Meldung
keine freien Ports! Oder mit einer stehenden Anwendung, da zu-viele Threads an sind.

Die erste Lösung war ein Thread-Pool, hier ist es aber schwer, dem Client dann das hmm stehen der Verbindung mitzuteilen.

Der bessere Ansatz, war das nutzen, (seit 1.4 von SUN vorgeschlagen) nicht Blockenden IO Streams [Channels]
Der Vorteil hier ist, es fallen die Threads weg, da die Anwengung beim lesen aus dem PORT nicht Blockt sondern halt nur mit den Daten die da sind arbeitet.

Wichtige Klassen:

* ServerSocketChannel
* Selector
* SelectionKey

TODO: Ein kleines Beispiel kommt nocht!

----
[Tutorial | http://www.owlmountain.com/tutorials/NonBlockingIo.htm]

[Apache MINA|http://mina.apache.org/documentation.html]

[SUN | http://java.sun.com/j2se/1.4.2/docs/guide/nio/]
<<
[NIO Youtube|http://www.youtube.com/watch?v=yNRS1ssLPdQ]