I want to use mod_wsgi 3.1 /Apache 2.2 on a Linux machine to serve
static files with the sendfile() system call.
I've successfuly installed mod_xsendfile into apache and tested it in
embedded mode.
My next step is to use it in daemon mode.

However, I see in the mod_wsgi.c source attached that sendfile() with
mod_wsgi is not supported for daemon mode
http://code.google.com/p/modwsgi/source/browse/trunk/mod_wsgi/mod_wsgi.c?spec=svn1546&r=1546
line 3658
    /*
     * On some platforms, such as Linux, sendfile() system call
     * will not work on UNIX sockets. Thus when using daemon mode
     * cannot enable that feature.
     */

    if (!wsgi_daemon_pool)
        apr_os_file_put(&tmpfile, &fd, APR_SENDFILE_ENABLED, self->r-
>pool);
    else
        apr_os_file_put(&tmpfile, &fd, 0, self->r->pool);

I tried using it anyway in daemon mode jsut to see what happens.
I ran a simple sendfile test for  large files (100MB) to a remote
machine, both in embedded and daemon mode, and the results were very
similar, indicating that the sendfile() sub-system actually worked in
daemon mode.
Obviuosly I ran tests beforehand for sending these files without using
sendfiles() that resulted in siginifacntly slower transfer rates. So I
think I can rule out the option of sendfile() not functioning at all
for some reason.

I should also mention that when running in daemon mode I switched on
the WSGIRestrictEmbedded directive in my httpd.conf file, and also
flushed all filesystem caches before every test, just in case.

Does anyone have any idea how to find out whether sendfile() is
actually working,
or verify that sendfile() indeed does NOT work in deamon mode, and
provide some alternative explanation for my results?

-- 
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/modwsgi?hl=en.

Reply via email to