Compressing (Gzip or Deflate) Shows, Lists and vie

2019-06-21 03:07发布

问题:

It seems that couchdb automatically compress all its _attachments when requested with the correct header. But unfortunately this doesn't happen for views, show or lists.

Is there any way to achieve a compression before returning the result to the client?

Is using a third party library like deflatejs (didn't test it yet) a bad approach?

Thanks

回答1:

You can certainly use js-deflate in show and list functions, but you cannot do it in view functions. I also suspect it would be inefficient (just a guess, test it if you want numbers).

Until CouchDB does not support gzip encoding, the easiest solution is to put a reverse proxy in front of CouchDB to do the compression. For example you can use nginx with the HttpGzipModule.



回答2:

The Couchbase distribution of CouchDB (Couchbase Single Server) supports Google's snappy compression for the JSON files on disk. I believe the same goes for the views, but I'll have to defer to someone better qualified.