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

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

Benoit, I wanted to add briefly, as I believe we have already discussed this, 
but it may be fundamentally impossible to improve the serialisation/view server 
communication structure except by migrating to a completely different 
architecture, e.g. perhaps a shared memory design, or loadable module design. 

For example, it might be possible to load executable map/reduce/design document 
code directly into the CouchDB process and then have it accept whatever 
in-memory representation of the document as an argument. 

Another option I briefly considered was to use shared memory regions to reduce 
serialisation overhead. Rather than passing complete documents, we could pass a 
memory mapped descriptor to the child process and use this for communication. 
However, the actual protocol would remain the same, it might just reduce the 
issues relating to encoding - we really need some way to benchmark the overhead 
added by encoding.

Hence, the extensions field in the proposed protocol - it should be possible to 
implement special extensions, for e.g. shared memory regions. But, these 
approaches wouldn't be universally supported.
                
> 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