users@grizzly.java.net

Re: Streaming server with Grizzly

From: Jeanfrancois Arcand <Jeanfrancois.Arcand_at_Sun.COM>
Date: Fri, 19 Sep 2008 14:35:53 -0400

Salut,

I've summarized what needs to be done for an async http client here:

https://grizzly.dev.java.net/issues/show_bug.cgi?id=265

I'm pretty sure we can have something quite fast without to much work.
The missing API are really how we allow user to construct HTTP request.

A+

Jeanfrancois Arcand wrote:
> Salut,
>
> Survivant 00 wrote:
>> so Comet will be good for the server streaming audio, but if I want a
>> more complex design.. the client can stream too. Should I use Comet
>> on the client side too, and send the data to the server ( the client
>> became a server too)... can Cometd handle that ?
>
> Not Cometd. Cometd (the Bayeux Protocol) is a JSON based protocol build
> on top of HTTP. It's like a publish/subscribe protocol, and streaming
> using Bayeux might be over complicated (not sure you can do that right
> now).
>
> For the client yes your can use Comet as well, but the problem right now
> is we don't have a http client implementation....but if you want to
> help, it should be simple enough to take the parser from the http module
> and use it for a non blocking http client. Once we have the http client
> it will be quite simple to add Comet on top of it.
>
> I'm really interested to have a http client. It is something we need for
> sure, just need time to do it :-)
>
> A+
>
> -- Jeanfrancois
>
>
>
>>
>>
>>
>> 2008/9/19 Jeanfrancois Arcand <Jeanfrancois.Arcand_at_sun.com
>> <mailto:Jeanfrancois.Arcand_at_sun.com>>
>>
>> Salut,
>>
>>
>> Survivant 00 wrote:
>>
>> suppose that I want to do it with http protocol. What should I
>> use ? (the client will be in java too)
>>
>> - plain Grizzly as server ?
>> - comet ?
>>
>>
>> Hey hey of course Comet! :-) Seriously you have 2 choices:
>>
>> (1) Extend the http module (via the Adapter/GrizzlyAdapter
>> interface)[1]
>> and implement you own way of suspending/resuming using AsyncFilter[2]
>>
>> (2) Use Grizzly Comet Framework to resume/suspend connection, and
>> your
>> application using a Servlet.
>>
>> Both should works :-)
>>
>> A+
>>
>> -- Jeanfrancois
>>
>>
>> [1]https://grizzly.dev.java.net/nonav/apidocs/com/sun/grizzly/tcp/http11/GrizzlyAdapter.html
>>
>>
>> [2]https://grizzly.dev.java.net/nonav/apidocs/com/sun/grizzly/arp/AsyncFilter.html
>>
>>
>>
>>
>>
>> - package http of grizzly ?
>> - grizzlet ?
>> - glassfish as webserver ?
>>
>>
>>
>>
>> 2008/9/18 Survivant 00 <survivant00_at_gmail.com
>> <mailto:survivant00_at_gmail.com> <mailto:survivant00_at_gmail.com
>> <mailto:survivant00_at_gmail.com>>>
>>
>>
>> I found this protocol
>> http://jstun.javawi.de/
>>
>> but I wanted to validate if the Grizzly Community ever did or
>> try to
>> setup a server/client through a NAT network.
>>
>> Will be fun to try..(will give you the code when it's ready)
>> suggestions are welcome.
>>
>> 2008/9/18 Jeanfrancois Arcand <Jeanfrancois.Arcand_at_sun.com
>> <mailto:Jeanfrancois.Arcand_at_sun.com>
>> <mailto:Jeanfrancois.Arcand_at_sun.com
>> <mailto:Jeanfrancois.Arcand_at_sun.com>>>
>>
>>
>> Salut,
>>
>>
>> Survivant 00 wrote:
>>
>> does Grizzly have custom protocol handler to
>> handler udp
>> through NAT and firewalled network ?
>>
>>
>> No, but should this configured at the JDK level? You
>> have to
>> train myself on that topic :-)
>>
>> A+
>>
>> --Jeanfrancois
>>
>>
>>
>>
>>
>>
>> 2008/9/18 Oleksiy Stashok <Oleksiy.Stashok_at_sun.com
>> <mailto:Oleksiy.Stashok_at_sun.com>
>> <mailto:Oleksiy.Stashok_at_sun.com
>> <mailto:Oleksiy.Stashok_at_sun.com>>
>> <mailto:Oleksiy.Stashok_at_sun.com
>> <mailto:Oleksiy.Stashok_at_sun.com>
>> <mailto:Oleksiy.Stashok_at_sun.com
>> <mailto:Oleksiy.Stashok_at_sun.com>>>>
>>
>>
>> Hi,
>>
>>
>> a little question. I would like to do as my
>> next
>> demo, a music
>> streaming server using Grizzly.
>>
>> Sounds very interesting! :)
>>
>>
>> Frist, there is a demo that do live
>> broadcasting (not
>> a push,
>> but continually sending data to all users). I
>> don't
>> know if I
>> should use async write or not.
>>
>> I would say yes - async write could be better to
>> make
>> server more
>> scalable.
>>
>>
>> any suggestion how I shoudl start and what I
>> should
>> consider in
>> my design ?
>>
>> Hmm... I don't have any experience in broadcasting
>> audio/video.
>> However I would expect you should write such a
>> protocol
>> on top of
>> UDP, right? Probably with some reliability
>> features.
>>
>>
>> I suppose that the client will have a buffer
>> and no, or a
>> little, latency on the network, and no error
>> recovery
>> (the data
>> will be lost.. that's it)..
>>
>> Right. With UDP it's doable.
>>
>> Thanks.
>>
>> WBR,
>> Alexey.
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail:
>> users-unsubscribe_at_grizzly.dev.java.net
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net>
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net>>
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net>
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net>>>
>>
>> For additional commands, e-mail:
>> users-help_at_grizzly.dev.java.net
>> <mailto:users-help_at_grizzly.dev.java.net>
>> <mailto:users-help_at_grizzly.dev.java.net
>> <mailto:users-help_at_grizzly.dev.java.net>>
>> <mailto:users-help_at_grizzly.dev.java.net
>> <mailto:users-help_at_grizzly.dev.java.net>
>> <mailto:users-help_at_grizzly.dev.java.net
>> <mailto:users-help_at_grizzly.dev.java.net>>>
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail:
>> users-unsubscribe_at_grizzly.dev.java.net
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net>
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net>>
>> For additional commands, e-mail:
>> users-help_at_grizzly.dev.java.net
>> <mailto:users-help_at_grizzly.dev.java.net>
>> <mailto:users-help_at_grizzly.dev.java.net
>> <mailto:users-help_at_grizzly.dev.java.net>>
>>
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe_at_grizzly.dev.java.net
>> <mailto:users-unsubscribe_at_grizzly.dev.java.net>
>> For additional commands, e-mail: users-help_at_grizzly.dev.java.net
>> <mailto:users-help_at_grizzly.dev.java.net>
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_grizzly.dev.java.net
> For additional commands, e-mail: users-help_at_grizzly.dev.java.net
>