Slashdot Mirror


Apache Server Nears 2.0

An Anonymous Coward writes: "The Apache httpd project has released a new beta of their apache 2.0 server (v32)". For those who have not been following the 2.0 development, this is the third beta that has been produced. The new version of Apache sports the new APR API and a new method for filtered I/O, and has been rewritten to make use of a hybrid thread/process model. With Covalent already selling a commercial version of 2.0, hopefully we will see a full release of the open source version in the near future.

46 of 148 comments (clear)

  1. Re:And...? by strags · · Score: 2

    Err.... Read the article?

    Wouldn't you agree that it's a good thing to improve Apache's portability?

    There's also a lot more to a web server than just serving files straight off the hard drive.

  2. Apache 2.0 Threads by TurboRoot · · Score: 3, Interesting

    The main benefit of Apache in the first place is the stability benefited from the fork() nature of it.

    Apache 2.0 brings some nice and intresting new features that only a multithreaded server can bring, but these are all features already available in tons of other web servers..

    Unfortuantly, the programmers working on Apache 2.0 don't know how to write thread safe code. Don't believe me? Go get the source yourself, cuddle up to a posix threading book and pull out a 100% correct threading library. (Like the FreeBSD one.) :)

    Example... DONT USE SLEEP(3) in a multithreaded application!.. but whatever :)

    What I am basically saying is.. I would't get apache 2.0 for production _yet_. Someday Apache 2.0 will be the model for how a stable multithreaded multi-protocol server can be written.

    By the way, I normally don't take time out to actually post. But since my moderation and meta moderation privs were removed since i moderated a post I found intresting.. to be intresting. (The great slashdot troll investigation). About 500 people lost their moderation ability at that time. What a nice brave new world.

    The advance is. I can now say what I truely feel and not care about karma.. because this place is a joke. :)

    1. Re:Apache 2.0 Threads by Anonymous Coward · · Score: 4, Informative

      POSIX.1 specifies sleep(3) be both thread-safe and cancellation-safe.

    2. Re:Apache 2.0 Threads by ink · · Score: 5, Informative
      Go get the source yourself, cuddle up to a posix threading book and pull out a 100% correct threading library. (Like the FreeBSD one.)

      When did FreeBSD get 100% compliance?

      http://www.idiom.com/~bko/bsd/freebsd-threads.txt
      In addition, ngpth has been accepted by Linus and they are very close to 100% compliant as well as providing for M:N mapping to scale on multiple processors, and to give programmers choice of kernel or userland threads with standard calls. BSD is great and all, but you guys do way too much chest-pounding.
      --
      The wheel is turning, but the hamster is dead.
    3. Re:Apache 2.0 Threads by Elias+Ross · · Score: 2


      What do you mean about sleep(3) not being thread-safe? I'd like to see more explaination about how you see Apache's code as not thread-safe. You are likely talking out of your arse, and you don't deserve to get moderated to '5'.

    4. Re:Apache 2.0 Threads by Electrum · · Score: 3, Informative

      Well, generally, when I see something like sleep(3), it means that a thread is waiting for an event to finish.

      That notation tells which manual section the name is in, not what parameters if any the function may be called with (many times the name is not a function). In this case, the "sleep" function is in manual section 3. i.e. you run "man 3 sleep".
    5. Re:Apache 2.0 Threads by Fweeky · · Score: 3, Interesting

      > a 100% correct threading library. (Like the FreeBSD one.)

      FreeBSD's threading it actually supposed to be rather smelly - just ask on freebsd-hackers or so.

      This is why Apache 2 on FreeBSD is best off sticking with the prefork MPM. The introduction of KSE's in -current will alleviate this, but that's still heavily in development.

    6. Re:Apache 2.0 Threads by Fweeky · · Score: 3, Informative

      Should probably have included a link to http://people.freebsd.org/~jasone/kse/ for those who cba Googling; there is some good stuff about the current threading implimentations there too.

    7. Re:Apache 2.0 Threads by BusterB · · Score: 4, Informative

      > POSIX.1 specifies sleep(3) be both thread-safe and cancellation-safe.

      I don't think he's talking about sleep being thread-safe. I think he's talking about using sleep rather than a condition variable and a while loop to wait for access to a shared resource. The problem with using sleep is that it's entirely dependent on system load/ speed/ alignment of the moon. Code like that assumes that if it waits a certain amount of time, the resource will be free.

      Imagine checking to see if a pool is dry, noticing that it is, coming back later and jumping in without looking. It might be full later, but it's much better to keep looking and not jump until the pool actually has water.

      This type of thing is especially hard to debug when you upgrade your hardware and your software mysteriously fails. Suddenly, you're not sleeping long enough to get an exclusive lock on a shared resource.

    8. Re:Apache 2.0 Threads by ahde · · Score: 2

      Of course, the only times threading is going to benefit you in Apache's model in on Windows (where processes are so damn heavy) or large SMP systems with heavy loads.

      The real improvements are things like the cool forwarding that allows you to build simple modules that say -- parse an XML with embedded PHP and pass it off to SSI and then XSLT it.

  3. Re:And...? by TeknoHog · · Score: 3, Funny

    Apache is doing a thing or two besides just calling "Passenger index.html, please contact gate 80". There are other, faster httpds around that focus on this simple task, for example Boa. (the joke works much better in Finnish)

    --
    Escher was the first MC and Giger invented the HR department.
  4. Excellent Work - Worth the wait by Dysan2k · · Score: 5, Insightful

    Personally, I don't mind waiting on the Apache project to take their time and do it right. I believe 2.0 isn't bloatware, but a far more modular and extensible version of the worlds fav. web server. Personally I've been waiting for a WHILE to start using it. I'm not sure if PHP4 will compile against it yet. Maybe out of CVS it will.

    With the new threading, it should manage to push out pages a lot faster under load, and make better use of the processors. Might have to go download today. Here's a project for those of you bleeding edgers out there. I've yet to manage this one myself:

    Apache 2.0 + mod_perl + php4 (with support for MySQL 4.x) + mod_ssl.

    I don't think non-CVS PHP4 will handle MySQL 4.x, but perhaps there are others that know how.

    Back to topic, way to go guys!!

    --
    -What have you contributed lately?
    1. Re:Excellent Work - Worth the wait by gid · · Score: 2

      Well I just got cvs php4.2.0-dev to compile against apache2, with some tweaking of the php4/configure file that buildconf generates, so the support is there. I tried using php 4.1.1 but it was having nothing of the sorts, I modified the configure file the same way, but make gave me some error from outerspace halfway through the compile, which unforunately is long gone off my rxvt buffer. :/

      Apache2 with php4 was up and running for a little bit, I hit one php page, it worked fine, and I think apache2 segfaulted sometime after that, I might have hit the status page first. Now apache2 won't even start with php4 enabled, no error messages, no nothing, not even turning on debug in the error_log, still no messages. It simply doesn't start. If I disable the php module it starts fine. Oh well, guess I'll stick to apache 1.3.23 for the time being.

      Here's a piece of the error_log for anyone intersted:
      [Wed Feb 20 13:06:22 2002] [notice] Apache/2.0.32 (Unix) PHP/4.2.0-dev configured -- resuming normal operations
      [Wed Feb 20 13:06:45 2002] [error] [client 216.4.165.11] Invalid method in request ***binary junk here /. hates, this message 4 times, around 4 seconds apart***
      [Wed Feb 20 13:10:59 2002] [notice] Graceful restart requested, doing restart
      [Wed Feb 20 13:11:08 2002] [notice] seg fault or similar nasty error detected in the parent process
      [Wed Feb 20 13:27:52 2002] [notice] Apache/2.0.32 (Unix) configured -- resuming normal operations

  5. It's not just for break^H^H^H, er, files anymore by Eryq · · Score: 4, Informative

    Many sites use Apache as an application server or to serve dynamic-content; e.g., by using mod_perl (to deliver blazingly-fast dynamic content generated by Perl scripts), or as a flexible and solid front-end to Java servlet engines like JServ and Tomcat.

    And far from being bloatware, Apache has (at least during 1.*) gotten more modularized over time, making it easier to fine-tune logging, access control, URL rewriting, etc, etc. I don't know squat about 2.x, but I expect good things.

    Just the $0.02 of a Perl/Java hacker who uses it extensively...

    --
    I'm a bloodsucking fiend! Look at my outfit!
  6. Re:And...? by johnnyb · · Score: 2

    Apache has scalability problems. The APR will allow you to tune Apache to be most scalable for your platform. For Windows, it's threads only. For Linux, it will probably be the thread/process combo. This is a good thing. Apache REALLY needs this to move to the next level.

  7. Apache 2 is going to kick ass by blackmateria · · Score: 5, Informative

    I've been using Apache 2 on Linux and FreeBSD for about 2 months now (got into it while playing around with Subversion, another project that seems to be making excellent progress), and IMHO it is really going to rock the server world. Some major plusses:

    • ./configure; make; make install (almost). No more APACI, thankfully.
    • APR. It's already starting to be used by other projects.
    • Totally rewritten mod_cache, mod_proxy, etc. Works much better now!
    • Will actually work on Windows (well, some may not see this as a benefit, but whatever).

    People have been complaining that Apache 2 is slow to come out, but from what I've seen lurking on the mailing list, it's because they want to ensure the quality of this release. They've also been talking about how they want a lot of beta testers, because (<rumor mode on>)they want to release soon, maybe even from 2.0.32. So get out there and beta test it!


    ---
    Have you crashed Windows XP with a simple printf recently? Try it!
    1. Re:Apache 2 is going to kick ass by Electrum · · Score: 2, Interesting

      I've been using Apache 2 on Linux and FreeBSD for about 2 months now (...), and IMHO it is really going to rock the server world.

      This isn't meant to be a flame, but a genuine complaint of the Apache web server that I haven't seen adequately addressed anywhere. How can Apache claim to be a modern web server if it continues to use an outdated request model? Having a separate process or thread for each request is completely unnecessary. Even for a site with dynamic content, the majority of the requests will be for static content (images). So why use up system resources when not necessary?

      A request for static content is essentially just moving data from one file descriptor to a socket, something that sendfile(2) can be used for on operating systems that implement it. If a single system call combined with a select(2) loop can handle the majority of the requests, then why is each request tying up a process or a thread? When reading the Apache mailing lists, you get answers such as "it's too difficult for other programmers to extend the server", "processes or threads don't have to be expensive depending on how the operating system implements them", "everyone is happy with how it works now", and "Apache is meant to be correct first and fast second". None of these address the issue that Apache's request model is flawed, and it will never be high performance until it is corrected.

      Additionally, the Zeus Web Server is well implemented and doesn't suffer from any of the problems that seem to keep Apache from being implemented correctly. It's also better than Apache in every way, ranging from performance to configuration (with the exception of not being open source). Zeus did everything right and built a great web server. Years later, Apache is just now getting their next version into beta, and it seems to be just as fundamentally flawed as the first version. If there is ever an open source web server as high quality as Zeus, then it more than likely won't be Apache.

    2. Re:Apache 2 is going to kick ass by /ASCII · · Score: 2, Informative
      If serving huge amounts (>1 GB/hour)of static content from a single-CPU computer is what your server does, Apache is not for you. The Apache model will never do that as fast as Tux, Zeus or Boa.


      But if you would stop to think for a while, you would see that no one does that. Nowdays, it's all about dynamic content. And in that case the overhead of using multiple threads is tiny compared to the added benefits of scalability and stability.


      It is actually possible to use a kernel-based server like Tux for static content and let Apache take care of the dynamic bits.

      --
      Try out fish, the friendly interactive shell.
    3. Re:Apache 2 is going to kick ass by Electrum · · Score: 5, Insightful

      If serving huge amounts (>1 GB/hour)of static content from a single-CPU computer is what your server does, Apache is not for you.

      A well designed non blocking server can run in multiple processes, to take advantage of multiple CPU's. Zeus does this.

      But if you would stop to think for a while, you would see that no one does that. Nowdays, it's all about dynamic content. And in that case the overhead of using multiple threads is tiny compared to the added benefits of scalability and stability.

      That's wrong. As I said, most of your requests will be static content. Take Slashdot, for example. This comment posting page is one perl page, and six images. Do you really need six extra processes for those images? Especially large Apache processes that have mod_perl and who knows what else compiled into them. Sure, the code pages should be shared, but it's still poor design.

      It is actually possible to use a kernel-based server like Tux for static content and let Apache take care of the dynamic bits.

      Sure you can do that, but wouldn't it be better to use a well designed server in first place, and not have to kludge around design flaws in the web server? Your web server should not be your application server. Your web server should be serving web pages. Your application server should be running applications. The Apache model of "build everything conceivable into the web server process" is a bad idea, and is not consistent with the unix philosophy of doing one thing, and doing it well.

      Everyone knows CGI's are bad for performance because it causes forking a separate CGI process for each request. Turning the CGI's into Apache modules solves this problem, but not in an optimal way. Applications do not belong in the web server. A model such as FastCGI is a much better approach. It is similar to CGI, especially in the sense that it is easy to program for. But instead of running the process and using stdin/stdout as with a CGI, it connects to the FastCGI via a socket. Thus the application stays running, and there is no process creation overhead. It keeps any necessary load balancing on the application end where it belongs, and out of the web server.

      Additionally, the application doesn't even need to be on the same box. You can have one or several application servers, and a single web server. A web server only needs to handle data. A single box should be able to fill your outbound pipe, or at least around 100mbits of it. If an application is slowing it down, then you need another application server, not another web server. It is unfortunate that the two are not seen as the separate entities that they should be.

    4. Re:Apache 2 is going to kick ass by Electrum · · Score: 2

      I doubt that any mod_perl based site is set up in such a way. At a bare miniumum, mod_perl sites have two apache binaries serving pages: one for the static pages, one for the dynamic pages. The static binary is obviously as lightweight as possible. If you're really interested in mod_perl tuning check out the mod_perl guide at perl.apache.org.

      Why should you go through all that extra hassle to make up for a design flaw in the web server? Wouldn't it make more sense to use a non blocking web server with a single process per CPU, and have the Perl FastCGI handling the Perl code?

    5. Re:Apache 2 is going to kick ass by ahde · · Score: 2

      Sliced bread is cool for creating web-content, but for really cool websites, you should really try torillas!

    6. Re:Apache 2 is going to kick ass by Electrum · · Score: 2

      Then use zeus for static pages, and Apache (an APPLICATION SERVER which happens to talk HTTP and feed static content, conveniently) for dynamic content. Zeus doesn't DO dynamic stuff...

      Zeus most certainly does handle dynamic content, and it handles it very well. Zeus supports CGI, FastCGI, NSAPI and ISAPI (basically everything that's not proprietary, like Apache).
  8. There is more to that by artur · · Score: 4, Informative

    This is usually the case when you are serving static pages for a page that is viewed one time a day.

    However, it gets complicated when you serve pages that are dynamically generated for various users. You want to be able to pass content of a file through various modules. You can tell that you want the page to go through mod_perl and then through SSL modules. You can also stack any modules in between.
    The new version makes it easy.

    Of course there is a lot of other things besides the "reading and shooting" files (IPv6, web caching, etc).

  9. Performance results by augustz · · Score: 5, Informative

    I've been following performance results for 2.0, and wanted to let folks know that it doesn't seem clear to me that there is this huge performance gain waiting to happen.

    http://webperf.org/a2/v29/Apache2_26-Nov-2001.html has some 2.x v. 1.x results.

    Love to hear the lowdown on performance advantages of the new Apache from someone in the know or someone who has done some actual testing.

    Also, PHP/Apache perl/Apache integration are probably very high on many folks lists, what is the status of those two vis a vis apache?

    1. Re:Performance results by BigBir3d · · Score: 3

      Configurability is also very important. If 2.0 can be configured better than 1.x ever could, for me, than it will be faster, giving me more performance.

    2. Re:Performance results by Anonymous Coward · · Score: 5, Informative

      the apache has several performance advantages.

      1 lower memory footprint.
      you can run a a server which normally took 4G of memory in 512M

      2. speed
      http://webperf.org/a2/v31/2002-02-11-v29/
      http://webperf.org/a2/v31/2002-02-12-v31/
      the page is similiar to the 'NEWS-STORY-NORMAL' column in the old one..

      check out the response time in the graphs.. can v1.3 get a 1-1.5 second response time as CPU increases like that ?? doubt it
      3. mtmalloc
      we found that using mtmalloc with apache 2.0 gave us a performance increase of 30% (yes 30%) by preloading the library

      4. v31 has got a different pool allocater, which reduces the mutex contention considerably.

      nice to see someone is referenceing my benchmarks ;-)

      BTW .. solaris 8/8 cpu/GCC v2.95

      while your surfing webperf.org.. why not download the agent and run it for a while?

    3. Re:Performance results by webperf · · Score: 2, Informative

      one more point. these pages utilize mod-include VERY heavily. we found a EXPONENTIAL increase in speed in relation to decrease in the number of includes on the page.

  10. Re:Covalent by Moridineas · · Score: 2

    Haha, not only did you not bothering reading the article (links), but you didn't even finish reading the post!!

    "With Covalent already selling a commercial version of 2.0, hopefully we will see a full release of the open source version in the near future." -krow

    well done :)

  11. MSI Installer == Spiffy by justin_w_hall · · Score: 3, Interesting

    First off, I have to rant about how much I love their precompiled MSI builds. Convincing my boss that installing a webserver to replace IIS would be easy was about 3 million times earlier with that... run it, click thru the wizard, once-over the config file and you're up. Now you, too, can escape the IIS headaches in less than five minutes!

    With that said, has anyone tried the MSI for this latest beta? It didn't create the service for me automatically, and I wasn't sure if it was just my crackpipe or if it was an actual problem. Bug report's been filed already, just wanted to see if anyone else had any input...

    --

    ---
    "how can the same street intersect with itself? i must be at the nexus of the universe!" - cosmo kramer
    1. Re:MSI Installer == Spiffy by darkwhite · · Score: 3, Informative

      Yeah, it's strange, because the previous beta does install the service. It's easy though, just run apache -i.

      I've just switched to 2.0 a few days ago on win32... so far it's been about the same as 1.3 for me, the only thing I had a problem with is that it doesn't substitute paths for shebang lines in cgi-bin files, so I have to write out full paths (1.3 did). And the conf file from 1.3 doesn't exactly work right away with 2 (which would be nice), I had to tweak it. Otherwise it's great.

      --

      [an error occurred while processing this directive]
    2. Re:MSI Installer == Spiffy by justin_w_hall · · Score: 2

      Well, it's especially hard because my company's a Microsoft Certified Partner. When I came on board we were relying on Microsoft products for everything, and I don't think anyone realized that there were a few better ways of doing stuff - proxy, for example, as Squid and IPFilter on a ghetto Pentium box smoked MS Proxy 2.0 (on a box twice as fast).

      So I'm starting to get away with using Linux and *BSD for things that they're better for, and as a result I'm slowly chipping away at the MS-dominant infrastructure we have piece by piece. YMMV, but it seems that the 'notion on what is good' doesn't always click with management.

      --

      ---
      "how can the same street intersect with itself? i must be at the nexus of the universe!" - cosmo kramer
  12. Threading is good by Anonymous Coward · · Score: 2, Insightful
    I haven't used a webserver for just static pages in a long time, so it's good apache will support multithreading. Having complex database processes with apache 1.3.x could hinder it's scalability. Doing complex transactions like making calls to multiple databases in a threaded environment should scale better. Now some people will say, "why in the world would you want to make calls to multiple database?"

    The answer to that question is, dynamic transactions often access existing databases, which often have screwed up data models and require insert/updates in multiple tables. Some will run and scream "horror, horror, horror," but now that the .bomb blew up, more and more web developers are finding they have to work with bad, inefficient, poorly documented data models. Having multi-threading in Apache will improve it's scalability.

  13. MySQL? PostgreSQL is better! by Bistronaut · · Score: 3, Funny

    -flame- -flame- -flame- OK, I was just kidding. I love PostgreSQL, but even I realize that when you don't need stability, speed, good SQL compliance or ... what was I saying again? -flame- -flame- -flame- Alright, back on topic, I'm pretty sure that you've been able to compile PHP4 for Apache 2.0 for quite a while now (at least the option has been there - maybe it's been broken?).

  14. High performance PHP by horza · · Score: 2

    It's PHP and not Apache that is the bottleneck here. For instance, I am writing a PHP extension that not only makes reading and writing XML files a doddle (eg to change (hypothetical) Apache xml config: xml_load("httpd.conf); xml_setelement("server.listen.ip", "127.0.0.1"); xml_output("httpd.conf");) but it will cache the XML files too. This means I can load config files at the start of my script with nearly no overhead. It's also going to drop the database load for an online book retailer client of mine to near zero, but that's another story... If anyone is interested in this please use ptemple[at]progressivepublishing.com instead of my Slashdot-reg Hotmail address.

    Phillip.

  15. Re:MySQL? PostgreSQL is better! by Fweeky · · Score: 4, Informative

    The API's are not yet fixed, so they tend to break. You can probably compile CVS of PHP to the current beta Apache 2, but the next time they change something PHP will most likely track the CVS change, leaving the beta out in the cold again.

    I managed to get mod_php + Apache 2b28 coexisting, but it liked to segfault a lot (even when idle) and always ended up eating 100% CPU. I even managed to add Zend 2 (next-gen PHP engine) to the mix, but, well, I haven't seen Apache fall over so much since I got PHP 4.0.0 to generate 50,000 internal errors on a single script.

  16. perchild MPM by slamb · · Score: 5, Interesting
    I'm a little disappointed by Apache 2.0 so far.

    I've been looking forward to the perchild MPM. It can run different server processes under different UID/GIDs. This is important because mod_{perl,php,python,snake} run in-process with the Apache server. It's the only way to run them securely for different people other than a completely seperate webserver for each person (with its own IP address, configuration file, memory footprint, etc.)

    But perchild doesn't really work:

    • It's not portable to non-Linux platforms. (There was talk on the mailing list of marking it experimental because of this.)
    • It hasn't compiled (even on Linux) out of the box in several releases. In 2.0.29, easy to fix but still doesn't work right. (Not compiling is a sure sign it hasn't been maintained.) Not quite as easy on 2.0.32. There's a patch, but it doesn't look right to me.
    • It's easy to misconfigure it into running virtual hosts as root. (Bug report)

    So, Apache 2.0 may be promising in the future...but when a feature I've been looking forward to for a long time is broken, I'm kind of disappointed.

  17. Threads and processes : why? by chrysalis · · Score: 2

    I still wonder why Apache 2.0 was designed to use a strange hybrid model instead of making a non-forking server, just like thttpd, webfs or zeus, whoose performance will probably still kick Apache.

    And Apache still doesn't have any integrated web administration front-end like Zeus.


    --
    {{.sig}}
    1. Re:Threads and processes : why? by webperf · · Score: 3, Informative

      I suggest you look at http://www.kegel.com/c10k.html for a great description on all the different types of architectures there are for webservers

  18. Re:IBM has it too by ||| · · Score: 2, Informative

    why are everyone so exited about the thread-per-request model? instead, many high-performance servers use non-blocking (or asynchronous) i/o models to scale. for instance, look at the seda project (http://www.cs.berkeley.edu/~mdw/proj/seda/) where a java implementation of a web-server using non-blocking i/o outperforms both the apache and flash web-servers for specweb99.

  19. Portable runtime libraries by pieterh · · Score: 2, Informative
    It's a very sensible thing to make since it's cheap and eliminates much of the nasty #ifdef 'portability' one sees in programs.

    You can see an example of a multithreaded web server using a similar portability library on .

    I remember showing this web server and its multithreaded / portability model to the IBM Apache team in December 1999 during the Bazaar at New York. Maybe they got some inspiration from it.

  20. Why pointy-haired-bosses are a pain by MarkusQ · · Score: 2
    I'm a CS student graduating soon, why is there such a hard time making bosses see the beauty and less hassle of these projects linux/apache/etc compare to the MSWin/IIS choice...I mean, who with the smallest notion on what is good would put up a fight to choose IIS over apache!? Will I have the same wonderful challange?

    Before you graduate, be sure to catch up on the industry literature for valuble insights into how the real world works.

    -- MarkusQ

    P.S. Pay special attention to what happens to Asok, and lean how to duck.

  21. Re:Much like Linux 1.0 by MeNeXT · · Score: 3, Funny
    Why are you waiting for their OK? If this was MS it would be at version 3 already. The beta of open source is more reliable than most MS versions. The true final of an MS version is after SP2.

    --
    DRM? No thanks, I'll just get it somewhere else...
  22. try authentication integration for one by gruntvald · · Score: 2, Insightful

    being able to plug in your domain SAM, with acls on the site. Also domain authentication with "web folders" (DAV) is another. Note: I will be happy to be corrected with a HOWTO that tells you how to point DAV at your PDC or SAMBA box here ... (without running a separate accounts database)

  23. Re:glib? by stephend · · Score: 2

    APR deals more with processes, threads, interprocess communication and networking while glib is more of a useful toolbox with trees, stacks and types, etc.

    That being said, there's definately an overlap.

  24. Configure Still Doesn't Work by tomreagan · · Score: 2

    Ok, so maybe this is not the place for this, but I can't seem to get any answers out of the developers about this. ./configure still doesn't work.

    I downloaded 2.0.28 in December and tried to ./configure --enable-layout=opt. No dice - it still throws everything in /usr/local/apache2.
    I posted to the apache-users mailing list in December, and no one responded. I tried again yesterday, with 2.0.32, and it still doesn't work.

    Looking through the bug tracking list, I can see that this bug has been filed since November 2001.

    How can Apache 2 be nearing release if you still can't get it to install where you want it to?

  25. Re:Better Win32 Performance by TheAwfulTruth · · Score: 2

    Yes, clearly using synchronous calls on windows was the result of a bunch of unix coders not knowing how to program for windows at all. I was hoping that the promise for 2.0 meant that they actually hired some real windows coders. I guess not. A well written asynchronous and/or properly threaded application on windows can easily match performance of the best written UNIX apps. But no fork and block unix coder is going to ever be able to do the windows "port" justice (As we've seen). Now I guess we'll have to "hope to discover" if they got a clue or not. :(

    --
    Contrary to popular belief, coding is not all free blow-jobs and beer. Those things cost MONEY!