On Jul 6, 2010, at 6:11 PM, Mircea Markus wrote:
On 5 Jul 2010, at 14:01, Manik Surtani wrote:
>
> On 5 Jul 2010, at 11:58, Mircea Markus wrote:
>
>>
>> On 5 Jul 2010, at 13:50, Manik Surtani wrote:
>>
>>>
>>> On 5 Jul 2010, at 11:33, Mircea Markus wrote:
>>>
>>>>
>>>> On 5 Jul 2010, at 13:21, Manik Surtani wrote:
>>>>
>>>>> What sort of socket do you use? Depending on this,
socket.getOutputStream() may be the most efficient (if it is a zero-copy NIO buffer for
example).
>>>> SocketChannel socketChannel = SocketChannel.open(serverAddress);
>>>> *socket* = socketChannel.socket();
>>>
>>> Hmm. You could use ByteBuffers - and reuse them as well, if you know that
the byte array sizes are *roughly* similar.
>> no guarantee on that as I don't have control over the values.
>>> You will still have the same problem of a spike in value size that you
described below, in the case of pooling ExposedBAOS instances. You could maintain a
threshold and if such a stream were to exceed this size, instead of resetting and reusing
this instance you drop it from the pool and create a new one...
>>>
>>> This threshold would have to be configurable though otherwise you may end up
with a lot of unnecessary GC churn.
>> The more I think about it the more I like the idea of serializing the values
directly to the socket, and not reuse buffers for keys: these are small objects, and not
sure that the complexity (mainly thinking about concurrency control) would payoff.
>
> Yeah I'm all for keeping it simple.
I can't even serialize the value over the socket, as the protocol requires me to
first send the value size and then the serialized value: so I need to preserialize in a
byte[].
We'd need an streaming protocol to be able to do that
(
https://jira.jboss.org/browse/ISPN-449)
>
> --
> Manik Surtani
> manik(a)jboss.org
> Lead, Infinispan
> Lead, JBoss Cache
>
http://www.infinispan.org
>
http://www.jbosscache.org
>
>
>
>
>
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/infinispan-dev
_______________________________________________
infinispan-dev mailing list
infinispan-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev
--
Galder Zamarreño
Sr. Software Engineer
Infinispan, JBoss Cache