I work for a big news organization in the South East… The support team
is
arguing that it’s more difficult to support Nginx + Passenger because
any
patches, etc are made by updating source ( compiling modules statically
)
and re-installing. This is as opposed to Apache that can be updated
using
yum with pre-built binaries.
Curious what people on this mailing list say about the support team
argument.
Are you using system and/or config management to manage your third
party software? IMHO, nginx and apache is same, the different is only
on configuration and performance.
Pkgs, pacthes, updates, etc depend on each linux distribution. IMHO.
Frankly it sounds more like laziness or being averse to change. All I
can relay is experience with our setup here which is purely FreeBSD with
an
internal Poudriere based package build server, and system/config
management
with Salt. Taken as a whole it’s a painless and relatively trivial
process
to keep nginx+modules fully up to date and pushed to all the servers. In
your case the key part is the management layer. Salt, Ansible, Chef,
Puppet, whatever, those things do the true heavy lifting once your
server
count rises to greater than two and completely levels the field for ease
of
updates between nginx and Apache.
I will say the Passenger module seems to be one of those which goes
through fits of updates which if I had to use it would be mildly irksome
for non-technical reasons. But with a proper method of package
deployment
it remains an easy job. Even if nginx were slightly harder to keep
updated,
which again it’s not, I’d still go through the trouble simply for the
performance circles it runs around Apache.