I was wondering. I think you can achieve streaming already without the need to bloat a fairly compact stack.
Here is the idea: GameServer { oneway sendClientRequest(dosomething) } GameClient { oneway sendClientResponse(didSomthing) } using a simple full duplex connection: client - > server (client[outputstream] -> server[inputstream]) server -> client client[input stream] <- server[outputstream]) it is async, and works with existing syntax thrift... etc.