David,

I just wanted to say "thanks" for making this proposal! I'm also interested in 
performing nonblocking I/O (multiplexing threads/reactive programming) within 
Flink operators so that we can, for example, communicate with external web 
services with Netty/RxNetty without blocking an entire Flink slot (aka a 
thread) while we wait for the operation to complete. It looks like your FLIP 
will enable that use case.

I'm not sure whether it will be possible to share one Netty EventLoopGroup (or 
the equivalent for any other non-blocking framework, connection pool, etc.) 
among multiple slots in a single JVM though. Flink supports open/close 
operation on a RichFunction, but that's on a per-slot basis. I don't know of a 
way to open/close objects on a per-job-JVM basis. But I suppose that's an issue 
that should be discussed and resolved separately.

-Shannon

Reply via email to