On 1/18/11 at 7:20 PM, kowsik@gmail.com (kowsik) wrote:
>A couple of questions:
>
>1. Is anyone using erlang views (as opposed to Javascript) in a
>production environment?
>2. For the map and filter functions, is there any kind of published
>performance numbers that show the speed up?
>
>Yes, I'm aware of the built-in reduce functions and I'm using them
>extensively. I'm more interested in erlang filters + map functions for
>a write-heavy app that I'm working on.
>
>Thanks,
>
>K
>---
>http://www.pcapr.net
>http://twitter.com/pcapr
>http://labs.mudynamics.com
We moved over to erlang views and filters a few months ago in a
multi-master replicated system. The performance gains were
quite good and overall CPU load was lower, though I don't have
numbers available at hand.
For what it's worth: another motivation for the switchover were
problems with the management of the couchjs processes that are
spawned by couch to invoke the spider monkey javascript engine.
Under some loads and data access patterns using filtered change
listeners, we could repeatably drive couch to "meltdown" as
processes piled up when change listeners were
opened/failed/re-opened due to couch failing to send heart beats
for extended periods.
Moving to erlang at least eliminated the couchjs processes and
sped up the filtering, though the problem with heart beats
ultimately required some changes both to the filter's logic,
which prevented a producer from reading its own writes, and in
the front-end application framework to work around the problem.
Matt
|