users@grizzly.java.net

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

From: Miroslav Nachev <miro_at_space-comm.com>
Date: Wed, 05 Dec 2007 17:38:31 +0200

OK. May I ask another question. Let's forget for Real-Time and focus on
splitting one channel to many channels and vice versa. This is very
useful for both cases:
- In one telephone conversation for some reason one of the party decide
to start recording the conversation. In this case the channel must be
splited on 2 channels.
- In voice conferences there are many parties and each channel must be
mixed and splited to the other channels.

Is it possible this to be done using Grizzly?


Miro.


charlie hunt wrote:
> 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 ~
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_grizzly.dev.java.net
> For additional commands, e-mail: users-help_at_grizzly.dev.java.net
>
>