the write strategy of the client implement affects the set performance dramatically?

Tomash Brechko tomash.brechko at
Wed Mar 5 15:56:55 UTC 2008

On Wed, Mar 05, 2008 at 16:13:45 +0300, Maxim Dounin wrote:
> Consider the following scenario: 
> 1. Client sents several 'noreply' commands.
> 2. Then normal command.
> 3. Repeat from 1.
> This way without TCP_NODELAY you have to wait for delayed ack timeout on 
> every iteration.

I'm convinced.  I added this very sequence to benchmark script of
C::M::F.  The problem is reproducible, and TCP_NODELAY helps.

C::M::F 0.09 will manage TCP_NODELAY.  But not TCP_CORK/TCP_NOPUSH: I
still wasn't able to measure any significant saving with them to
justify additional setsockopt() call.  Plus it may actually be better
to steadily send the requests rather than to accumulate several of
them, and then post the whole load to the server.

   Tomash Brechko

More information about the memcached mailing list