users@grizzly.java.net

Re: Java New I/O, Multiplexing and Mixing/Splitting of Channels

From: charlie hunt <charlie.hunt_at_sun.com>
Date: Wed, 05 Dec 2007 09:08:28 -0600

Sailfin project is a good example of a pause time constraint application
which uses Grizzly.

On MINA ... it is a good general purpose NIO based framework. Grizzly
in contrast to MINA focuses on performance and scalability first where
I'd claim MINA's emphasis is more so on a general purpose framework.
Also, at the URL I posted below you'll see a comparison of AsyncWeb
running on top of Grizzly versus MINA. You can look at the slides and
draw your own conclusion(s).

It has been a little while since I last looked at javolution's library.
So, I don't think I can fairly comment on its current performance versus
what's available in JDK 6 (or JDK 5) SE class libraries or via Grizzly.

charlie ...

Xasima Xirohata wrote:
> Miro, If you need time-deterministic utility classes, but don't want
> to fully migrate to Sun's Real Time Java, then
> you may try the http://javolution.org/ library. If you want to find
> the other possible place to try out the NIO-related classes, than
> check http://mina.apache.org/ project. I suspect that you may have a
> look to https://sailfin.dev.java.net/ <https://sailfin.dev.java.net/>
> project as on one of the real project that uses grizzly, nio and that
> is dealt with 'work with voice, video, audio' conference topic (I
> think it worth to look although I don't know the nature of the project
> well) . Probably, you have to investigate some issues related on
> architecture and algorithms (besides NIO) on
> http://www.highscalability.com/start-here
> <http://www.highscalability.com/start-here> if you are going to build
> some "useful Realtime application" mentioned by you earlier.
>
> If I miss something in explanation I hope someone from the list makes
> some notices, fixes and add further explanations.
>
> On Dec 5, 2007 2:52 PM, charlie hunt <charlie.hunt_at_sun.com
> <mailto:charlie.hunt_at_sun.com>> wrote:
>
> Miro,
>
> As you know, Project Grizzly is pure Java. But, Project Grizzly's
> emphasis is on performance. Also, if you look at the JavaOne
> presentation
> (
> http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS-2992&yr=2007&track=5
> <http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS-2992&yr=2007&track=5>),
> you will see that Grizzly out performs both Java based
> applications and
> native implementations. That presentation also provides many of the
> tips & tricks we applied to using Java NIO effectively to realize
> performance and scalability.
>
> If you have "true" real time requirements with deterministic pause
> times, then Java SE itself may not be able to meet those
> requirements.
> In that case you will either need to look at real time Java solution
> such Sun's Real Time Java or a native real time solution. Fwiw,
> migrating Grizzly to run / work in a Sun's Real Time JVM would
> probably
> not be too difficult.
>
> hths,
>
> charlie ...
>
> Miroslav Nachev wrote:
> > Hi,
> >
> > I am writing my question here because I can not find another
> suitable
> > Mail list where are so familiar with Java NIO and in the same time
> > Grizzly project is very close to my question.
> >
> > We try to realize in pure Java code Multiplexing and
> Mixing/Splitting
> > of Channels but the delay is too big and that's why we are
> looking for
> > some library or utility where this can be done faster using C
> language
> > and JNI. Can we use for that purposes Java NIO and how? Are such
> > capabilities provided in Grizzly project?
> >
> > Some useful Real-time applications where the above technics are
> need are:
> > - Audio/Video Conferences;
> > - Voice/Video Recording/Tapping;
> > - Voice/Audio/Video Compression and Decompression;
> > - Echo Cancellation (Line, Acoustic).
> >
> > Thank you in advance.
> >
> >
> > Regards,
> > Miro.
> >
> >
> ---------------------------------------------------------------------
> > 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
> <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>
>
>
>
>
> --
> Best regards,
> ~ Xasima Xirohata ~