

Work has started on the next generation of Apache web server - Tsiolkovsky
http://www.h-online.com/open/news/item/Work-has-started-on-the-next-generation-of-Apache-1203465.html

======
powertower
The 2.3 branch is a testing branch (that was alpha before 2.3.11, now is beta
after 2.3.11).

What we will see is 2.4 (general/public release). And it won't really be
stable / product-ready until about 6 months after: 2.4.8.

<http://httpd.apache.org/docs/2.3/new_features_2_4.html>

<http://httpd.apache.org/docs/2.3/developer/new_api_2_4.html>

The MPM for Windows is really great, it takes full advantage of the threaded
nature of processes on Windows ... You can spin up 100s of threads in 1
process without much of an impact and have each thread do 1 connection (with a
low 1 or 2 seconds keepalive to keep the client).

I'm mostly interested in Apache on Windows and have toyed around with the idea
of including v2.3 in my WAMP distribution (
<http://www.devside.net/server/webdeveloper> ) in the experimental branch,
with also some MySQL replacements such as MariaDB and Drizzle.

------
bnoordhuis
Apache hacker here. AMA.

~~~
kristofferR
Why is apache so slow compared to Nginx, Cherokee, Lighttpd and many other web
server softwares?

~~~
bnoordhuis
Different design goals. Apache is meant to be robust, extensible and portable.

* Robust: that's reflected in its internal API that makes it near impossible to leak resources.

* Extensible: witness the gazillion modules out there.

* Portable: compiles and runs on very exotic or outdated systems. SCO, IRIX, Digital UNIX, VMS, the list goes on.

nginx and such were designed from the ground up with performance in mind - and
with success - but the trade-off is a lack of portability and an API that is
much harder to program to.

~~~
kujawa
Well gee. It's been a while since I've used Digital UNIX, Irix, SCO, or VMS.

Because they've become totally irrelevant.

Seems like a waste of resources when there are more pressing things to do than
worry about the 5 people who (a) use VMS and (b) demand a bleeding-edge
Apache.

~~~
lambda
No need to be so acerbic. They are providing a valuable service to you, for
free. Apache is older, much more ubiquitous, supports more modules, has a more
familiar setup and configuration system for many people, runs on more
platforms, etc. It has more legacy issues, which are why it's so popular, but
also why it moves slower. Nginx is much newer, doesn't have the same legacy
issues, and so could afford to focus on speed.

There's a reason that Apache is installed on just about every random web host
you can find, and has a module for every language or environment you need to
deel with, while Nginx is a bit more of a specialty web server, usually used
for dedicated sites that can spend the time to tune carefully for the highest
performance. They both have their place.

It's great that Apache is still innovating moving towards loadable MPMs as
well as adding an evented MPM. But it's not a bad thing that they're moving
slower than a new server like Nginx; there's room for more than one great free
web server in the world.

------
justincormack
Interesting now lighttpd, nginx and apache are all going to have some degree
of integration of Lua in request processing. Its really useful having a real
programming language built right in.

~~~
brianm
Agreed, and lua is so nice to embed that it makes it easy. The only thing that
compares is tcl, and, well... Yeah, go lua!

------
IgorPartola
Does this mean that apache2 + the Lua support are going to be the next
node.js? On a more serious note, this is super-exciting.

~~~
compay
If you're interested in something like Node.js for Lua, check out Ignacio
Burgueño's LuaNode.

<https://github.com/ignacio/LuaNode>

------
sunkencity
One of the things that impresses me the most with apache httpd (except for
stability and configurability) is the amazing level of integration with perl,
not much of a perl hacker myself, but I've done a little development of C
stuff for apache, and from what I can see all of the C api is also accessible
from mod_perl.

------
megaman821
Apache has a lot of distance to make up. Nginx with PHP-FPM and uWSGI are very
fast and light on the memory. I also save time with my setup by not having to
configure both Nginx and Apache (since Apache is way too slow to serve static
content).

