Re: serving very large files from allegroserve
John Foderaro <[email protected]> Thu, 03 May 2007 17:42:07 +0700
| Newsgroups | gmane.lisp.web |
|---|---|
| Message-ID | <[email protected]> |
> In Acl 6.1 we added the capability of having each I/O operation to > a socket stream time out. This means that we don't have to > predict how long it should take to get a request or send a > response. As long as we're making progress reading or writing we > know that the client on the other end of the network connection is > alive and well. > > Fine words. But totally contradicted by having a response-timeout slot > in the server. > I wouldn't call it a contradiction at all. Suppose you have some people trying to attack your web site by making requests and very very slowly reading the response. If you just let them do this then they can tie up a lot of server resources for a long time. So allegroserve offers a global timeout for the whole request (which defaults to 300 seconds if you're also doing timeout on each I/O). If you know you'll be sending things that could take a long long time then feel free to change the 300 to a huge value. You're still protected by the timeout on I/O which will ensure that some progress gets made ever N seconds (default 120). -john foderaro