[Mono-aspnet-list] Using MemcachedProviders in mono causes webserver to crash after a few hours

David Benson dbenson at tunewiki.com
Thu Nov 11 14:05:45 EST 2010


Hello everyone,

Does anyone have any experience getting memcachedproveders (
http://memcachedproviders.codeplex.com/) using Enyim.Memcached to access
memcached, to work reliably in mono? we've used it across five windows
servers in .net without any issues so far.

I ported over a .net 4.0 website to mono (Ubuntu 10.10, Mono 2.8), and it
runs correctly and pulls sessions from an external server running memcached,
but inexplicably, every couple hours or so, the website crashes, and just
returns a 500 error saying "The socket is not connected" This only happens
when memcached session state is enabled.

Does anyone know at least where I should begin looking? While i'm familiar
with linux and apache, I'm generally  more comfortable with windows so there
may be some configuration I'm missing.

As far as i can tell, this is the log from apache from the time the error,
even with debugging enabled from mod_mono:

[Tue Nov 09 17:53:17 2010] [notice] caught SIGTERM, shutting down
[Tue Nov 09 17:53:19 2010] [notice] Apache/2.2.14 (Ubuntu) mod_mono/2.8
configured -- resuming normal operations
Listening on: /tmp/mod_mono_server_global
Root directory: /
Listening on: /tmp/mod_mono_server_global
Root directory: /
Error: There's already a server listening on /tmp/mod_mono_server_global
mod-mono-server4
mod-mono-server4
Listening on: /tmp/mod_mono_server_www.tunewiki.com
Root directory: /srv/www/tunewiki.com
[Tue Nov 09 17:53:58 2010] [error] (104)Connection reset by peer: read_data
failed
[Tue Nov 09 17:53:58 2010] [error] Command stream corrupted, last command
was -1

The general memcached configuration in web.config is something like:

    <enyim.com>
        <memcached>
            <servers>
                <add address="##.##.##.##" port="11211"/>
            </servers>
            <socketPool minPoolSize="10" maxPoolSize="100"
connectionTimeout="00:00:10" deadTimeout="00:02:00"/>
        </memcached>
    </enyim.com>
...
<sessionState cookieless="false" regenerateExpiredSessionId="true"
mode="Custom" customProvider="MemcachedSessionProvider">
            <providers>
                <add name="MemcachedSessionProvider"
type="MemcachedProviders.Session.SessionStateProvider,MemcachedProviders"
dbType="none" writeExceptionsToEventLog="true"/>
            </providers>
        </sessionState>


Thanks,
David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-aspnet-list/attachments/20101111/047dff6b/attachment.html 


More information about the Mono-aspnet-list mailing list