LockerProject / Locker

Locker - the "me" platform
http://lockerproject.org/
BSD 3-Clause "New" or "Revised" License
1.07k stars 123 forks source link

Vm #891

Closed temas closed 12 years ago

temas commented 12 years ago

This runs synclets in VM contexts rather than separate instances. This is the first pass of it and is a separate logic flow using synclet.vm as a flag to run it. Currently only twitter/friends is redone for this method. The idea is to get this into core so that others can test and not deal with huge hassles as we work in syncmanager. While that is going on I'm going to convert more and run locally.

I did some basic testing of the memory usage and you can see the results at: https://gist.github.com/1944169

As far as I can tell there is no leak, and cleans itself up nicely and quickly.

amcjen commented 12 years ago

I code-reviewed this w/ temas--he walked me through the overall changes.

+1, this is really exciting. Moar eventing!

mdz commented 12 years ago

I can't really comment on the code, but I'm keen to deploy this incrementally if at all possible, so we can more accurately measure the effects.

Is it feasible to roll out twitter/friends first and then convert the rest afterward?

temas commented 12 years ago

Absolutely, we can convert each synclet one at a time. It uses a flag in the synclet information to know whether or not to use vm or not.

quartzjer commented 12 years ago

this has all of twitter converted, plus some other fixes