Re: rgw has serious GET perfomance problem with objects < 1448 bytes long

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This feature is already present in upstream civetweb (so mimic or later). You can turn it on with your rgw_frontends configuration, ie. rgw_frontends = civetweb port=80 tcp_nodelay=1

There's an rfe to support this in the beast frontend at http://tracker.ceph.com/issues/34308


On 08/28/2018 12:44 PM, Mark Nelson wrote:
Excellent news Matt!  Is it worth creating a tracker ticket or would that be redundant at this point?

Mark


On 08/28/2018 11:37 AM, Matt Benjamin wrote:
That has come up before.  We have a downstream change to disable that,
and it's being upstreamed.

Matt

On Tue, Aug 28, 2018 at 12:29 PM, Mark Nelson <mark.a.nelson@xxxxxxxxx> wrote:
Hi Mark,

Thanks for testing this!  Is there any chance I could get you to create a
tracker ticket and upload your data here?

https://tracker.ceph.com/projects/rgw

I doubt very many people have run performance tests on sub-4k byte objects. In bluestore at least, you'll also get hit by the min-alloc size which means pretty significant write and space amplification.  Out of curiosity, do you
know of many folks or applications that write out swift/S3 objects this
small?

Mark

On 08/28/2018 08:16 AM, Mark Seger wrote:
I tried to include some data and the mail was rejected because of a
suspected virus ;(

Anyhow, running getput to talk to RGW via the swift API with varying
object sizes I discovered GETs of objects with sizes less than 1448 bytes were taking 40msec longer which exactly corresponds to the delay the nagel alorgithm inserts under certain buffer alignment conditiions. I found this
exact same problem with swift a number of years ago.

The curious thing is I see in
http://docs.ceph.com/docs/master/rados/configuration/network-config-ref/?highlight=public%20addr#tcp
it says nagel IS disabled in rados but maybe not RGW?

-mark








[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux