This is part of The Pile, a partial archive of some open source mailing lists and newsgroups.
=== To: mod_perl List <modperl@apache.org> From: Andrew Ho <andrew@tellme.com> Subject: Re: Development Environment Date: Wed, 31 Jan 2001 01:42:35 -0800 (PST) Hello, ST>I was wondering if anyone has successfully setup a development ST>environment to allow for multiple development copies of modules used ST>within Mason components. Also, to have the appropriate changes to the ST>modules shown within the development environment. This can also be a general mod_perl question, because it's also not easily solved for handlers and shared Perl modules (there are a couple hacks, like translating the source code to munge package names, but they're usually not pretty). GED>Is there some reason you don't want to run several independent GED>instances of Apache? What if there are 20 mod_perl developers at your company? You either need to do admin work to partition the developers by what modules they write, or run 20 Apache instances, which may be very expensive. === To: Andrew Ho <andrew@tellme.com> From: "G.W. Haywood" <ged@www.jubileegroup.co.uk> Subject: Re: Development Environment Date: Wed, 31 Jan 2001 10:12:49 +0000 (GMT) Hi Andrew, On Wed, 31 Jan 2001, Andrew Ho wrote: > What if there are 20 mod_perl developers at your company? You either need > to do admin work to partition the developers by what modules they write, > or run 20 Apache instances, which may be very expensive. Yes, it's a lot of work to set up an environment for many developers to work in. I work on servers which do this sort of thing now. As we're all working on the same project, we have a single httpd.conf for all Apache instances on the develpopment server(s) plus for example ghhttpd.conf for my own personal settings where they differ from those which the others are using at the time. In httpd.conf there's a section something like this: <IfDefine ghhttpd> ServerRoot /home/ged/whateverServerRoot DocumentRoot /home/ged/whateverDocumentRoot Port 4321 User ged Group nogroup ErrorLog /home/ged/log/error_log CustomLog /home/ged/log/access_log combined PidFile /tmp/ghttpd.pid LockFile /tmp/ghttpd.lock Include conf/ghcustom.conf </IfDefine> and my httpd instance is started something like this: /path/to/httpd -Dghhttpd -f.... so that the appropriate personalization is used. I very rarely need my ghhttpd.conf. === To: Vivek Khera <khera@kciLink.com>, mod_perl List <modperl@apache.org> From: Gunther Birznieks <gunther@extropia.com> Subject: Re: Development Environment Date: Thu, 01 Feb 2001 09:32:29 +0800 At 11:37 AM 1/31/01 -0500, Vivek Khera wrote: > >>>>> "AH" == Andrew Ho <andrew@tellme.com> writes: > >AH> What if there are 20 mod_perl developers at your company? You either need >AH> to do admin work to partition the developers by what modules they write, >AH> or run 20 Apache instances, which may be very expensive. > >And these 20 developers don't have workstations of their own? You can >build a development environment on a workstation just as easily as you >can on a server... I agree. I've seen many people try to do shared memory/cached programming in one server and it just doesn't work very well in practice. It only takes one programmer a typo to take everyone else down until the bug is fixed. From Jakarta/Tomcat to IIS to Apache/mod_perl. Developers having their own workstation is the best for testing and active development. Of course, a staging server needs to be shared. But it's a lot cleaner once the developer has debugged their own code. ===== To: Vivek Khera <khera@kciLink.com> From: Andrew Ho <andrew@tellme.com> Subject: Re: Development Environment Date: Wed, 31 Jan 2001 20:56:50 -0800 (PST) Hello, AH>What if there are 20 mod_perl developers at your company? You either need AH>to do admin work to partition the developers by what modules they write, AH>or run 20 Apache instances, which may be very expensive. VK>And these 20 developers don't have workstations of their own? You can VK>build a development environment on a workstation just as easily as you VK>can on a server... Not if there are platform-specific dependencies. Say your servers are heavy duty Sparc machines, and you maintain code for Solaris Sparc only. Buying workstations for everybody can be quite expensive in that case. === To: "mod_perl List" <modperl@apache.org> From: "Stathy Touloumis" <stathy.touloumis@edventions.com> Subject: RE: Development Environment Date: Thu, 1 Feb 2001 09:42:47 -0600 I actually was nearlly successful in accomplishing some sort of mechanism by which developer packages can be mapped to a virtual package which the real package points to (did this make sense?). Anyway, it needed to tap into the symbol table way too extensively and ran into several problems. I also thought about configuring the apache server differently on development so that child processes get recycled much faster than on production so as to allow for each request to use it's own memory. This can be resource intensive but again it would only be on development. Also, packages/modules will need to be called on a per request basis in development. I will let you know if it is feasible. === To: "mod_perl List" <modperl@apache.org> From: "Stathy Touloumis" <stathy.touloumis@edventions.com> Subject: RE: Development Environment Date: Thu, 1 Feb 2001 10:49:28 -0600 With the 'MaxRequestsPerChild' setting to 1 this seems to be fairly effective. I am not running into any of these issues I ran into before with namespace collision. I am not sure how this would scale for larger teams ( 20+ developers ) but it will do for our environment. ===