Hi DL,

The hardware is so "un-notable" it's not even funny.  I'm running a Gigabyte
6VMML motherboard (consumer PC!) with a Celeron 800/100, 512mb RAM, and
using the built-in 10/100 NIC.  It's got a Western Digital (or Seagate, I
can't remember) 18gb 7,200 RPM ATA-100 HDD.  This is basically your everyday
desktop computer!  It cost me something like $400, so it's not high-end by
any means.  But it works!  :)  My firewall allows port 25 outbound from this
box, but not inbound, so external users can't get to it at all.

I've got W2K installed (clean, BTW, not upgraded from NT or anything), all
the patches, and IIS 5.0.  I am running PHP 4.06 (or whatever the most
recent binary version is for Windows) and have vBulletin (discussion board
software www.vBulletin.com) sitting on top of it.  This is all on the same
box.  I get lots of traffic - roughly 10,000 to 20,000 hits a day and it
barely breaks a sweat.  Since the ISAPI module for PHP is not stable on
Windows (I tried putting it into production and it craaaaaaaaashed hard) I
am running just the standard PHP.exe file.  I am also running MySql for the
backend.

I originally started having problems on one of my threads where a large
number of people had "subscribed" and when a post was added, they would all
be emailed.  Well, after about 30 seconds my script would time out.  I was
sending the email messages to a second box - running Argosoft mail server -
via a 10/100 connection - and the mail server was sloooooow, which was
causing the problems.  I could sit and watch the mail server try and send
the messages out one at a time.  Well, it would send about one per second,
and did not appear to be storing the incoming ones in a buffer of any type.
So they would obviously overwhelm my crappy mail server software (it cost
like $40.)

As an emergency measure, I purchased the "full version" of the program and
got ready to upgrade the mail server software.  While I was preparing to do
that, I temporarily set up the Windows SMTP mail server so my board would
not completely go down (at this time only one thread was having problems.)
When I did that, I tested the board to be sure it worked, and I decided to
test that thread, and - get this - the problems ceased.  So I watched and
tested it for a while and found that where the Argosoft mail server had been
causing the scripts to time out after 30 seconds (and, coincidentally, the
users had to wait on a page that said "Thanks for posting, please wait while
you are taken back to the thread" which was really a cover for "Hold on
while I email everybody!") the IIS server was done in less than a second.
So suddenly users no longer had to wait more than a fraction of a second
between posting and being returned to the thread.  Previously it had been
anywhere from 3 to 30 seconds of waiting.  So that was a phenomenal
improvement.

I never bothered to do anything with the Argosoft server, I just kept using
the IIS SMTP server, and to this day I have no problems.  I probably get
upwards of 500 - 750 posts per day, and each of those *probably* has
anywhere from 10-200 people "subscribed."

----------

Here's the steps I took to install the SMTP server:

Start Menu - Settings - Control Panel - Add/Remove Programs - Add/Remove
Windows Components - Click Internet Information Services so it's
highlighted, then click the Details button - Check SMTP service - click
okay.

After it does it's thing, then I opened the Internet Services Manager (Start
Menu - Programs - Administrative Tools - Internet Services Manager) and
configured the SMTP server as follows (roughly, you'll probably be slightly
different depending on your setup)

Right-click the "Default SMTP server" and select Properties - then in the
following tabs the following settings were selected:

GENERAL:
Connection - I un-checked the incoming connection limit
Enabled logging (I log everything)

ACCESS:
Connection: Only the list below - 127.0.0.1 and 10.0.0.2 (basically, just
the localhost)
Relay - only the list below - 127.0.0.1 and 10.0.0.2

MESSAGES:
No Limits
Copy messages to me

DELIVERY:
Advanced -
    Masquerade domain = mail.rs25.com
    Fully qualified domain name = rs25.com
    (I may have these backwards, I am looking at a different server right
now, so you might have to "flip" these)

A word of caution - in the ISM you'll be able to view the "domains"
associated with the mail server.  Don't change them!  I found that when I
was playing around and modified one, or added one, SMTP stopped working.  I
have no idea why, so I put everything back and deleted my additions.

So, yes, I would recommend you play with that W2K/PHP/IIS box.  If it's a
clean install, I can't see why you'd have any problems.  Everything worked
smoothly for me - in fact it was beyond smooth.  Of course, I am not
actually doing any programming with PHP (I just bought the software) but
from my research on vBulletin.com they are using the mail() function, as I
was not the only person having problems.

Hope that helps.  Let me know if you have any other questions.

Thanks,


James F

----- Original Message -----
From: "DL Neil" <[EMAIL PROTECTED]>
To: "James F" <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Sent: Wednesday, March 06, 2002 4:08 AM
Subject: Re: [PHP-WIN] mail() function EXTREMELY slow


> James,
>
> > I personally found that messages were slow on my machine (going to an
> > external mail server) and I discovered that if you can use the
> built-in IIS
> > (Windows) SMTP mail server you'll have no more problems.  The built-in
> IIS
> > SMTP server was easily 1000 times faster in my case.  Of course, if
> you
> > don't have it installed, you may have to install and configure it, but
> it's
> > very simple.  Start menu - settings - control panel - add/remove
> programs -
> > add windows components - Internet - default SMTP server - check the
> box.
> > (Basically)
>
> What you say makes perfect sense, but my experience under NT (and as for
> others) has been the exact opposite - that the IIS SMTP stub is more
> trouble than it's worth. Obviously you're a better man than I, Gunga
> Din!
>
> Would you please share some more detail about your set up?
> - anything notable about the h/w
> - which vn of Windows and which IIS
> - I assume you're web/PHP serving through IIS
> - is the IIS on the same box as you are using as client/IE?
>
> On the basis of your experience, I wonder if I should schedule some
> 'play time' on a Win2000/IIS/PHP box I've just put together (while I
> still can/before it is moved into 'production')?
>
> > Be sure you don't allow external access (preferably block all inbound
> > connections at your firewall) or use an IP address restriction of
> 127.0.0.1
> > to prevent relaying.
>
> Imperative, not advice!
>
> Please advise,
> =dn
>
>



-- 
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to