httpd-modules-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sorin Manolache <sor...@gmail.com>
Subject Re: Closing KeepAlive connection - for "server push"
Date Fri, 21 Aug 2009 09:37:11 GMT
On Fri, Aug 21, 2009 at 11:28, Alexander
Farber<alexander.farber@gmail.com> wrote:
> Hello,
>
> I have a multiplayer flash game talking to an Apache module
> (and the module in turn talks over a Unix pipe to the backend-daemon).
> It works ok, but is naturally a bit sluggish because updates
> are being polled by the flash client every 20 seconds.
>
> I'd like to rewrite my application, so that a HTTP request
> hangs if there is no new information and returns later -
> when new infos from other players arrive at the server.
>
> http://code.google.com/p/google-web-toolkit-incubator/wiki/ServerPushFAQ
> recommends to close the KeepAlive connection
> when returning the new information to the browser.
>
> How can I forcibly close the KeepAlive connection from my module please?
>
> Currently I open connection to the Unix pipe in
> the child init phase and then in the handler phase
> I read the GET or POST request, write to the pipe,
> read back from the pipe and write to the browser:
>
>        ap_set_content_length(r, len);
>        ap_send_http_header(r);
>
>        if (len != ap_rwrite(buf, len, r)) {
>                ap_log_rerror(APLOG_MARK, APLOG_ERR, r,
>                    "ap_rwrite (%u bytes) failed", len);
>                return HTTP_INTERNAL_SERVER_ERROR;
>        }
>
>        return OK;
>
> Thank you for any ideas
> Alex
>
> PS: I'm using Apache 1.3.29 on OpenBSD 4.5 with
>     "KeepAlive On" and "KeepAliveTimeout 300"

I have not tried it, but try

r->connection->keepalive = AP_CONN_CLOSE;

S


-- 
A: Because it reverses the logical flow of conversation.
Q: Why is top-posting frowned upon?
A: Top-posting.
Q: What is the most annoying thing in e-mail?

Mime
View raw message