[ 
https://issues.apache.org/jira/browse/COUCHDB-1743?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13648416#comment-13648416
 ] 

Samuel Williams commented on COUCHDB-1743:
------------------------------------------

Benoit, all good points.

1/ JSON, while primarily a text based specification, can be implemented using a 
variety of different encodings. Other systems have tried to address the 
serialisation issue, for example BJSON (http://bjson.org). I assert that it 
would be trivial to convert any existing JSON based RPC to BJSON or some other 
similar standard to reduce encoding overhead.

2/ stdin/stdout can be redirected across a network with minimal issues.

3/ Sequential processing and parallel processing are vastly different. In the 
case of parallel view server, CouchDB would be required to submit multiple 
units of work and accept their results out of order. CouchDB, if it is aware of 
non-parallel view servers, could spawn multiple view server processes to 
achieve the same result. The main benefit to parallelism is reduced resource 
consumption and improved processor utilisation. But actually, in many cases, 
process-level parallelism can be as good as thread-level parallelism.

4/ A task id identifies a job which is running asynchronously. It runs exactly 
the same as a sequential job, but all RPC interactions are tagged which allows 
out of order scheduling.

5/ I'm quite happy with it being a Google document for now, but sure, we could 
migrate it to the wiki if it is easier for people to edit. I'm happy to let 
people edit it at present if you have a google account, or perhaps simply make 
a copy of it and make your changes/suggestions in a different colour.


                
> Make the view server & protocol faster
> --------------------------------------
>
>                 Key: COUCHDB-1743
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1743
>             Project: CouchDB
>          Issue Type: Improvement
>            Reporter: Dave Cottlehuber
>              Labels: couchdb, erlang, gsoc2013, html, javascript, nodejs, rest
>
> View server protocol enhancements/refactoring - unix sockets, pipelining, 
> different wire format etc. Faster!!

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to