netty as general-purpose event loop?

Brane F. Gračnar brane.gracnar at planet9.si
Fri Apr 9 11:57:10 EDT 2010


Hi!

I must rewrite my perl-POE (http://poe.perl.org/?What_POE_Is) based service 
monitoring application in faster language than perl. Perl POE framework can't 
cope with 100+ concurrent events/alarms even when using C-based underlying 
event loop based on linux epoll implementation.

Java language seems to have best productivity/performance ratio for my 
project; now i'm looking for nice event loop implemention;

What my application does:

- it has abstract source implementation (http, sql, socket, command)

- each source object of any implementation (1000+ objects per process 
instance) works independently from each other

- each source object tries to fetch data every 10 seconds (example: performs 
http get), timeout: 5 seconds;

- sources can be added and removed at runtime; sources can be paused and 
resumed at runtime

- after source completed fetch operation it pushes fetched trough chain of 
parsers and filter

- some abstract storage then stores filtered data.

Sounds and smells like web crawler, but is not :)

However, i tested netty with simple hello world http server implementation and 
i'm really satisfied with it's performance; but i don't know how to implement 
concept described above using netty. In fact i don't know if netty is what i'm 
looking for. Is there any decent POE like implementation of event loop for 
java (i need filedescriptor read/write watchers, event schedulers, timers and 
alarms)? All i found on internet was GUI/AWT related...

Thanks in advance for any example/javadoc link/any kind of info.

Best regards, Brane


More information about the netty-users mailing list