Marnen Laibow-Koser wrote:
Elliott Golden wrote:
[...]
What's your thoughts on running Mongrel on my dev box and Passenger in
production?
That's what I do. It hasn't been a problem at all. I don't really see
much point in putting Passenger on my laptop.
Same here. I use mongrel for development mostly because I don't
generally run Apache at all on my development box. I don't see the point
of having Apache/Passenger running all the time just to run my Rails
apps.
This is pretty much all about user preference, so do whatever you find
works for you. I just try to run as few services on my development
machine as possible and Apache is not generally requires. I don't browse
web sites stored on my own laptop. I figure the fewer services I have
running, the more secure my environment is for day-to-day use. Not that
I'm concerned about the security of Apache.
That being said, I'm sure there are some advantages of running
Apache/Passenger on your development box, but I don't think application
server differences are going to be a major issue. I would expect to have
more issues in production, but due to load rather than what application
server is used.
Matt Harrison wrote:
Ideally I think you should be using the
same software on both dev and prod, but that's maybe just me.
While I see some merit to this, there is actually some advantage to
having different environments for development and production.
1. I happen to develop on a Mac, which provides me with a lot of design
tools, and an excellent development environment that I find advantageous
over other alternatives. However, I generally deploy to Linux servers.
2. Having different environments helps to ensure that I'm not creating
issues that might bind me to a specific deployment environment. I even
tend to use a different database in development than what I use in
production. This helps ensure that the code I write is database
agnostic.
I do think that a staging server that matches your production
environment would be very useful for critical web sites.