Curb performance when doing a PUT ( ripple 0.8.1 )

David Dawson david.dawson at gmail.com
Wed Oct 20 12:07:37 EDT 2010


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/20101020/705db4d6/attachment.html>


More information about the riak-users mailing list