On Thu, Jun 23, 2011 at 6:21 AM, ecyrbe <ecy...@gmail.com> wrote: > 2011/6/23 John Stowers <john.stowers.li...@gmail.com> >> >> On Thu, 2011-06-23 at 11:48 +0200, ecyrbe wrote: >> > thank you john for the bits of history of the design. >> > i do know about server programming, as in fact it's my job to make >> > high load servers in c++. >> > i also understand the design better and the solution you try to >> > provide. >> > >> > as i said. you can make the server lightweight inside the shell, i >> > don't think people would complain as this would make it a lighter >> > solution than a separate daemon. >> > The problem with a separate daemon, is that you end up using a process >> > to do nothing 99% of the time. integrating it in the shell would make >> > it : >> > - leightweight -> you only add a listening port to gnome-shell. >> > - integrated -> you don't need to add a dbus api to control extension >> > enabling/disabling >> > - easy to implement -> you only have to use libsoup asynchronously, no >> > threading use >> > - no memory overhead -> it's integrated in the shell , you don't have >> > to allocate a new stack for it >> > >> > so, why not integrate it? why would people complain ? >> >> Cool. As an engineer you probably also understand that one does not >> always start with the perfect implementation. >> >> Pragmatically the separate process HTTP server is not bad for a first >> go. >> >> I'm still not convinced a process that is sleeping 99% is a big deal. It >> should be swapped out and take no resources. >> >> John >> > > My point of view about a separate process vs integrated one is not (only) > that sleeping 99% of the time is bad.
The current out-of-process implementation was a hack to get to show people what I've been doing. When I'm done, it will probably be libsoup-based, but who knows? I want to move onto features. > it's that for users that don't use extensions (or even not wanting to update > them), you have a process launched that do nothing all the time when you > don't need it. > > For me a process is not only cpu resource ,it's also memory used, system > wide monitoring etc... i don't think a daemon http server is an easy path to > take. Why would a sleeping daemon take up any CPU resources? It wouldn't be running code when sleeping -- it would just be waiting on select()... memory-wise, the local HTTP server that i've been testing with that's been running for almost four hours is taking up 9kb of memory. I doubt this will go up *that* much. And what is "system-wide monitoring" > But once taken, if you can make your job easier, do it, that's why i'm > suggesting the integration in the shell, > > This way you would (i think) have less poeple complaining about a daemon > running for nothing when they are not using extensions. > > if i can be of any help to jasper to implement this in the shell, i can > take some time to make a patch for review. > i'm not suggesting for jasper to do it alone, i'm willing to help if he > wants. I've posted most of the code I've been using, see the bugs that the tracker bug depends on[0]. My job for today is to write up a README and some documentation so you can play with it yourself. > ++ > -- Jasper [0] https://bugzilla.gnome.org/show_bug.cgi?id=652613 _______________________________________________ gnome-shell-list mailing list gnome-shell-list@gnome.org http://mail.gnome.org/mailman/listinfo/gnome-shell-list