Hello Mongrels, Building on the last messages about Fastthread, can we get a detailed survey of the different ways people are deploying their applications? It will help with near-future Mongrel development. Please include the following things: * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...) * Mongrel version * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...) * How many mongrel routes and handlers per route registered (if you don''t know, it''s probably <= 2) * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, mongrel_cow_cluster, mongrel_experimental...) * Mongrel runners used (mongrel_rails, mongrel::cluster, mongrel_service, RV, others... please be *very specific* about which options of the runner you use. For example, some people use mongrel::cluster but only for the --clean functionality, not for the clustering). * Number of mongrels per server per app * Monitoring system (runit, monit, god...) * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, nginx, pen...) * HW loadbalancer, if any (Netscaler...) * Caching strategy (memcached fragments, memcached object, squid, rails page cache, rails page fragments, ESI) * Whether you serve media assets via mongrel itself, as opposed to through a webserver * Operating system including distribution or version (OS X 10.4.10, Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...) * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, Arm (ha), JRuby) * CPU count * Ruby version including custom distribution patches, (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also note where you got it, in case it isn''t clear, for example, OS X 10.5 built-in, Ubuntu apt, Instant Rails, direct compile from source) * Rubygems (yes/no, version) Please mention anything else about your system that''s kind of weird, and anything that''s been particularly troublesome regarding mongrel deployment. Evan PS. You can get some of the Ruby information via the ''tattle'' gem: $ gem install tattle --ignore-dependencies $ tattle report -- Evan Weaver Cloudburst, LLC
On Jan 3, 2008 12:45 PM, Evan Weaver <evan at cloudbur.st> wrote:> Hello Mongrels, > > Building on the last messages about Fastthread, can we get a detailed > survey of the different ways people are deploying their applications? > It will help with near-future Mongrel development.Evan, How would you like us to report this? To the whole mongrel list, or just to you? Any particular format helpful? -- Sean Brown seanmichaelbrown at gmail.com
For cruisecontrolrb.thoughtworks.com (which basically runs on RubyWorks 1.1 RPMs with somewhat modified configuration):> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...)Rails> * Mongrel version1.0.1> * Mongrel handlers usedrails, dirhandler> * How many mongrel routes and handlers per route registeredmongrel_rails defaults> * Any Mongrel plugins usednone> * Mongrel runners usedmongrel_rails, non-detached (i.e., no --daemon option), launched from runit> * Number of mongrels per server per app4. No reason other than it''s a sensible default number (i.e., never needed to optimize it).> * Monitoring systemmonit and runit technically, runit is not a monitoring system> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, nginx, pen...)HAProxy> * Caching strategyRails page cache> * Whether you serve media assets via mongrel itself, as opposed to through a webserver.Apache via mod_rewrite URL matching> * Operating system including distribution or versionLinux (CentOS 5)> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, Arm (ha), JRuby)x86_64> * CPU count4 dual core CPUs on a VM host running several virtual machines.> * Ruby version including custom distribution patches1.8.6 p36, from RubyWorks RPM repo. Upgrade to p111 is planned soon-ish. Lots of people are running 1.8.5 p35 with patches, as that is what mainstream Linux distros (RedHat, Debian, Ubuntu) provide.> * Rubygems (yes/no, version)yes, 0.9.4> anything weirdNothing that you don''t already know about. -- Alexey Verkhovsky CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com] RubyWorks [http://rubyworks.thoughtworks.com]
On 3 Jan 2008, at 13:45, Evan Weaver wrote:> Hello Mongrels, > > Building on the last messages about Fastthread, can we get a detailed > survey of the different ways people are deploying their applications? > It will help with near-future Mongrel development. > > Please include the following things: > > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, > Rack...)Rails mostly, some camping, some ramaze in the works.> * Mongrel versionLatest, after security release.> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)Standard framework handlers, and a couple of nice Racks.> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)Indeed.> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)None to date.> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).Standard development runners (script/server) are used by most of our devs. One server uses mongrel_rails + the Swiftiply patches for evented mongrel.> * Number of mongrels per server per appWindows 2003 Server we setup via Apache on a quad core, with 10 mongrels for the best performance. I had numbers somewhere, but IIRC it reached 4-8k req/s. On FreeBSD and Debian, we''re running nginx (and it''s great), I don''t have performance numbers for these configurations, as we''re more focused on static file handling direct out of nginx there.> * Monitoring system (runit, monit, god...)Windows Services + a custom service wrapper. djbs daemontools. God is no good for us as it''s not cross platform, same goes for monit. daemontools falls in the same category, but it manages far more than just webservers for us, and has been around for quite some time.> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)mod_proxy and nginx for the respective platforms, as noted above.> * HW loadbalancer, if any (Netscaler...)None required to date.> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)Memcached, large disk caches.> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverWe''ve been doing very large numbers of small assets (think tiny images), and nginx performs wonderfully at that.> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)Production: Windows 2003 Server, FreeBSD, Debian, Solaris very briefly (and no more). Development: Debian, OS X, Windows XP SP2.> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)To date, x86 across the board, although many of the machines are x64/ IA64 capable.> * CPU countIn production, we have 7 CPUs out there. Largest is a quad core.> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source)Mostly 1.8.6p110 as far as I know. Windows devs run the OCI.> * Rubygems (yes/no, version)yes, 0.9.4+> Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment.Honestly, Mongrel has been *the* easy bit, and you can quote me on that should you so desire.> > > Evan > > PS. You can get some of the Ruby information via the ''tattle'' gem: > > $ gem install tattle --ignore-dependencies > $ tattle report > > > -- > Evan Weaver > Cloudburst, LLC > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users
Evan Weaver schrieb:> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...)Rails> * Mongrel version1.1.3> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)rails> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)no extra handlers> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)mongrel_cluster> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).On all servers we are using: mongrel_rails cluster::start -C /path/to/config --clean> * Number of mongrels per server per app~8> * Monitoring system (runit, monit, god...)monit> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)mod_proxy_balancer> * HW loadbalancer, if any (Netscaler...)OpenBSD 4.2 PF + CARP boxes> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)most of the time memcached fragments.> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverAlways through Apache> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)FreeBSD 7, OpenBSD 4.2, and Debian> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)i368 and AMD64> * CPU countTypically 2> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source)1.8.6p110> * Rubygems (yes/no, version)1.0.1 Jonathan -- Jonathan Weiss http://blog.innerewut.de
On Jan 3, 2008 12:52 PM, Sean Brown <seanmichaelbrown at gmail.com> wrote:> How would you like us to report this? To the whole mongrel list, or > just to you?I''m not Evan, but would still love to see the responses. -- Alexey Verkhovsky CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com] RubyWorks [http://rubyworks.thoughtworks.com]
Either is fine. If you''re not comfortable sending it to the list, then just send it to me. Just an email reply is enough. Evan On Jan 3, 2008 2:52 PM, Sean Brown <seanmichaelbrown at gmail.com> wrote:> On Jan 3, 2008 12:45 PM, Evan Weaver <evan at cloudbur.st> wrote: > > Hello Mongrels, > > > > Building on the last messages about Fastthread, can we get a detailed > > survey of the different ways people are deploying their applications? > > It will help with near-future Mongrel development. > > > Evan, > > How would you like us to report this? To the whole mongrel list, or > just to you? Any particular format helpful? > > -- > > Sean Brown > seanmichaelbrown at gmail.com > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users >-- Evan Weaver Cloudburst, LLC
On 04/01/2008, at 4:45 AM, Evan Weaver wrote:> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, > Rack...)RoR 2.0.2> * Mongrel version1.0.1> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)Rails> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)I guess that means <= 2> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)mongrel_cluster> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).custom scripts to allow monit to restart failed mongrels with the correct environment> * Number of mongrels per server per app14, split into 3 groups, handling different URL patterns> * Monitoring system (runit, monit, god...)Monit + cacti> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)nginx> * HW loadbalancer, if any (Netscaler...)Dunno, we rent time on our hosting centers LB> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)Memcache for the app, Varnish in front of asset hosts> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverHell no, nginx + varnish> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)OS X Tiger Server, moving to Leopard server ASAP> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)x86_64, but under OS X ruby has 32bit bindings only> * CPU count8 cores in the app server cluster ATM> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source)1.8.6p110+threadhooks from macports> * Rubygems (yes/no, version)Dunno, latest, pretty habitual about gem update --system
(I don''t have Evan''s original message, hopefully this gets threaded into the right spot) * Framework : Rails (2.0) * Mongrel version : 1.1.3 * Handlers : just rails * Plugins : Swiftiply evented Mongrel (not a plugin, per se) * Runners : mongrel_rails cluster::start/stop/restart --clean * Number : 70 mongrels (4 virtual servers, 1 app) * Monitoring : nagios * Proxy : nginx w/ fair module [1] * HW balancer : none * Caching : memcached fragments, memcached objects * Assets/mongrel : no * OS : Gentoo Linux Xen kernel 2.6.20-xen-r2 * arch : x86_64 with 32 bit userland (64 bit kernel only) * CPU count : varies by VM, but ~8 cores total for mongrels * Ruby : ruby 1.8.6 (2007-06-07 patchlevel 36) * Rubygems : 0.9.4 I''m also using mongrel_proctitle, which I had to hack to get it to work with Swiftcore''s evented Mongrel. It''s pretty cool and definitely comes in handy since I am using the fair proxy balancer nginx module. http://purefiction.net/mongrel_proctitle/ [1] http://brainspl.at/articles/2007/11/09/a-fair-proxy-balancer-for-nginx-and-mongrel Casey
On Jan 3, 2008 10:45 AM, Evan Weaver <evan at cloudbur.st> wrote: For what it''s worth, though I am definitely a statistical outlier:> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...)IOWA for production. Dabble with all of them, though, for testing things.> * Mongrel version1.1.3> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)Just whatever is appropriate for the framework. The mongrel support is built into IOWA.> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)Precious few.> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)No> * Mongrel runners used (mongrel_rails, mongrel::cluster,None> * Number of mongrels per server per appWhere I use it, 1.> * Monitoring system (runit, monit, god...)They never crash; never fail. So I don''t bother to monitor them specifically.> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)Swiftiply.> * HW loadbalancer, if any (Netscaler...)None.> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)Static page caching handled by Swiftiply, or no caching.> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverNo.> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)RHEL 4, Ubuntu Server 6.10, CentOS 4> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)Linux server2.enigo.com 2.6.9-55.0.9.ELlargesmp #1 SMP & some Linux 2.4.x kernel boxes.> * CPU count1, 2, and 4 cpu boxes right now.> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source)Primarily 1.8.5 in production, though I have the most recent 1.8.6 patch level, 1.9.0 and jruby around for testing.> * Rubygems (yes/no, version)Yes. I have not upgraded to the newest release yet. Still on 0.9.4. As for weird stuff....honestly, I don''t really run all of Mongrel in production except on one or two older sites. Most of my production apps only use the Mongrel HTTP parser. So most of my mongrel usage these days involves testing it on various versions of Ruby and in various deployments and contortions. Kirk Haines
On Jan 3, 2008, at 9:45 AM, Evan Weaver wrote:> > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, > Rack...)merb, rails, camping, nitro, rack> > * Mongrel version1.0.1 thru 1.1.3> > * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)rails, dirhandler,upload_progress_handler,secure_download, many more custoemr handlers> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)up to 15 max. usually 2-4> > * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)mongrel_upload_progress, mongrel_gzip> > * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).mongrel_cluster but only for the --clean option. woudl love to see -- clean in mongrel itself so i no longer need mongrel cluster.> > * Number of mongrels per server per app3-25 per server, usually closer to 3-5 per cpu core> * Monitoring system (runit, monit, god...)monit, god , nagios> > * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)Nginx, swiftiply, apache, haproxy> * HW loadbalancer, if any (Netscaler...)coyote point equalizers, Linux LVS load balancers.> > * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)page caching, fragment caching on GFS filesystem . memcached fragments and sessions and caches.> > * Whether you serve media assets via mongrel itself, as opposed to > through a webservervia nginx> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)custom variant of Gentoo linux> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)Linux ey00-s00141 2.6.18-xenU #1 SMP Fri Jun 15 17:50:34 PDT 2007 x86_64 Dual Core AMD Opteron(tm) Processor 265 AuthenticAMD GNU/Linux and Linux ey01-s00141 2.6.18-xenU #1 SMP Fri Jun 15 17:50:34 PDT 2007 x86_64 Intel(R) Xeon(R) CPU E5345 @ 2.33GHz GenuineIntel GNU/Linux> * CPU countHmm... lets see here. somewhere around 400 ?> > * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source) > * Rubygems (yes/no, version)1.8.5 from gentoo''s portage 1.8.6p111 from portage> Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment.Please let''s add --clean to mongrel itself. Other then that the only thing might be to add some additional logic to the gracefull shutdown of a mongrel server. Say if it tries to reap old threads for more then 30 seconds, just have it terminate violently.> Cheers-- Ezra Zygmuntowicz -- Founder & Software Architect -- ezra at engineyard.com -- EngineYard.com
On Jan 3, 2008 3:45 PM, Evan Weaver <evan at cloudbur.st> wrote:> Hello Mongrels, > > Building on the last messages about Fastthread, can we get a detailed > survey of the different ways people are deploying their applications? > It will help with near-future Mongrel development. > > Please include the following things: > > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...)Rails, Merb, Small little MVC proof of concept :-)> * Mongrel version1.0.2 mostly.> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)Rails, DirHandler and custom made.> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)<= 2> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)none> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).mongrel_rails (development) mongrel_service (deployment)> * Number of mongrels per server per app3> * Monitoring system (runit, monit, god...)Custom made> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)Custom made TCP balancer, no proxy.> * HW loadbalancer, if any (Netscaler...)None> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)No caching> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverVia Mongrel> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)Windows XP SP2 Professional Windows 2003 Server Windows XP SP2 Professional x64 Edition> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)x86 and x86_64> * CPU count1, 2 and 4 cores, single CPU 2 cores in dual-cpu installations> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source) > * Rubygems (yes/no, version) >1.8.5-p114, i386-mswin32 build (VC6) 1.8.6-p111, i386-mingw32 build (GCC) Both version build from scratch.> Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment.Well, it''s Windows, what more weird than that could be added? ;-) But seriously, no IIS on these installations. All the deployment process is being distributed by Windows Installer packages and rubygems. The distribution or deployment of updates for the application is done through rubygems. -- Luis Lavena Multimedia systems - A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools. Douglas Adams
> Please let''s add --clean to mongrel itself. Other then that the only > thing might be to add some additional logic to the gracefull shutdown > of a mongrel server. Say if it tries to reap old threads for more then > 30 seconds, just have it terminate violently.Those are some of our goals for an eventual new runner. Evan On Jan 3, 2008 6:48 PM, Ezra Zygmuntowicz <ezmobius at gmail.com> wrote:> > On Jan 3, 2008, at 9:45 AM, Evan Weaver wrote: > > > > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, > > Rack...) > > merb, rails, camping, nitro, rack > > > > * Mongrel version > > 1.0.1 thru 1.1.3 > > > > > * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...) > > rails, dirhandler,upload_progress_handler,secure_download, many more > custoemr handlers > > > > * How many mongrel routes and handlers per route registered (if you > > don''t know, it''s probably <= 2) > > up to 15 max. usually 2-4 > > > > > > * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > > mongrel_cow_cluster, mongrel_experimental...) > > mongrel_upload_progress, mongrel_gzip > > > > * Mongrel runners used (mongrel_rails, mongrel::cluster, > > mongrel_service, RV, others... please be *very specific* about which > > options of the runner you use. For example, some people use > > mongrel::cluster but only for the --clean functionality, not for the > > clustering). > > mongrel_cluster but only for the --clean option. woudl love to see -- > clean in mongrel itself so i no longer need mongrel cluster. > > > > > * Number of mongrels per server per app > > 3-25 per server, usually closer to 3-5 per cpu core > > > * Monitoring system (runit, monit, god...) > > monit, god , nagios > > > > > * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > > nginx, pen...) > > Nginx, swiftiply, apache, haproxy > > > > * HW loadbalancer, if any (Netscaler...) > > coyote point equalizers, Linux LVS load balancers. > > > > > * Caching strategy (memcached fragments, memcached object, squid, > > rails page cache, rails page fragments, ESI) > > page caching, fragment caching on GFS filesystem . memcached fragments > and sessions and caches. > > > > > * Whether you serve media assets via mongrel itself, as opposed to > > through a webserver > > via nginx > > > > * Operating system including distribution or version (OS X 10.4.10, > > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...) > > custom variant of Gentoo linux > > > * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > > Arm (ha), JRuby) > > Linux ey00-s00141 2.6.18-xenU #1 SMP Fri Jun 15 17:50:34 PDT 2007 > x86_64 Dual Core AMD Opteron(tm) Processor 265 AuthenticAMD GNU/Linux > > and > > Linux ey01-s00141 2.6.18-xenU #1 SMP Fri Jun 15 17:50:34 PDT 2007 > x86_64 Intel(R) Xeon(R) CPU E5345 @ 2.33GHz GenuineIntel GNU/Linux > > > * CPU count > > Hmm... lets see here. somewhere around 400 ? > > > > > > * Ruby version including custom distribution patches, > > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > > note where you got it, in case it isn''t clear, for example, OS X 10.5 > > built-in, Ubuntu apt, Instant Rails, direct compile from source) > > * Rubygems (yes/no, version) > > 1.8.5 from gentoo''s portage > 1.8.6p111 from portage > > > Please mention anything else about your system that''s kind of weird, > > and anything that''s been particularly troublesome regarding mongrel > > deployment. > > Please let''s add --clean to mongrel itself. Other then that the only > thing might be to add some additional logic to the gracefull shutdown > of a mongrel server. Say if it tries to reap old threads for more then > 30 seconds, just have it terminate violently. > > > > Cheers- > > - Ezra Zygmuntowicz > -- Founder & Software Architect > -- ezra at engineyard.com > -- EngineYard.com > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users >-- Evan Weaver Cloudburst, LLC
> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...) >rack> * Mongrel version >1.0.4> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...) >rack> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2) ><=2> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...) >none> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering). >? none I think.> * Number of mongrels per server per app >depends on the application 1-100> * Monitoring system (runit, monit, god...) >simple self-written scripts> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...) >nginx> * HW loadbalancer, if any (Netscaler...) >none> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI) >memcached & self-grown hacks.> * Whether you serve media assets via mongrel itself, as opposed to > through a webserver >no> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...) >gentoo linux> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby) >Linux prod8 2.6.22-gentoo-r8-a #1 SMP Wed Oct 3 06:41:23 CDT 2007 x86_64 Dual-Core AMD Opteron(tm) Processor 8212 AuthenticAMD GNU/Linux> * CPU count >4 dual core> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source) >ruby 1.8.6 (2007-09-24 patchlevel 111) [x86_64-linux] (direct from emerge ruby)> * Rubygems (yes/no, version) >y, 0.9.4> Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment. > >We had some weird issues with mongrel >=1.1, which we never understood, but after downgrading to 1.0.4 things are going well again. Kirk Haines looked into it, but I have to admit I never understood what the reason of the problem with newer mongrel is. Thanks to all mongrel hackers for the amazing work! Ciao, -Armin
Hello, On 3 Jan 2008, at 17:45, Evan Weaver wrote:> Building on the last messages about Fastthread, can we get a detailed > survey of the different ways people are deploying their applications? > It will help with near-future Mongrel development.We have a few machines with different setups depending on when they were deployed - some stuff from 2005 is still on Apache2/FastCGI, which is slightly upsetting, but the most recent apps are as follows, and new ones will be similar, though perhaps with the addition of swiftiply.> Please include the following things: > > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, > Rack...)Rails, currently 1.2.3. Looking at Merb right now.> * Mongrel version1.1.3> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)rails> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)So probably <= 2 ;-)> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)None> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).mongrel::cluster for managing all mongrels.> * Number of mongrels per server per appThis is still moot for us really; we''re trying to work out the best profile per app, as we do a lot of short-lived campaign-based sites. We had an app get whacked a few weeks ago with 16 mongrels running behind nginx, and the process load was getting really high. Initial thought was to up the number of mongrels so they could cut through the queue quicker, but of course all this did was increase memory usage significantly, meaning with 32 mongrels starting to eat up to 230MB of RAM each, the system started thrashing pretty quickly. So we killed them and cut it down to 8 and things actually seemed a lot smoother, but by that time the load had dropped significantly, so it''s hard to tell. In summary, we''ll most likely start out with 8 and see how it goes.> * Monitoring system (runit, monit, god...)Ahem ... just getting going with monit> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)latest nginx, 0.5.xx branch> * HW loadbalancer, if any (Netscaler...)n/a> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)memcached objects, rails page cache as appropriate.> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverAny flat files go out direct through nginx, doesn''t seem any point in loading mongrel with this when nginx is sooo fast.> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)CentOS 5> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)Linux xxx.xxx.xxx 2.6.9-42.ELsmp #1 SMP Sat Aug 12 09:39:11 CDT 2006 i686 i686 i386 GNU/Linux> * CPU countdual-core xeon 3.0ghz Database is on an identical separate machine in the instance I''m getting stats from, might be on the same host for other apps.> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source)ruby 1.8.6 (2007-03-13 patchlevel 0) [i686-linux] - compiled from source. After reading the recent threads this is going to move up to a later patchlevel!> * Rubygems (yes/no, version)yes, recently upgraded from 0.94 to 1.0.1> Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment.To be honest since mongrel_cluster came out it''s been relatively trouble-free. Well, compared to Apache ;-) Starting and stopping can be a bit temperamental when instances have died or been killed outside mongrel_cluster, but I guess that''s to be expected, and as I understand it that''s a cluster issue rather than a mongrel issue per se. The only real issue is memory usage. When we see 230MB mongrels as above when most stuff is being served out of memcached, leaks spring to mind, but we''ve so far been unsucessful in establishing whether it''s in our code, a plug-in, the framework, whether it''s related to the unpatched ruby, etc ...> PS. You can get some of the Ruby information via the ''tattle'' gem: > > $ gem install tattle --ignore-dependencies > $ tattle reportuser_key, prefix, /poke/software/server/install/ruby-1.8.6 ruby_version, 1.8.6 host_vendor, pc ruby_install_name, ruby build, i686-pc-linux-gnu target_cpu, i686 arch, i686-linux rubygems_version, 1.0.1 SHELL, /bin/sh host_os, linux-gnu report_time, Fri Jan 04 09:48:29 +0000 2008 host_cpu, i686 LIBRUBY, libruby-static.a LIBRUBY_SO, libruby.so.1.8.6 target, i686-pc-linux-gnu Incidentally the site that got hammered is http://www.goodthingsshouldneverend.co.uk/ It''s supposed to be a "never-ending web page" - imagine my delight when I heard that brief for the first time! Cheers guys, keep up the great work. Igor -- Igor Clark // POKE // 10 Redchurch Street // E2 7DD // +44 (0)20 7749 5355 // www.pokelondon.com
On Jan 3, 2008 6:45 PM, Evan Weaver <evan at cloudbur.st> wrote:> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...)Rails, Rack apps, Merb playing around with random ones too from time to time> * Mongrel version1.0.1, 1.1.3> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)rails, some custom ones (mostly for dev/play)> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)< 2> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)mongrel_rails> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).mongrel_cluster, mongrel_rails, inhouse thing at $DAYJOB> * Number of mongrels per server per appgenerally 1 to ~15 depending on app and framework> * Monitoring system (runit, monit, god...)monit, god> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)nginx> * HW loadbalancer, if any (Netscaler...)not currently> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)memcached (fragments, + objects + other that fits), memory, disk (such as rails'' page caching), looking at varnish (with ESI)> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverwebserver, mongrel for processed/generated images (which are then cached)> > * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)Debian/Ubuntu (6&7). OSX for dev> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)x86_64, i386 Did actually try and make mongrel run on (nokias) ARM one evening for fun, but their crosscompiling env was a PITA.> * CPU counttypically 2-4 * Ruby version including custom distribution patches,> (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source)OSX 10.5 supplied ruby (ruby 1.8.6 (2007-09-24 patchlevel 111) [ universal-darwin9.0]) ruby 1.8.6 (2007-03-13 patchlevel 0) [x86_64-linux] ruby 1.8.6 (2007-06-07 patchlevel 36) [x86_64-linux] ruby 1.8.6 (2007-09-24 patchlevel 111) [x86_64-linux]> > * Rubygems (yes/no, version)yes, 1.0.1 and 0.9.x> Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment.Different mongrel-groups balanced by url on some boxes running the nginx "fair" balancer patch on some boxes (though not really mongrel related) JS -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20080104/aa8b781a/attachment.html
> We had some weird issues with mongrel >=1.1, which we never understood, but after downgrading > to 1.0.4 things are going well again. Kirk Haines looked into it, but I have to admit > I never understood what the reason of the problem with newer mongrel is.He mentioned someone was having lockups. If you could gdb the process that locked and generate a backtrace that would be a big help. Evan On Jan 4, 2008 2:54 AM, Armin Roehrl <armin at personifi.com> wrote:> > > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...) > > > rack > > * Mongrel version > > > 1.0.4 > > * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...) > > > rack > > * How many mongrel routes and handlers per route registered (if you > > don''t know, it''s probably <= 2) > > > <=2 > > * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > > mongrel_cow_cluster, mongrel_experimental...) > > > none > > * Mongrel runners used (mongrel_rails, mongrel::cluster, > > mongrel_service, RV, others... please be *very specific* about which > > options of the runner you use. For example, some people use > > mongrel::cluster but only for the --clean functionality, not for the > > clustering). > > > ? none I think. > > * Number of mongrels per server per app > > > depends on the application 1-100 > > * Monitoring system (runit, monit, god...) > > > simple self-written scripts > > * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > > nginx, pen...) > > > nginx > > * HW loadbalancer, if any (Netscaler...) > > > none > > * Caching strategy (memcached fragments, memcached object, squid, > > rails page cache, rails page fragments, ESI) > > > memcached & self-grown hacks. > > * Whether you serve media assets via mongrel itself, as opposed to > > through a webserver > > > no > > * Operating system including distribution or version (OS X 10.4.10, > > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...) > > > gentoo linux > > * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > > Arm (ha), JRuby) > > > Linux prod8 2.6.22-gentoo-r8-a #1 SMP Wed Oct 3 06:41:23 CDT 2007 x86_64 > Dual-Core AMD Opteron(tm) Processor 8212 AuthenticAMD GNU/Linux > > > * CPU count > > > 4 dual core > > * Ruby version including custom distribution patches, > > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > > note where you got it, in case it isn''t clear, for example, OS X 10.5 > > built-in, Ubuntu apt, Instant Rails, direct compile from source) > > > ruby 1.8.6 (2007-09-24 patchlevel 111) [x86_64-linux] (direct from > emerge ruby) > > > * Rubygems (yes/no, version) > > > y, 0.9.4 > > Please mention anything else about your system that''s kind of weird, > > and anything that''s been particularly troublesome regarding mongrel > > deployment. > > > > > We had some weird issues with mongrel >=1.1, which we never understood, > but after downgrading > to 1.0.4 things are going well again. Kirk Haines looked into it, but I > have to admit > I never understood what the reason of the problem with newer mongrel is. > > Thanks to all mongrel hackers for the amazing work! > > Ciao, > -Armin > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users >-- Evan Weaver Cloudburst, LLC
Might as well include myself in the survey: * Framework: Camping, Rails * Mongrel version: 0.3.13.4, 1.0.5, 1.1.3 * Mongrel handlers used: rails, dirhandler, camping, homebrew * How many mongrel routes and handlers per route registered <= 2 * Any Mongrel plugins used none * Mongrel runners used mongrel::cluster with --clean RV * Number of mongrels per server per app 1 to 8 * Monitoring system nothing (camping), monit (rails) * Proxy or software loadbalance apache 2.2 mod_proxy_balancer apache 2.0 mod_proxy -> pen * HW loadbalancer Netscaler * Caching strategy memcached fragments camping FS page cache * Whether you serve media assets via mongrel itself no * Operating system including distribution or version ubuntu 6.0.6 RHEL 5 * Architecture Linux 2.6.9-22.0.2.ELsmp #1 SMP Thu Jan 5 17:11:56 EST 2006 x86_64 x86_64 x86_64 GNU/Linux Linux 2.6.16.29-xen #1 SMP Sun Sep 30 04:00:13 UTC 2007 x86_64 GNU/Linux * CPU count 2 cores per server I think... not a lot * Ruby version including custom distribution patches, ruby 1.8.4 (2005-12-24) [x86_64-linux] (from Ubuntu) ruby 1.8.6 (2007-03-13 patchlevel 0) [x86_64-linux] (from source with Bleakhouse patches) * Rubygems (yes/no, version) 0.9.4, 0.9.2 -- Evan Weaver Cloudburst, LLC
On 1/3/08, Evan Weaver <evan at cloudbur.st> wrote:> > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...)Rails, just begun to look at Merb> * Mongrel version1.0.1, 1.1.3> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)Rails> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)n/a> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)none> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).mongrel_rails, mongrel::cluster (for clustering)> * Number of mongrels per server per appTypically three to five per app> * Monitoring system (runit, monit, god...)monit> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)apache mod_proxy_balancer> * HW loadbalancer, if any (Netscaler...)none> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)rails page and action/fragment caching> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverMedia/static assets served by apache> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)Red Hat Enterprise Linux ES release 4 (Nahant Update 6)> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)Linux 118790-www 2.6.9-42.0.10.ELsmp #1 SMP Fri Feb 16 17:17:21 EST 2007 i686 athlon i386 GNU/Linux> * CPU count2> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source) > * Rubygems (yes/no, version)ruby 1.8.6 (2007-03-13 patchlevel 0) [i686-linux] (compiled from source) Rubygems - yes, 0.9.2 and 1.0.1> > Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment.No trouble at all.> > $ gem install tattle --ignore-dependencies > $ tattle reportuser_key, prefix, /usr/local ruby_version, 1.8.6 host_vendor, pc ruby_install_name, ruby build, i686-pc-linux-gnu target_cpu, i686 arch, i686-linux rubygems_version, 1.0.1 SHELL, /bin/sh host_os, linux-gnu report_time, Fri Jan 04 11:17:52 -0600 2008 host_cpu, i686 LIBRUBY, libruby-static.a LIBRUBY_SO, libruby.so.1.8.6 target, i686-pc-linux-gnu and user_key, prefix, /usr/local ruby_version, 1.8.6 host_vendor, pc ruby_install_name, ruby build, i686-pc-linux-gnu target_cpu, i686 arch, i686-linux rubygems_version, 0.9.2 SHELL, /bin/sh host_os, linux-gnu report_time, Fri Jan 04 11:19:52 -0600 2008 host_cpu, i686 LIBRUBY, libruby-static.a LIBRUBY_SO, libruby.so.1.8.6 target, i686-pc-linux-gnu -- Sean Brown seanmichaelbrown at gmail.com
Hello ! On Jan 3, 2008 6:45 PM, Evan Weaver <evan at cloudbur.st> wrote:> Hello Mongrels, > > Building on the last messages about Fastthread, can we get a detailed > survey of the different ways people are deploying their applications? > It will help with near-future Mongrel development. > > Please include the following things: > > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...)Rails, Camping> * Mongrel version1.1.3> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)Rails, Camping> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)don''t know:)> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)mongrel_upload_progress> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).mongrel::cluster> * Number of mongrels per server per app1 to 50> * Monitoring system (runit, monit, god...)God or Monit> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)Lighttpd> * HW loadbalancer, if any (Netscaler...)none> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)rails page cache & ESI> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverNo, I serve the static files/assets via lighttpd> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)OS X for dev, FreeBSD for prod> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)x86> * CPU countcore2duo, 2.66Ghz> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source)ruby 1.8.6; patchlevel 0, built from freebsd with oniguruma> * Rubygems (yes/no, version)yes, 1.0.1> > Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment. > > Evan > > PS. You can get some of the Ruby information via the ''tattle'' gem: > > $ gem install tattle --ignore-dependencies > $ tattle report >user_key, prefix, /usr/local ruby_version, 1.8.6 host_vendor, portbld ruby_install_name, ruby18 build, i386-portbld-freebsd6 target_cpu, i386 arch, i386-freebsd6 rubygems_version, 1.0.1 SHELL, /bin/sh host_os, freebsd6 report_time, Fri Jan 04 18:39:15 +0100 2008 host_cpu, i386 LIBRUBY, libruby18.so.18 LIBRUBY_SO, libruby18.so.18 target, i386-portbld-freebsd6> > -- >
* Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...) Rails 1.2.6/2.0.2 * Mongrel version 1.1.2 * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...) rails * How many mongrel routes and handlers per route registered (if you don''t know, it''s probably <= 2) <=2 * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, mongrel_cow_cluster, mongrel_experimental...) mongrel_cluster * Mongrel runners used (mongrel_rails, mongrel::cluster, mongrel_service, RV, others... please be *very specific* about which options of the runner you use. For example, some people use mongrel::cluster but only for the --clean functionality, not for the clustering). Using Capistrano spin script that uses process spawner: script/process/spawner -p 8000 -a 127.0.0.1 -i 4 * Number of mongrels per server per app 4 * Monitoring system (runit, monit, god...) none at the moment, most likely will implement monit soon * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, nginx, pen...) apache mod_proxy_balancer * HW loadbalancer, if any (Netscaler...) None * Caching strategy (memcached fragments, memcached object, squid, rails page cache, rails page fragments, ESI) None * Whether you serve media assets via mongrel itself, as opposed to through a webserver Webserver Apache * Operating system including distribution or version (OS X 10.4.10, Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...) Ubuntu/Linux 7.10 Server * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, Arm (ha), JRuby) Linux 2.6.22-14-server #1 SMP Sun Oct 14 23:34:23 GMT 2007 i686 GNU/Linux * CPU count 1 * Ruby version including custom distribution patches, (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also note where you got it, in case it isn''t clear, for example, OS X 10.5 built-in, Ubuntu apt, Instant Rails, direct compile from source) ruby 1.8.6 (2007-06-07 patchlevel 36) [i486-linux] * Rubygems (yes/no, version) 0.9.4 On Jan 3, 2008 9:45 AM, Evan Weaver <evan at cloudbur.st> wrote:> Hello Mongrels, > > Building on the last messages about Fastthread, can we get a detailed > survey of the different ways people are deploying their applications? > It will help with near-future Mongrel development. > > Please include the following things: > > * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...) > * Mongrel version > * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...) > * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2) > * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...) > * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering). > * Number of mongrels per server per app > * Monitoring system (runit, monit, god...) > * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...) > * HW loadbalancer, if any (Netscaler...) > * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI) > * Whether you serve media assets via mongrel itself, as opposed to > through a webserver > * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...) > * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby) > * CPU count > * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source) > * Rubygems (yes/no, version) > > Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment. > > Evan > > PS. You can get some of the Ruby information via the ''tattle'' gem: > > $ gem install tattle --ignore-dependencies > $ tattle report > > > -- > Evan Weaver > Cloudburst, LLC > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users >-------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20080104/75cb1524/attachment.html
> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, Rack...)Merb,Rails> * Mongrel version1.1.3> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)rails> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)don''t know> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)1 plugin I made myself, a secure download handler> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).mongrel_rails from Swiftiply with EVENT=1> * Number of mongrels per server per app1 (very low load)> * Monitoring system (runit, monit, god...)monit> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)used to use nginx but didn''t need it for only 1 mongrel process> * HW loadbalancer, if any (Netscaler...)none> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)memcached fragments + memcached object> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverfront-end webserver handles static files> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)Fedora 8 on server, OS X 10.5.1 in dev> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)x86_64> * CPU count2> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source)server - 1.8.6p111, dev - 1.8.6 OS X 10.5 version> * Rubygems (yes/no, version)yes, 1.0.1> > Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment.I had a hard time getting monit to set EVENT=1, eventually using a wrapper shell script.> > Evan > > PS. You can get some of the Ruby information via the ''tattle'' gem: > > $ gem install tattle --ignore-dependencies > $ tattle report > > > -- > Evan Weaver > Cloudburst, LLC > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users >
> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, > IOWA, Rack...)Rails-1.2.x> * Mongrel versionMongrel-1.1> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)rails> * How many mongrel routes and handlers per route registered > (if you don''t know, it''s probably <= 2)Uh...> * Any Mongrel plugins used (mongrel_upload_progress, > mongrel_gzip, mongrel_cow_cluster, mongrel_experimental...)Nope> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* > about which options of the runner you use. For example, some > people use mongrel::cluster but only for the --clean > functionality, not for the clustering).mongrel_service-0.3.1> * Number of mongrels per server per app3> * Monitoring system (runit, monit, god...)Uh...> * Proxy or software loadbalancer, if any (apache > mod_proxy_balancer, nginx, pen...)pen+cygwin for load balancing, isapi_rewrite for reverse proxying behind IIS> * HW loadbalancer, if any (Netscaler...)Nope> * Caching strategy (memcached fragments, memcached object, > squid, rails page cache, rails page fragments, ESI)rails page cache> * Whether you serve media assets via mongrel itself, as > opposed to through a webserverSome both ways. Static images and stylesheets via the web server, but my model objects can have attached images which are scaled and served from the rails page cache by mongrel> * Operating system including distribution or version (OS X > 10.4.10, Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)WinXP SP2 and Win2k3 Server> * Architecture, via ''uname -a'' preferably (x86, x86_64, > Sparc, PPC, Arm (ha), JRuby)x86> * CPU count2> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk...1.8.6> also note where you got it, in case it isn''t clear, for > example, OS X 10.5 built-in, Ubuntu apt, Instant Rails, > direct compile from source)OneClick installer> * Rubygems (yes/no, version)yes, 0.9.2> Please mention anything else about your system that''s kind of > weird, and anything that''s been particularly troublesome > regarding mongrel deployment.Having to install pen on win32 to get load balancing is a PITA. It would be super swell if mongrel_service or mongrel_cluster could offer that capability, even if it''s not the fastest option available. I should, of course, be using apache on win32, but my hands are tied in that regard, and I know I''m not the only one. - donald
It''s great to get a sense for what everybody''s using. Here''s my setup:> * Framework, if any (Camping, Merb, Rails, Nitro, Ramaze, IOWA, > Rack...)Rails. Not using anything but ActiveRecord and very basic controllers, so planning to switch to Merb soon for improved speed + less memory overhead.> * Mongrel version1.0.1> * Mongrel handlers used (rails, dirhandler, camping, cgiwrapper...)Rails> * How many mongrel routes and handlers per route registered (if you > don''t know, it''s probably <= 2)n/a> * Any Mongrel plugins used (mongrel_upload_progress, mongrel_gzip, > mongrel_cow_cluster, mongrel_experimental...)none> * Mongrel runners used (mongrel_rails, mongrel::cluster, > mongrel_service, RV, others... please be *very specific* about which > options of the runner you use. For example, some people use > mongrel::cluster but only for the --clean functionality, not for the > clustering).mongrel_rails, mongrel::cluster (for clustering)> * Number of mongrels per server per app12-16 per server> * Monitoring system (runit, monit, god...)monit> * Proxy or software loadbalancer, if any (apache mod_proxy_balancer, > nginx, pen...)nginx 0.5.34 (recently switched from lighttpd, and very happy with nginx)> * HW loadbalancer, if any (Netscaler...)a separate linux box running pound> * Caching strategy (memcached fragments, memcached object, squid, > rails page cache, rails page fragments, ESI)custom caching in central ruby process (mongrels talk to it via DRB)> * Whether you serve media assets via mongrel itself, as opposed to > through a webserverMedia/static assets served by nginx using X-Accel-Redirect> * Operating system including distribution or version (OS X 10.4.10, > Ubuntu/Linux 7.10, WinXP SP2, OpenBSD 4.1...)Ubuntu Feisty Fawn 7.04> * Architecture, via ''uname -a'' preferably (x86, x86_64, Sparc, PPC, > Arm (ha), JRuby)Linux server4 2.6.20-15-generic #2 SMP Sun Apr 15 06:17:24 UTC 2007 x86_64 GNU/Linux> * CPU count2 servers, each running 2 dual core Xeon''s> * Ruby version including custom distribution patches, > (1.8.6p110+threadhooks, 1.8.5, JRuby 1.1b1, Rubinius trunk... also > note where you got it, in case it isn''t clear, for example, OS X 10.5 > built-in, Ubuntu apt, Instant Rails, direct compile from source) > * Rubygems (yes/no, version)ruby 1.8.5 (2006-08-25) [x86_64-linux]> * Rubygems (yes/no, version)yes, 0.9.0> Please mention anything else about your system that''s kind of weird, > and anything that''s been particularly troublesome regarding mongrel > deployment.Could never build mysql_gem successfully on these machines (received errors about 64-bits). Other than that, everything has been running great. -Pete
Possibly Parallel Threads
- About Unicorn Rack handler
- Edge Rails 3: Mongrel stuck in infinite loop, Unicorn missing uninitialized constant Rack::Runtime
- Webgeb 0.5.x possible in Windows XP?
- FreeBSD 8.2 XENHVM Kernel on Xencloud
- Howto write a mongrel handler for a CGI app using CGIWrapper