[jbosscache-dev] Re: Non Blocking State Transfer Status (& Integration with JGroups)
Jason T. Greene
jason.greene at redhat.com
Wed Jan 7 17:52:45 EST 2009
Jason T. Greene wrote:
> Jason T. Greene wrote:
>> Bela Ban wrote:
>>>
>>>
>>> Brian Stansberry wrote:
>>>> BTW, is a *JGroups* streaming API necessary here? The old AS Farm
>>>> service passed arbitrary sized files by sending byte[] chunks via
>>>> RpcDispatcher calls. Worked fine. That's not quite what JBC would
>>>> need, since FarmService read a chunk from a FileInputStream and
>>>> passed it to JGroups; you'd want an OutputStream impl that would
>>>> pass a chunk to JGroups when it's internal buffer reached size X.
>>>
>>> +1.
>>>
>>> On the side: I know a <big unnamed company> uses streaming state
>>> transfer to do this. Not really the way it was designed for, but it
>>> works well for them.
>>> Here's the link:
>>> http://www.nabble.com/Streaming-Message-Transfer---td14476343.html.
>>> The 3rd posting from the top describes their approach.
>>>
>>> I still think though that JBC implementing this via chunks would be
>>> the better solution.
>>>
>>>
>>
>> So there does appear to be a common need for sending a large stream to
>> members in the group. JBC needs it, Streaming State Transfer needs it,
>> Farming needs it, and at least one customer needs. The question is,
>> should jgroups support the capability at its core, or should such use
>> cases use a p2p framework.
>>
>> Chunking over a messaging api will work, but it is definitely not the
>> optimal approach. It is probably good enough. However, i suspect it
>> becomes a problem when people have gigs of data to send.
>>
>
> After considering this more I think I can take advantage of streaming
> state transfer by clever use of state id's, and intelligent formatting
> of the state.
>
In fact, I might even be able to do this in one stream. I will build a
prototype around this.
--
Jason T. Greene
JBoss, a division of Red Hat
More information about the jbosscache-dev
mailing list