Hello Folks, This is the long awaited (like 2 weeks) 0.3.12 release of Mongrel. This release has received heavier testing than previous releases and supports a whole raft of improvements to existing functionality plus some new stuff. For those not clued in, Mongrel is a web server written in (mostly) Ruby. Check the funny dogs and read the docs about it at http://mongrel.rubyforge.org/. The goal is to create a Ruby HTTP server to compete with Apache Tomcat or other Java application servers. The other goal is to have the speed of FastCGI with the ease of WEBrick. WHAT''S NEW The big points of this release are: * The Mongrel::Configurator and Mongrel::Rails::Configurator for simple configuration (mostly for framework implementers to use). * Dynamically loadable handlers from the GemPlugins system. Next release will let you write and add your own handlers. * Chained handlers. That''s right, you can stack a series of handlers on any URIs and they''ll be processed in order. This gives you an advanced and fast pipe-lined processing system and is already used to implement the extensive debugging support Mongrel has. * Debugging, Debugging, Debugging. Try the -B option and then look in the log/mongrel_debug logs. I''ll be beefing this up to insane usefulness for the 0.3.13 release. * Support for sendfile on FreeBSD, Linux, and Solaris if you install the ruby-sendfile (http://rubyforge.org/projects/ruby-sendfile) gem. This is experimental but already gives a 20% boost on static files. * Additional proper headers for static files from the DirHandler in order to allow browsers to cache the content. People using Mongrel for development or small sites will love this combined with the sendfile support. * Lots and lots of little tweaks to improve speed and stability. Mongrel is starting to hit a wall again with performance so I''ll be looking for new hot-spots to move to C in the near future. * Initial support for Rails 1.1. Remember *if you use Typo it is broken not Mongrel*. Typo is being frantically fixed so be patient. * Fix for a bad typo on Win32 that prevented people from using additional mime types files (stupid Emacs and it''s damn capitalize command being exactly the same as Copy in every other editor). * Ability to specify a timeout throttling setting and a max number of concurrent connections with additional attempts at cleaning dead threads out. Future debugging will help people spot these. * Lots of new Camping support and integration (thanks to Trotter Cashion for using Mongrel with Camping like crazy). * A handy -C option for the mongrel_rails script that lets you specify the options you''d normally do on the command line as a YAML hash. More on this later. INSTALL Everyone can go download 0.3.12 from http://rubyforge.org/frs/?group_id=1306 like normal or do the usual "gem install mongrel" or "gem update" to get the latest and greatest. -- If you followed pre-release please uninstall first. NEXT STOP... The next steps with Mongrel will be to add the capability for users of Mongrel to write their own Configurator scripts and to test the living daylights out of it. If you missed my last announcement, Mongrel is getting *commercial sponsorship* from EastMedia (http://www.eastmedia.com/) in partnership with VeriSign (http://www.verisign.com/) for use in a potentially large scale project. My role in this is to make sure Mongrel can handle the required role and will not ever crash. I''ll be spending the next few weeks putting out less features and doing more stability and speed tweaks. Stay tuned. Should be fun. Enjoy and report those bugs! Zed A. Shaw http://mongrel.rubyforge.org/
On Mar 30, 2006, at 2:37 AM, Zed Shaw wrote:> This is the long awaited (like 2 weeks) 0.3.12 release of Mongrel. > This > release has received heavier testing than previous releases and > supports a > whole raft of improvements to existing functionality plus some new > stuff.Minor, minor point: Installing RDoc documentation for mongrel-0.3.12... lib/mongrel/rails.rb:135:49: Skipping require of dynamic string: "# {ops[:cwd]}/config/environment" Macintosh OS X 10.4.5 (PPC) with Ruby 1.8.4 -- -- Tom Mornini
Hi Zed, I read the website, but I must admit I still don''t see what benefits Mongrel will bring me. What can it do that fcgi cannot? Is it just an easier (and maybe faster) way to run rails apps or does it add functionality that is currently not available? Jeroen Zed Shaw wrote:> Hello Folks, > > This is the long awaited (like 2 weeks) 0.3.12 release of Mongrel. This > release has received heavier testing than previous releases and supports a > whole raft of improvements to existing functionality plus some new stuff. > > For those not clued in, Mongrel is a web server written in (mostly) Ruby. > Check the funny dogs and read the docs about it at > http://mongrel.rubyforge.org/. The goal is to create a Ruby HTTP server to > compete with Apache Tomcat or other Java application servers. The other > goal is to have the speed of FastCGI with the ease of WEBrick. > > > WHAT''S NEW > > The big points of this release are: > > * The Mongrel::Configurator and Mongrel::Rails::Configurator for simple > configuration (mostly for framework implementers to use). > * Dynamically loadable handlers from the GemPlugins system. Next release > will let you write and add your own handlers. > * Chained handlers. That''s right, you can stack a series of handlers on any > URIs and they''ll be processed in order. This gives you an advanced and fast > pipe-lined processing system and is already used to implement the extensive > debugging support Mongrel has. > * Debugging, Debugging, Debugging. Try the -B option and then look in the > log/mongrel_debug logs. I''ll be beefing this up to insane usefulness for > the 0.3.13 release. > * Support for sendfile on FreeBSD, Linux, and Solaris if you install the > ruby-sendfile (http://rubyforge.org/projects/ruby-sendfile) gem. This is > experimental but already gives a 20% boost on static files. > * Additional proper headers for static files from the DirHandler in order to > allow browsers to cache the content. People using Mongrel for development > or small sites will love this combined with the sendfile support. > * Lots and lots of little tweaks to improve speed and stability. Mongrel is > starting to hit a wall again with performance so I''ll be looking for new > hot-spots to move to C in the near future. > * Initial support for Rails 1.1. Remember *if you use Typo it is broken not > Mongrel*. Typo is being frantically fixed so be patient. > * Fix for a bad typo on Win32 that prevented people from using additional > mime types files (stupid Emacs and it''s damn capitalize command being > exactly the same as Copy in every other editor). > * Ability to specify a timeout throttling setting and a max number of > concurrent connections with additional attempts at cleaning dead threads > out. Future debugging will help people spot these. > * Lots of new Camping support and integration (thanks to Trotter Cashion for > using Mongrel with Camping like crazy). > * A handy -C option for the mongrel_rails script that lets you specify the > options you''d normally do on the command line as a YAML hash. More on this > later. > > INSTALL > > Everyone can go download 0.3.12 from http://rubyforge.org/frs/?group_id=1306 > like normal or do the usual "gem install mongrel" or "gem update" to get the > latest and greatest. > > -- If you followed pre-release please uninstall first. > > > NEXT STOP... > > The next steps with Mongrel will be to add the capability for users of > Mongrel to write their own Configurator scripts and to test the living > daylights out of it. If you missed my last announcement, Mongrel is getting > *commercial sponsorship* from EastMedia (http://www.eastmedia.com/) in > partnership with VeriSign (http://www.verisign.com/) for use in a > potentially large scale project. My role in this is to make sure Mongrel > can handle the required role and will not ever crash. I''ll be spending the > next few weeks putting out less features and doing more stability and speed > tweaks. Stay tuned. Should be fun. > > > Enjoy and report those bugs! > > > Zed A. Shaw > http://mongrel.rubyforge.org/ > > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails
Hi Zed, Thanks for the great new release!> * Fix for a bad typo on Win32 that prevented people from using additional > mime types files (stupid Emacs and it''s damn capitalize command being > exactly the same as Copy in every other editor).This now works with mongrel_rails_service but not with mongrel_rails from the command line (I tested it on Windows2003 and OS X). If I start Mongrel from the command line I get: # mongrel_rails start -m config/mime.yaml ** Starting Mongrel in development mode at 0.0.0.0:3000 ** Loading additional MIME types from config/mime.yaml ** Loading additional MIME types from config/mime.yaml ** Starting Rails in environment development ... ** Rails loaded. ** Loading any Rails specific GemPlugins ** Signals ready. TERM => stop. USR2 => restart. INT => stop (no restart). ** Rails signals registered. HUP => reload (without restart). It might not work well. ** Running 0.0.0.0:3000 listener. ** Mongrel available at 0.0.0.0:3000 Watch the double output for the MIME-stuff. Installing Mongrel with MIME-support as a service on Windows2003 works now. Regards, Jonathan -- Jonathan Weiss http://blog.innerewut.de
Jean-Christophe Michel
2006-Mar-30 16:44 UTC
[Rails] Mongrel Web Server 0.3.12 -- Finally Out
Hi, Zed Shaw wrote:> > Enjoy and report those bugs!Thks for this soft ! Two points, maybe bugs: on debian unstable/powerpc: Building native extensions. This could take a while... http11.c: In function ?header_done?: http11.c:95: warning: unused variable ?port? http11.c:94: warning: unused variable ?host? http11.c: At top level: http11.c:25: warning: ?global_interface_value? defined but not used ext/http11/http11_parser.c: In function ?http_parser_execute?: ext/http11/http11_parser.c:423: warning: comparison is always true due to limited range of data type ext/http11/http11_parser.c:473: warning: comparison is always true due to limited range of data type ext/http11/http11_parser.c:491: warning: comparison is always true due to limited range of data type ext/http11/http11_parser.c:542: warning: comparison is always true due to limited range of data type ext/http11/http11_parser.c:564: warning: comparison is always true due to limited range of data type ruby extconf.rb update mongrel checking for main() in -lc... yes but seems to work well though. on debian sarge/686 it successfully installs too, though the report while compiling show many small errors. But mongrel_rails start fails with /usr/lib/ruby/gems/1.8/gems/mongrel-0.3.12/lib/mongrel/rails.rb:28: uninitialized constant Mongrel::HttpHandler (NameError). I don''t think I miss a library :/ Ideas ? Compilation output, maybe useful for you: Building native extensions. This could take a while... Dans le fichier inclus ? partir de http11.c:1: /usr/lib/ruby/1.8/i486-linux/ruby.h:28:21: stdlib.h : Aucun fichier ou r??pertoire de ce type /usr/lib/ruby/1.8/i486-linux/ruby.h:32:21: string.h : Aucun fichier ou r??pertoire de ce type /usr/lib/ruby/1.8/i486-linux/ruby.h:42:19: stdio.h : Aucun fichier ou r??pertoire de ce type /usr/lib/ruby/1.8/i486-linux/ruby.h:64:20: alloca.h : Aucun fichier ou r??pertoire de ce type Dans le fichier inclus ? partir de /usr/lib/gcc-lib/i486-linux/3.3.5/include/syslimits.h:7, ? partir de /usr/lib/gcc-lib/i486-linux/3.3.5/include/limits.h:11, ? partir de /usr/lib/ruby/1.8/i486-linux/ruby.h:84, ? partir de http11.c:1: /usr/lib/gcc-lib/i486-linux/3.3.5/include/limits.h:122:75: limits.h : Aucun fichier ou r??pertoire de ce type Dans le fichier inclus ? partir de /usr/lib/ruby/1.8/i486-linux/ruby.h:677, ? partir de http11.c:1: /usr/lib/ruby/1.8/i486-linux/missing.h:16:24: sys/time.h : Aucun fichier ou r??pertoire de ce type /usr/lib/ruby/1.8/i486-linux/missing.h:25:25: sys/types.h : Aucun fichier ou r??pertoire de ce type In file included from /usr/lib/ruby/1.8/i486-linux/ruby.h:678, from http11.c:1: /usr/lib/ruby/1.8/i486-linux/intern.h:215: error: erreur de syntaxe before "fd_set" /usr/lib/ruby/1.8/i486-linux/intern.h:216: attention : `struct timeval'' declared inside parameter list /usr/lib/ruby/1.8/i486-linux/intern.h:216: attention : its scope is only this definition or declaration, which is probably not what you want /usr/lib/ruby/1.8/i486-linux/intern.h:216: attention : parameter has incomplete type /usr/lib/ruby/1.8/i486-linux/intern.h:446: attention : noms de param??tres (sans type) dans la d??claration de fonction Dans le fichier inclus ? partir de http11.c:1: /usr/lib/ruby/1.8/i486-linux/ruby.h:687:21: pthread.h : Aucun fichier ou r??pertoire de ce type In file included from http11.c:1: /usr/lib/ruby/1.8/i486-linux/ruby.h:689: error: erreur de syntaxe before "rb_nativethread_t" /usr/lib/ruby/1.8/i486-linux/ruby.h:689: attention : type defaults to `int'' in declaration of `rb_nativethread_t'' /usr/lib/ruby/1.8/i486-linux/ruby.h:689: attention : data definition has no type or storage class http11.c:3:20: assert.h : Aucun fichier ou r??pertoire de ce type http11.c:4:20: string.h : Aucun fichier ou r??pertoire de ce type Dans le fichier inclus ? partir de http11.c:5: http11_parser.h:4:23: sys/types.h : Aucun fichier ou r??pertoire de ce type http11.c:6:19: ctype.h : Aucun fichier ou r??pertoire de ce type http11.c: Dans la fonction ?? http_field ??: http11.c:51: attention : implicit declaration of function `toupper'' http11.c: Dans la fonction ?? header_done ??: http11.c:103: attention : implicit declaration of function `strchr'' http11.c:94: attention : unused variable `host'' http11.c:95: attention : unused variable `port'' http11.c: Dans la fonction ?? HttpParser_free ??: http11.c:124: attention : implicit declaration of function `free'' http11.c: Dans la fonction ?? URIClassifier_alloc ??: http11.c:289: attention : implicit declaration of function `assert'' http11.c: Hors de toute fonction : http11.c:25: attention : `global_interface_value'' defined but not used make: *** [http11.o] Erreur 1 Dans le fichier inclus ? partir de http11.c:1: /usr/lib/ruby/1.8/i486-linux/ruby.h:28:21: stdlib.h : Aucun fichier ou r??pertoire de ce type /usr/lib/ruby/1.8/i486-linux/ruby.h:32:21: string.h : Aucun fichier ou r??pertoire de ce type /usr/lib/ruby/1.8/i486-linux/ruby.h:42:19: stdio.h : Aucun fichier ou r??pertoire de ce type /usr/lib/ruby/1.8/i486-linux/ruby.h:64:20: alloca.h : Aucun fichier ou r??pertoire de ce type Dans le fichier inclus ? partir de /usr/lib/gcc-lib/i486-linux/3.3.5/include/syslimits.h:7, ? partir de /usr/lib/gcc-lib/i486-linux/3.3.5/include/limits.h:11, ? partir de /usr/lib/ruby/1.8/i486-linux/ruby.h:84, ? partir de http11.c:1: /usr/lib/gcc-lib/i486-linux/3.3.5/include/limits.h:122:75: limits.h : Aucun fichier ou r??pertoire de ce type Dans le fichier inclus ? partir de /usr/lib/ruby/1.8/i486-linux/ruby.h:677, ? partir de http11.c:1: /usr/lib/ruby/1.8/i486-linux/missing.h:16:24: sys/time.h : Aucun fichier ou r??pertoire de ce type /usr/lib/ruby/1.8/i486-linux/missing.h:25:25: sys/types.h : Aucun fichier ou r??pertoire de ce type In file included from /usr/lib/ruby/1.8/i486-linux/ruby.h:678, from http11.c:1: /usr/lib/ruby/1.8/i486-linux/intern.h:215: error: erreur de syntaxe before "fd_set" /usr/lib/ruby/1.8/i486-linux/intern.h:216: attention : `struct timeval'' declared inside parameter list /usr/lib/ruby/1.8/i486-linux/intern.h:216: attention : its scope is only this definition or declaration, which is probably not what you want /usr/lib/ruby/1.8/i486-linux/intern.h:216: attention : parameter has incomplete type /usr/lib/ruby/1.8/i486-linux/intern.h:446: attention : noms de param??tres (sans type) dans la d??claration de fonction Dans le fichier inclus ? partir de http11.c:1: /usr/lib/ruby/1.8/i486-linux/ruby.h:687:21: pthread.h : Aucun fichier ou r??pertoire de ce type In file included from http11.c:1: /usr/lib/ruby/1.8/i486-linux/ruby.h:689: error: erreur de syntaxe before "rb_nativethread_t" /usr/lib/ruby/1.8/i486-linux/ruby.h:689: attention : type defaults to `int'' in declaration of `rb_nativethread_t'' /usr/lib/ruby/1.8/i486-linux/ruby.h:689: attention : data definition has no type or storage class http11.c:3:20: assert.h : Aucun fichier ou r??pertoire de ce type http11.c:4:20: string.h : Aucun fichier ou r??pertoire de ce type Dans le fichier inclus ? partir de http11.c:5: http11_parser.h:4:23: sys/types.h : Aucun fichier ou r??pertoire de ce type http11.c:6:19: ctype.h : Aucun fichier ou r??pertoire de ce type http11.c: Dans la fonction ?? http_field ??: http11.c:51: attention : implicit declaration of function `toupper'' http11.c: Dans la fonction ?? header_done ??: http11.c:103: attention : implicit declaration of function `strchr'' http11.c:94: attention : unused variable `host'' http11.c:95: attention : unused variable `port'' http11.c: Dans la fonction ?? HttpParser_free ??: http11.c:124: attention : implicit declaration of function `free'' http11.c: Dans la fonction ?? URIClassifier_alloc ??: http11.c:289: attention : implicit declaration of function `assert'' http11.c: Hors de toute fonction : http11.c:25: attention : `global_interface_value'' defined but not used make: *** [http11.o] Erreur 1 ruby extconf.rb update mongrel checking for main() in -lc... no creating Makefile -- Jean-Christophe Michel fools." Martin Luther King, Jr.
hey, first off thanks - ive been using it locally and i love it, works a charm im currently running lighttpd + scgi (cheers again!) and i''m eager to give your lighttpd + mongrel proxy setup a bash; one thing though, is memcached a _requirement_ or just advised/preferred? this is for running on a vps with 256MB, so resources are at a premium - first thing on memcached''s w3 page is a boot command specifying 2GB ram which is scaring the beejesus outta me to say the least.. i assume i can get away with substantially less than this but do i need it at all in order to utilise lighttpd''s cache? this is for lightweight apps using sqlite3, no fat rdbms''s any tips before i screw my server are most welcome cheers On Thursday 30 March 2006 11:37, Zed Shaw wrote:> Hello Folks, > > This is the long awaited (like 2 weeks) 0.3.12 release of Mongrel. This > release has received heavier testing than previous releases and supports a > whole raft of improvements to existing functionality plus some new stuff. > > For those not clued in, Mongrel is a web server written in (mostly) Ruby. > Check the funny dogs and read the docs about it at > http://mongrel.rubyforge.org/. The goal is to create a Ruby HTTP server to > compete with Apache Tomcat or other Java application servers. The other > goal is to have the speed of FastCGI with the ease of WEBrick. > > > WHAT''S NEW > > The big points of this release are: > > * The Mongrel::Configurator and Mongrel::Rails::Configurator for simple > configuration (mostly for framework implementers to use). > * Dynamically loadable handlers from the GemPlugins system. Next release > will let you write and add your own handlers. > * Chained handlers. That''s right, you can stack a series of handlers on > any URIs and they''ll be processed in order. This gives you an advanced and > fast pipe-lined processing system and is already used to implement the > extensive debugging support Mongrel has. > * Debugging, Debugging, Debugging. Try the -B option and then look in the > log/mongrel_debug logs. I''ll be beefing this up to insane usefulness for > the 0.3.13 release. > * Support for sendfile on FreeBSD, Linux, and Solaris if you install the > ruby-sendfile (http://rubyforge.org/projects/ruby-sendfile) gem. This is > experimental but already gives a 20% boost on static files. > * Additional proper headers for static files from the DirHandler in order > to allow browsers to cache the content. People using Mongrel for > development or small sites will love this combined with the sendfile > support. > * Lots and lots of little tweaks to improve speed and stability. Mongrel > is starting to hit a wall again with performance so I''ll be looking for new > hot-spots to move to C in the near future. > * Initial support for Rails 1.1. Remember *if you use Typo it is broken > not Mongrel*. Typo is being frantically fixed so be patient. > * Fix for a bad typo on Win32 that prevented people from using additional > mime types files (stupid Emacs and it''s damn capitalize command being > exactly the same as Copy in every other editor). > * Ability to specify a timeout throttling setting and a max number of > concurrent connections with additional attempts at cleaning dead threads > out. Future debugging will help people spot these. > * Lots of new Camping support and integration (thanks to Trotter Cashion > for using Mongrel with Camping like crazy). > * A handy -C option for the mongrel_rails script that lets you specify the > options you''d normally do on the command line as a YAML hash. More on this > later. > > INSTALL > > Everyone can go download 0.3.12 from > http://rubyforge.org/frs/?group_id=1306 like normal or do the usual "gem > install mongrel" or "gem update" to get the latest and greatest. > > -- If you followed pre-release please uninstall first. > > > NEXT STOP... > > The next steps with Mongrel will be to add the capability for users of > Mongrel to write their own Configurator scripts and to test the living > daylights out of it. If you missed my last announcement, Mongrel is > getting *commercial sponsorship* from EastMedia (http://www.eastmedia.com/) > in partnership with VeriSign (http://www.verisign.com/) for use in a > potentially large scale project. My role in this is to make sure Mongrel > can handle the required role and will not ever crash. I''ll be spending the > next few weeks putting out less features and doing more stability and speed > tweaks. Stay tuned. Should be fun. > > > Enjoy and report those bugs! > > > Zed A. Shaw > http://mongrel.rubyforge.org/ > > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails
I''m using Lighty and Mongrel, but don''t use memcached (nor Lighty''s cache, which I haven''t heard of (unless it''s the PFM Zed mentions in his Lighty-Mongrel doc) ). Joe -- Posted via http://www.ruby-forum.com/.
Scott Mathieson
2006-Mar-31 21:09 UTC
[Rails] Re: Mongrel Web Server 0.3.12 -- Finally Out
yeah it''s the power magnet bit - i''m just not really sure if the "Memcached The next installment of this document will tell you how to setup a memcached so that you can run the lighttpd on a different server from the Mongrel cluster. Right now they all have to reside on one machine." part means anything as far as cacheing using lighttpd is concerned (on one machine) off to read up some more :P cheers On Friday 31 March 2006 21:34, Joe wrote:> I''m using Lighty and Mongrel, but don''t use memcached (nor Lighty''s > cache, which I haven''t heard of (unless it''s the PFM Zed mentions in his > Lighty-Mongrel doc) ). > > Joe
Scott Mathieson
2006-Mar-31 21:43 UTC
[Rails] Re: Mongrel Web Server 0.3.12 -- Finally Out
looks like i''m cool without it, sorry for the noise *must not think straight onto mailing lists* On Friday 31 March 2006 21:34, Joe wrote:> I''m using Lighty and Mongrel, but don''t use memcached (nor Lighty''s > cache, which I haven''t heard of (unless it''s the PFM Zed mentions in his > Lighty-Mongrel doc) ). > > Joe
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Jeroen Houben wrote:> Hi Zed, > > I read the website, but I must admit I still don''t see what benefits > Mongrel will bring me. What can it do that fcgi cannot? Is it just an > easier (and maybe faster) way to run rails apps or does it add > functionality that is currently not available?For one, it''s a nice replacement for webrick, while developing, as it is much faster than webrick. Compared to fcgi, it''s similar, so if you have a working fcgi environment, it may be a tougher call. Of interest to me was: http://weblog.textdrive.com/article/200/playing-with-lighttpd-litespeed-fcgi-and-mongrel where they said, "Mongrel as a proxy performs just as well as fcgi does, either with lighttpd or litespeed, and could easily become an Adios FCGI thing." It at least looks like something to watch. :) - -- David Morton Maia Mailguard - http://www.maiamailguard.com Morton Software Design and Consulting - http://www.dgrmm.net -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFELxs3SIxC85HZHLMRAjeFAJ44XqEV9Ak5b+jtJfiP632SnUzS1gCfQ8z7 f1wSngHEtNY55peBr95z4Sg=KC87 -----END PGP SIGNATURE-----
Keith Lancaster
2006-Apr-02 02:24 UTC
[Rails] Re: Mongrel Web Server 0.3.12 -- Finally Out
David Morton wrote:> Compared to fcgi, it''s similar, so if you have a working fcgi > environment, it > may be a tougher call. Of interest to me was: > > http://weblog.textdrive.com/article/200/playing-with-lighttpd-litespeed-fcgi-and-mongrel > > where they said, "Mongrel as a proxy performs just as well as fcgi does, > either > with lighttpd or litespeed, and could easily become an Adios FCGI > thing." >After putzing with lighttpd, fcgi, and apache for the better part of a day on both OSX and Windows, I did the dance of joy when I fired up mongrel and everything just worked! (on both platforms, I might add). Our web app will never high hit rates (maybe 10k/day at the outside), and is 99.5% generated content (little or no static content). While the hit rate is not high, it must be absolutely stable. Lives won''t exactly depend on this app, but it is "mission critical". The questions I have are 1) Is there anyone with experience running mongrel for any length of time, and how stable did it prove itself to be? 2) Since we are not serving static content, is there any compelling reason not to use mongrel as is, i.e., without lighttpd or apache? Bottom line question is: Given the parameters above and the fact that we do *not* currently have a fcgi system in place, would you go with mongrel? TIA, Keith -- Posted via http://www.ruby-forum.com/.
Thanks Zed. Mongrel rocks and is effortless. Your hard work is appreciated. Michael
Keith Lancaster wrote:> Bottom line question is: Given the parameters above and the fact that we > do *not* currently have a fcgi system in place, would you go with > mongrel?I don''t know yet, I''m still evaluating it. Run some benchmarking tests yourself... ;) -- Posted via http://www.ruby-forum.com/.
Looks good - any thought abt supporting SSL? -- Posted via http://www.ruby-forum.com/.
Keith Lancaster
2006-Apr-03 03:21 UTC
[Rails] Re: Mongrel Web Server 0.3.12 -- Finally Out
David Morton wrote:> Keith Lancaster wrote: > >> Bottom line question is: Given the parameters above and the fact that we >> do *not* currently have a fcgi system in place, would you go with >> mongrel? > > I don''t know yet, I''m still evaluating it. Run some benchmarking tests > yourself... ;)I plan on running tests performance test suite against our system using mongrel. What I was interested in was stability over time on a real deployment, if one exists given that mongrel is pretty new. Keith -- Posted via http://www.ruby-forum.com/.
Keith, I *just* finished putting the finishing touches on the first cut at the stability release 0.3.12.1. It''s the result of spending this weekend pounding the hell out of a soon-to-be-production deployment. You can try it out with: gem install mongrel --source=http://mongrel.rubyforge.org/releases/ This release has mostly tweaks to the HTTP parser and IO so that Mongrel detects various bad input types and sizes and then boots the bad clients early. Let me know if you can make it crash. Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/ On 4/2/06 11:21 PM, "Keith Lancaster" <klancaster1957@gmail.com> wrote:> David Morton wrote: >> Keith Lancaster wrote: >> >>> Bottom line question is: Given the parameters above and the fact that we >>> do *not* currently have a fcgi system in place, would you go with >>> mongrel? >> >> I don''t know yet, I''m still evaluating it. Run some benchmarking tests >> yourself... ;) > > I plan on running tests performance test suite against our system using > mongrel. What I was interested in was stability over time on a real > deployment, if one exists given that mongrel is pretty new. > > Keith
Keith Lancaster
2006-Apr-03 12:51 UTC
[Rails] Re: Re: Mongrel Web Server 0.3.12 -- Finally Out
Zed Shaw wrote:> Keith, > > I *just* finished putting the finishing touches on the first cut at the > stability release 0.3.12.1. It''s the result of spending this weekend > pounding the hell out of a soon-to-be-production deployment. You can > try it > out with: > > gem install mongrel --source=http://mongrel.rubyforge.org/releases/ > > This release has mostly tweaks to the HTTP parser and IO so that Mongrel > detects various bad input types and sizes and then boots the bad clients > early. > > Let me know if you can make it crash. > > Zed A. Shaw > http://www.zedshaw.com/ > http://mongrel.rubyforge.org/Zed, I''ll check it out. We are going through our preliminary pilot phase with a customer and I''m planning on using mongrel for at least this phase (100''s of hits a day at most). I''ll run some tests today on the release and let you know if I run into anything. BTW, GREAT work on this! Its also great that you''ve been funded to continue work on it. Keith -- Posted via http://www.ruby-forum.com/.
My apologies if this should be obvious. I''m killing myself and wearing out google and I still don''t have a clue of what to do about this problem. I have Apache 2.0.55 httpd.conf set up to use mod_rewrite to proxy requests to mongrel at http://localhost:3000. All is well. One page of our web app uploads a file. The upload works just fine. Now I generate a self signed certificate and, in Apache, redirect everything to https. Cool. In my ignorance I feared that something bad would happen when I took the https request that came to apache and proxied it to mongrel using http, but magically, it all still works. Whatever encryption/decryption is happening, it''s clearly fine and it seems to be happening before the request gets sent to mongrel. But now, alas, I try to upload a file. Attempting to upload a file gives me a ''bad content body'' error at line 981 of cgi.rb, in the read_multipart method. If I change that method to write its input out to a log, I see that $stdin looks very much like encrypted stuff and not at all like clear text. Arg. So now, after much not very fruitful head banging, I have a bunch of questions and I''m hoping that someone can point me in a useful direction. Should I have done something in the apache config to make ssl decrypt this file before passing it on to mongrel? Should I have done something in ruby to decrypt this file? Should I be using something like Pound out in front of everything to handle the en/decryption? Thanks in advance for you thoughts, Sandi ruby 1.8.4 rails 1.0 mongrel 0.3.12.1 apache 2.0.55 RewriteEngine on RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [R,L] Listen 443 SSLEngine on # SSL Cipher Suite: # List the ciphers that the client is permitted to negotiate. # See the mod_ssl documentation for a complete list. SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL # Server Certificate and Private Key Files SSLCertificateFile /usr/local/apache2/conf/ssl/mycert.cer SSLCertificateKeyFile /usr/local/apache2/conf/ssl/mykey.key # Browser compatibility BrowserMatch "MSIE" ssl-unclean-shutdown RewriteEngine on #if maintenance.html exists and I did not just come from it, return it for every request RewriteCond %{DOCUMENT_ROOT}/esub-shared/system/maintenance.html -f RewriteCond %{SCRIPT_FILENAME} !maintenance.html RewriteRule ^/esub.*$ /esub-shared/system/maintenance.html [L] #if you sent me just /esub, please ask again for /esub/ RewriteRule ^/esub$ /esub/ [R] #all /esub/_anything_ requests get forwarded to the listener on port 3000 RewriteRule ^/(esub/.*)$ http://127.0.0.1:3000/$1 [P] _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
Hi Sandi, Responses below... On 4/3/06 8:21 PM, "Sandi Metz" <sandimetz@mindspring.com> wrote:> My apologies if this should be obvious. I''m killing myself and wearing out > google and I still don''t have a clue of what to do about this problem. > > I have Apache 2.0.55 httpd.conf set up to use mod_rewrite to proxy requests to > mongrel at http://localhost:3000. All is well. One page of our web app > uploads a file. The upload works just fine.<snip> Yes, apache should handle all the encryption, decryption for your traffic before talking to Mongrel.> But now, alas, I try to upload a file. Attempting to upload a file gives me > a ''bad content body'' error at line 981 of cgi.rb, in the read_multipart > method. If I change that method to write its input out to a log, I see that > $stdin looks very much like encrypted stuff and not at all like clear text. >That is interesting. Do this for me: 1) gem install mongrel --source=http://mongrel.rubyforge.org/releases/ 2) go to your rails app directory. 3) mongrel_rails start -B Now, do your test again doing the SSL and Non-SSL uploads. When it''s done, take the contents of log/mongrel_debug/rails.log and post it to a nopaste site for me to look at. It''s possible that the headers are mangled before coming in but not sure why Apache wouldn''t fix it.> So now, after much not very fruitful head banging, I have a bunch of questions > and I''m hoping that someone can point me in a useful direction. > > Should I have done something in the apache config to make ssl decrypt this > file before passing it on to mongrel?No idea.> Should I have done something in ruby to decrypt this file?Nope, it should come properly decrypted. Now, it''s possible that it''s not really encrypted but instead just encoded in something unfamiliar to CGI.> Should I be using something like Pound out in front of everything to handle > the en/decryption? >If you can, see if Pound has the same problem. If you can point Pound at Mongrel and the file upload works fine, then you just need to fix apache. If it still fails then something''s up with mongrel. Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/
Zed, Thanks for your reply. I swear, you guys must never sleep. I''m at home right now drinking tequila (it was that kinda day) and can''t get to my server. First thing in the morn I''ll try the newest mongrel and also install Pound and try that. Thanks again, Sandi Zed Shaw wrote: Hi Sandi, Responses below... On 4/3/06 8:21 PM, "Sandi Metz" wrote: My apologies if this should be obvious. I''m killing myself and wearing out google and I still don''t have a clue of what to do about this problem. I have Apache 2.0.55 httpd.conf set up to use mod_rewrite to proxy requests to mongrel at http://localhost:3000. All is well. One page of our web app uploads a file. The upload works just fine. Yes, apache should handle all the encryption, decryption for your traffic before talking to Mongrel. But now, alas, I try to upload a file. Attempting to upload a file gives me a ''bad content body'' error at line 981 of cgi.rb, in the read_multipart method. If I change that method to write its input out to a log, I see that $stdin looks very much like encrypted stuff and not at all like clear text. That is interesting. Do this for me: 1) gem install mongrel --source=http://mongrel.rubyforge.org/releases/ 2) go to your rails app directory. 3) mongrel_rails start -B Now, do your test again doing the SSL and Non-SSL uploads. When it''s done, take the contents of log/mongrel_debug/rails.log and post it to a nopaste site for me to look at. It''s possible that the headers are mangled before coming in but not sure why Apache wouldn''t fix it. So now, after much not very fruitful head banging, I have a bunch of questions and I''m hoping that someone can point me in a useful direction. Should I have done something in the apache config to make ssl decrypt this file before passing it on to mongrel? Should I have done something in ruby to decrypt this file? really encrypted but instead just encoded in something unfamiliar to CGI. Should I be using something like Pound out in front of everything to handle the en/decryption? Mongrel and the file upload works fine, then you just need to fix apache. If it still fails then something''s up with mongrel. Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/ _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
Zed, Under mongrel 0.3.12 with debug on, here are pertinent bits from the rails.log without ssl -> http://rafb.net/paste/results/zvlzxG56.html with ssl -> http://rafb.net/paste/results/wQw7DG14.html To my untutored eye, they both look just fine, though since I uploaded the same file each time I''m confused that the CONTENT_LENGTH changed. Hmm. I installed mongrel 0.3.12.1 this morning and couldn''t get any files to upload at all, even when connecting directly to mongrel on port 3000. Every file upload attempt returned an Internal Server error 500 and nothing got written to any log file. I fear that this is a permissions problem in my config, but it''s hard to know, since falling back to 0.3.12 worked as above. FYI, I tried running my app under Webrick in the same Apache ssl config as above and Webrick got the same error, ie, it died with a # error at line 981 in cgi.rb. This is starting to smell like Apache or like some basic feature of ruby, not mongrel per se. I''ll install Pound and see what happens. Thanks again for your advice, Sandi Zed Shaw wrote: Hi Sandi, Responses below... On 4/3/06 8:21 PM, "Sandi Metz" wrote: My apologies if this should be obvious. I''m killing myself and wearing out google and I still don''t have a clue of what to do about this problem. I have Apache 2.0.55 httpd.conf set up to use mod_rewrite to proxy requests to mongrel at http://localhost:3000. All is well. One page of our web app uploads a file. The upload works just fine. Yes, apache should handle all the encryption, decryption for your traffic before talking to Mongrel. But now, alas, I try to upload a file. Attempting to upload a file gives me a ''bad content body'' error at line 981 of cgi.rb, in the read_multipart method. If I change that method to write its input out to a log, I see that $stdin looks very much like encrypted stuff and not at all like clear text. That is interesting. Do this for me: 1) gem install mongrel --source=http://mongrel.rubyforge.org/releases/ 2) go to your rails app directory. 3) mongrel_rails start -B Now, do your test again doing the SSL and Non-SSL uploads. When it''s done, take the contents of log/mongrel_debug/rails.log and post it to a nopaste site for me to look at. It''s possible that the headers are mangled before coming in but not sure why Apache wouldn''t fix it. So now, after much not very fruitful head banging, I have a bunch of questions and I''m hoping that someone can point me in a useful direction. Should I have done something in the apache config to make ssl decrypt this file before passing it on to mongrel? Should I have done something in ruby to decrypt this file? really encrypted but instead just encoded in something unfamiliar to CGI. Should I be using something like Pound out in front of everything to handle the en/decryption? Mongrel and the file upload works fine, then you just need to fix apache. If it still fails then something''s up with mongrel. Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/ _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
Hi Sandi, comments below... On 4/4/06 10:36 AM, "Sandi Metz" <sandimetz@mindspring.com> wrote:> Zed, > > Under mongrel 0.3.12 with debug on, here are pertinent bits from the rails.log > without ssl -> http://rafb.net/paste/results/zvlzxG56.html > with ssl -> http://rafb.net/paste/results/wQw7DG14.html > > To my untutored eye, they both look just fine, though since I uploaded the > same file each time I''m confused that the CONTENT_LENGTH changed. > > Hmm. >Yeah, these look normal and seem to have the right parsing. There was an error with 0.3.12.1 which your posts might actually be triggering. Try out 0.3.12.2 I posted today since that has a fix to the parser.> I installed mongrel 0.3.12.1 this morning and couldn''t get any files to upload > at all, even when connecting directly to mongrel on port 3000. Every file > upload attempt returned an Internal Server error 500 and nothing got written > to any log file. I fear that this is a permissions problem in my config, but > it''s hard to know, since falling back to 0.3.12 worked as above. >This is probably that parser error. Try 0.3.12.2 and let me know.> FYI, I tried running my app under Webrick in the same Apache ssl config as > above and Webrick got the same error, ie, it died with a #<EOFError: bad > content body> error at line 981 in cgi.rb. This is starting to smell like > Apache or like some basic feature of ruby, not mongrel per se. >Ah, see if webrick is dying then there''s soemthing up with cgi.rb and how it''s parsing stuff. I''ll cook up a little debug handler for you to try which might shed some light on the problem.> I''ll install Pound and see what happens. >Cool, let me know how it works. Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/
Zed, I''ve found this apache bug which is about data loss with httpd-2.0.55 reverse proxy method=post. http://issues.apache.org/bugzilla/show_bug.cgi?id=37739 http://issues.apache.org/bugzilla/show_bug.cgi?id=37145 It seems promisingly related. I''m gonna patch apache this morning, first thing. Thanks for your offer of a debug handler; it''s very generous. If the apache fix works I may not need it, but if not, I''ll be back begging for help again soon. :-) Thanks, Sandi Zed Shaw wrote: Hi Sandi, comments below... On 4/4/06 10:36 AM, "Sandi Metz" wrote: Zed, Under mongrel 0.3.12 with debug on, here are pertinent bits from the rails.log without ssl -> http://rafb.net/paste/results/zvlzxG56.html with ssl -> http://rafb.net/paste/results/wQw7DG14.html To my untutored eye, they both look just fine, though since I uploaded the same file each time I''m confused that the CONTENT_LENGTH changed. Hmm. Yeah, these look normal and seem to have the right parsing. There was an error with 0.3.12.1 which your posts might actually be triggering. Try out 0.3.12.2 I posted today since that has a fix to the parser. I installed mongrel 0.3.12.1 this morning and couldn''t get any files to upload at all, even when connecting directly to mongrel on port 3000. Every file upload attempt returned an Internal Server error 500 and nothing got written to any log file. I fear that this is a permissions problem in my config, but it''s hard to know, since falling back to 0.3.12 worked as above. FYI, I tried running my app under Webrick in the same Apache ssl config as above and Webrick got the same error, ie, it died with a # error at line 981 in cgi.rb. This is starting to smell like Apache or like some basic feature of ruby, not mongrel per se. it''s parsing stuff. I''ll cook up a little debug handler for you to try which might shed some light on the problem. I''ll install Pound and see what happens. Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/ _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
Sandi, Found the real bug I was tracking down related to multipart forms this morning. Try out the releases setup one more time and report to me if that solves your problem. gem install mongrel ?source=http://mongrel.rubyforge.org/releases/ Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/ On 4/5/06 7:31 AM, "Sandi Metz" <sandimetz@mindspring.com> wrote:> Zed, > > I''ve found this apache bug which is about data loss with httpd-2.0.55 reverse > proxy method=post. > http://issues.apache.org/bugzilla/show_bug.cgi?id=37739 > http://issues.apache.org/bugzilla/show_bug.cgi?id=37145 > > It seems promisingly related. I''m gonna patch apache this morning, first > thing. > > Thanks for your offer of a debug handler; it''s very generous. If the apache > fix works I may not need it, but if not, I''ll be back begging for help again > soon. :-) > > Thanks, > Sandi-------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060405/8a2b7ad1/attachment.html
Under this mongrel release, my uploads work again while pointing my browser directly to mongrel on port 3000, my uploads work when I use apache 2.0.55 to proxy from http to mongrel, and my uploads still fail when I turn ssl on in apache and then proxy to mongrel. This is definite progress. I''m installing the apache patch right now, updates to follow... You rock. Thanks, Sandi Zed Shaw wrote: Re: [Rails] Apache, SSL, Mongrel and File upload question... Sandi, Found the real bug I was tracking down related to multipart forms this morning. Try out the releases setup one more time and report to me if that solves your problem. gem install mongrel —source=http://mongrel.rubyforge.org/releases/ Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/ On 4/5/06 7:31 AM, "Sandi Metz" wrote: Zed, I''ve found this apache bug which is about data loss with httpd-2.0.55 reverse proxy method=post. http://issues.apache.org/bugzilla/show_bug.cgi?id=37739 http://issues.apache.org/bugzilla/show_bug.cgi?id=37145 It seems promisingly related. I''m gonna patch apache this morning, first thing. Thanks for your offer of a debug handler; it''s very generous. If the apache fix works I may not need it, but if not, I''ll be back begging for help again soon. :-) Thanks, Sandi _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
Zed, Adding patch http://issues.apache.org/bugzilla/show_bug.cgi?id=37145 to my apache 2.0.55 http server fixed my last upload problem. I''m feeling very cheerful. :-) For those who care, this patch fixes a problem in mod_proxy where it incorrectly handles multipart files when using POST and ssl. Anyone using apache 2.0.55 to proxy from https to mongrel and who plans to upload files, will need this patch. Thanks again for all your help. I definitely owe you a cold beverage. Sandi Sandi Metz wrote: Under this mongrel release, my uploads work again while pointing my browser directly to mongrel on port 3000, my uploads work when I use apache 2.0.55 to proxy from http to mongrel, and my uploads still fail when I turn ssl on in apache and then proxy to mongrel. This is definite progress. I''m installing the apache patch right now, updates to follow... You rock. Thanks, Sandi Zed Shaw wrote: Re: [Rails] Apache, SSL, Mongrel and File upload question... Sandi, Found the real bug I was tracking down related to multipart forms this morning. Try out the releases setup one more time and report to me if that solves your problem. gem install mongrel —source=http://mongrel.rubyforge.org/releases/ Zed A. Shaw http://www.zedshaw.com/ http://mongrel.rubyforge.org/ On 4/5/06 7:31 AM, "Sandi Metz" wrote: Zed, I''ve found this apache bug which is about data loss with httpd-2.0.55 reverse proxy method=post. http://issues.apache.org/bugzilla/show_bug.cgi?id=37739 http://issues.apache.org/bugzilla/show_bug.cgi?id=37145 It seems promisingly related. I''m gonna patch apache this morning, first thing. Thanks for your offer of a debug handler; it''s very generous. If the apache fix works I may not need it, but if not, I''ll be back begging for help again soon. :-) Thanks, Sandi _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
Apparently Analagous Threads
- DAHDI or Zaptel doesn't compile against 1.4.24
- mongrel error on debian sarge
- Rails, Ubuntu dapper & Mongrel > uninitialized constant Mongrel::HttpHandler error
- Trouble running 'alsamixer' as normal user on headless box with minimal system
- [beginner] Can't launch sol.exe!