I have intended to use Monit, as I saw in a Ramon Leon's post. But I have never play with it. I didn't know Munin, it is interesting.<br>Thanks for the tip.<br><br>Miguel Cobá<br><br><div class="gmail_quote">On Tue, Apr 29, 2008 at 10:01 PM, Sebastian Sastre <<a href="mailto:ssastre@seaswork.com">ssastre@seaswork.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span>Hi Miguel,</span></font></div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span></span></font> </div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span> you always have and share
interesting experiences. I like to use Monit not only because you can set it to
starts workers images but also you can set it to provide you of more details on
the run. For instance you can set it send you an email alert when a worker mem
is > 150MB or the CPU load average is >25% for more than 5 minutes. And,
beside the cool email alert, you can preset reactions like restarting the
worker, etc.</span></font></div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span></span></font> </div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span></span></font><font color="#0000ff" face="Trebuchet MS" size="2"><span> That way your service
dont need to reach perfection to be useful and when things go wrong with a
worker it most probably restart in few minutes unnatended. I'm very satisfied
with it. Also Munin is cool but it is for a different purpose, it plots lots of
metrics evolutions in time of your servers so you can watch more general
performance patterns.</span></font></div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span></span></font> </div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span> There are perfect setup how-tos for
those interested,</span></font></div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span> </span></font></div>
<div dir="ltr" align="left"><font color="#0000ff" face="Trebuchet MS" size="2"><span> cheers,</span></font></div>
<div><font color="#0000ff" face="Trebuchet MS" size="2"></font> </div>
<div align="left"><span>
<p style="margin: 0cm 0cm 0pt;" align="left"><span style="font-size: 10pt;">Sebastian
Sastre</span></p></span></div><br>
<blockquote style="border-left: 2px solid rgb(0, 0, 255); padding-left: 5px; margin-left: 5px; margin-right: 0px;">
<div dir="ltr" align="left" lang="es">
<hr>
<font face="Tahoma" size="2"><b>De:</b> <a href="mailto:seaside-bounces@lists.squeakfoundation.org" target="_blank">seaside-bounces@lists.squeakfoundation.org</a>
[mailto:<a href="mailto:seaside-bounces@lists.squeakfoundation.org" target="_blank">seaside-bounces@lists.squeakfoundation.org</a>] <b>En nombre de </b>Miguel
Cobá<br><b>Enviado el:</b> Martes, 29 de Abril de 2008 20:55<br><b>Para:</b>
Seaside - general discussion<br><b>Asunto:</b> Re: [Seaside] Re: Seaside
memory consumption?<br></font><br></div><div><div></div><div class="Wj3C7c">
<div></div><br><br>
<div class="gmail_quote">On Tue, Apr 29, 2008 at 2:40 PM, Andreas Raab <<a href="mailto:andreas.raab@gmx.de" target="_blank">andreas.raab@gmx.de</a>> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>Philippe Marschall wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Honestly
this is a very hard question that probably only marketing<br>developments
can answer seriously (JEE is twice as fast as .Net). If<br>have seen such
numbers for no web framework. There are so many free<br>variables. How
have active users, what session lifetime, how active<br>are they, do they
come in bursts, how complicated is your site, what<br>image do you have,
which VM, which GC settings, which patches, which<br>OS, which CPU, .... .
Out of the blue I would say Seaside and Magritte<br>are probably the most
memory hungry choices you can make. Lots of<br>classes, lots of objects,
lots of block contexts, .... Having that<br>said I know of no one who has
run into memory problems with Seaside /<br>Magritte but this means very
little. In general persistence is often<br>bottleneck. As you run code
besides it I doubt any numbers would be<br>applicable to
you.<br></blockquote><br></div>I fully understand the number of variables in
the setup so what I'm looking for is whether anyone has experimented with
-say- running Seaside inside a 128MB environment for a given site and load
factor and what their experiences were. For example, what does a small Pier
deployment require? (IIRC, it is built on top of Magritte so this may be the
closest in kind)
<div></div></blockquote>
<div><br>I had my app running from a VPS with just 256MB RAM. Of course after
the OS, apache, mysql, it lefted just 100MB or so. It was just imposible to
work. So I upgraded to 512MB RAM and all was running ok for days without
problems with my app. <br><br>but...<br><br>The image virtual memory grew and
grew until took the entire remaining RAM to the point that I couldn't login
with ssh. Not memory for forking a ssh procces was left. I had to restart the
server to take control of it (the image didn't started automatically). I found
an option for the squeakvm to limit the max memory available (it is not
available because if the images need more memory it will begin to swap and
will be slow, but men, it worked).<br>After reboot, I was left with 350 MB
free before running my image. So I started the image with<br><br>squeakvm
-mmap 300m -headless deploy.image<br><br>so the squeak used at most 300 mb and
the os had 50 MB for ssh logins.<br><br>Also, I changed Apache for lighttpd
with fastcgi so to reduce the RAM comsumption.<br><br>Miguel
Cobá<br> </div>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><br><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">In
general people who come up with such questions have an idea about<br>the
load they'll face or have to support so they can write
tests.<br></blockquote><br></div>Yes, I certainly do (it'd be in the range
of 1-2 man-hours of use a day, basically filling in a bunch of forms and
running a few reports mostly by a single user). But I'm not going to run a
big test suite for something that is supposed to be a very small
application. I just want to make sure I'm not going to screw up the
production app by running Seaside next to it.
<div><br><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">What<br>about
memory consumption of Seaside apps that run for several months
without<br>restart (session cleanup etc)?<br></blockquote><br>Session
cleanup happens even without restarts. If you run the<br>WeakDictionary
patches of Martin van Löws (I hope I got the name<br>right) you can
override SeasidePlatformSupport class >><br>#weakDictionaryOfSize:
which should release sessions earlier. I have<br>seen images that run
without troubles for months and images that have<br>trouble staying up for
more than a few days.<br></blockquote><br></div>Thanks, that's good to know,
too. Where are these patches?<br><br>Cheers,
<div>
<div></div>
<div><br> -
Andreas<br>_______________________________________________<br>seaside
mailing list<br><a href="mailto:seaside@lists.squeakfoundation.org" target="_blank">seaside@lists.squeakfoundation.org</a><br><a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br>
</div></div></blockquote></div><br></div></div></blockquote></div>
<br>_______________________________________________<br>
seaside mailing list<br>
<a href="mailto:seaside@lists.squeakfoundation.org">seaside@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br>
<br></blockquote></div><br>