Curb performance when doing a PUT ( ripple 0.8.1 )

Sean Cribbs sean at basho.com
Thu Oct 21 08:20:28 EDT 2010


David,

Sorry for the late reply.  When the verbose output from curl is being printed, does it pause for a long time between "Expect: 100-continue" and the response?

Sean Cribbs <sean at basho.com>
Developer Advocate
Basho Technologies, Inc.
http://basho.com/

On Oct 20, 2010, at 12:07 PM, David Dawson wrote:

> Sean, 
> 
> Here is the info you requested
> 
> 1. ruby 1.9.2-p0
> 
> 2. There is nothing between the Ruby app and RIAK
> 
> 3. Here is the output
> 
> ruby-1.9.2-p0 > c.save!
> * Re-using existing connection! (#0) with host 127.0.0.1
> * Connected to 127.0.0.1 (127.0.0.1) port 8098 (#0)
> > PUT /riak/organisations/itv?returnbody=true HTTP/1.1
> Host: 127.0.0.1:8098
> Accept: multipart/mixed, application/json;q=0.7, */*;q=0.5
> X-Riak-Clientid: Z9ni5A==
> Content-Type: application/json
> X-Riak-Vclock: a85hYGAQzGDKBVIs/xeH22YwJTLlsTK4pBgf44MIszUnsYu+fwqUYARKNKbCJVh07R/kAoWZgcIZaQjh9bWSslDV8zKRjWF0mWONVYJlHvspqER2FsIg7uN3NkDN/4gkvFujQg+q2jMbxZjsK1aYEiy3p4rwQYVrUdQzejitxyrB+p75JlSCNw9hkH+oTQY0fHq6kdUz810Khqqf04dQr3H8SADU/cjC6TcfPYGqPt+HbAzbG35pZIksAA==
> Content-Length: 829
> Expect: 100-continue
> 
> * Done waiting for 100-continue
> < HTTP/1.1 100 Continue
> < HTTP/1.1 200 OK
> < X-Riak-Vclock: a85hYGAQzGDKBVIs/xeH22YwJTLlsTK4pBgf44MIszUnsYu+fwqUYARKNKbCJVh07R/kAoWZgcIZacjqGV3mWEPVz8tEqF9fKymLKQxUzzKP/RRUIjsLoZ77+J0NUPM/ZqGoz75iBVXvmY1Qv1ujQg9TGOQeD6f1UIlaJPW3p4rwYQoD1bO+Z74JleDNQ6j3D7XJgIZPTzdCWOP4kQCoM+f0IRvDzHcpGGoMqgTbG35pqMR5hARL+s1HT6Dmi/YDhbMA
> < Vary: Accept-Encoding
> < Server: MochiWeb/1.1 WebMachine/1.7.2 (participate in the frantic)
> < Link: </riak/organisations>; rel="up"
> < Date: Wed, 20 Oct 2010 16:04:37 GMT
> < Content-Type: application/json
> < Content-Length: 829
> < X-Charles-Received-Continue: HTTP/1.1 100 Continue
> < Connection: Keep-alive
> < 
> * Expire cleared
> * Connection #0 to host 127.0.0.1 left intact
> /Users/ddawson/git/falcon_modules/rel/falcon_modules/modules/common/lib/falcon/document_extensions.rb:210: warning: already initialized constant OrganisationIndex
> * Re-using existing connection! (#0) with host 127.0.0.1
> * Connected to 127.0.0.1 (127.0.0.1) port 8098 (#0)
> > GET /riak/organisations/index HTTP/1.1
> Host: 127.0.0.1:8098
> Accept: multipart/mixed, application/json;q=0.7, */*;q=0.5
> X-Riak-Clientid: Z9ni5A==
> 
> < HTTP/1.1 200 OK
> < X-Riak-Vclock: a85hYGBgzmDKBVIs/qE2GRlMicx5rAw93cbH+KDCGsePBACFGYHCc/oQwuk3Hz2BCl8ACWcBAA==
> < Vary: Accept-Encoding
> < Server: MochiWeb/1.1 WebMachine/1.7.2 (participate in the frantic)
> < Link: </riak/organisations/itv>; riaktag="documents", </riak/organisations>; rel="up"
> < Last-Modified: Wed, 20 Oct 2010 16:03:28 GMT
> < ETag: 6cT6EKb6ruH0hUfc7J6xW0
> < Date: Wed, 20 Oct 2010 16:04:37 GMT
> < Content-Type: application/json
> < Content-Length: 43
> < Connection: Keep-alive
> < 
> * Expire cleared
> * Connection #0 to host 127.0.0.1 left intact
> * Re-using existing connection! (#0) with host 127.0.0.1
> * Connected to 127.0.0.1 (127.0.0.1) port 8098 (#0)
> > PUT /riak/organisations/index?returnbody=true HTTP/1.1
> Host: 127.0.0.1:8098
> Accept: multipart/mixed, application/json;q=0.7, */*;q=0.5
> X-Riak-Clientid: Z9ni5A==
> Content-Type: application/json
> X-Riak-Vclock: a85hYGBgzmDKBVIs/qE2GRlMicx5rAw93cbH+KDCGsePBACFGYHCc/oQwuk3Hz2BCl8ACWcBAA==
> Link: </riak/organisations/itv>; riaktag="documents"
> Content-Length: 43
> Expect: 100-continue
> 
> * Done waiting for 100-continue
> < HTTP/1.1 100 Continue
> < HTTP/1.1 200 OK
> < X-Riak-Vclock: a85hYGBgzmDKBVIs/qE2GRlMicx5rAw93cbH+KDCGsePBACFGYHCc/oQwuk3Hz0BCjMBhcX6gcJZAA==
> < Vary: Accept-Encoding
> < Server: MochiWeb/1.1 WebMachine/1.7.2 (participate in the frantic)
> < Link: </riak/organisations/itv>; riaktag="documents", </riak/organisations>; rel="up"
> < Date: Wed, 20 Oct 2010 16:04:38 GMT
> < Content-Type: application/json
> < Content-Length: 43
> < X-Charles-Received-Continue: HTTP/1.1 100 Continue
> < Connection: Keep-alive
> < 
> * Expire cleared
> * Connection #0 to host 127.0.0.1 left intact
>  => #<Riak::RObject http://127.0.0.1:8098/riak/organisations/index [application/json]:nil> 
> 
> 
> On 20 Oct 2010, at 16:53, Sean Cribbs wrote:
> 
>> Dave,
>> 
>> A few questions:
>> 1) Which version of Ruby are you using?
>> 2) Do you have anything between your Ruby app and Riak (e.g. a load balancer, reverse proxy, etc)?
>> 3) Can you enable "verbose" mode on curl and paste the output?  Here's how:
>> 
>> client.http.send(:curl).verbose = true
>> 
>> Sean Cribbs <sean at basho.com>
>> Developer Advocate
>> Basho Technologies, Inc.
>> http://basho.com/
>> 
>> On Oct 20, 2010, at 11:45 AM, David Dawson wrote:
>> 
>>> I am currently doing some benchmarking with the current ripple library and have noticed that a 'PUT' ( on mac os x ) is taking over 1 sec when using the curb library!
>>> 
>>> If I force the riak-client to use net http instead then the same 'PUT'  takes less than 20 ms
>>> 
>>> For now we are going to disable the curb library, although this is the library which is recommended for speed purposes?
>>> 
>>> BTW, we are using RIAK 0.13.0
>>> 
>>> Dave
>>> _______________________________________________
>>> riak-users mailing list
>>> riak-users at lists.basho.com
>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20101021/e818f5d0/attachment.html>


More information about the riak-users mailing list