Regarding Asynch streaming, My view would be to use a vendor/technology agnostic open protocol - MQTT and AMQP for example