Of course non-blocking is what people want for stuff like websockets in most situations.
Right, websockets servers tend to need NIO otherwise you just wind up with too many threads to manage. However, streaming has uses outside of websockets; for instance, returning a response that's too large to want to hold in memory.
Or simply flushing out the <head> of a html document before the body is generated so the browser can start pre-fetching resources. That's the main use case that motivated Rails to implement streaming.