Just wanted to warn others on this. Using redis as the session store via `pyramid_redis_sessions` and `pyramid_beaker` (via beaker_extensions) are both incredibly flawed. Moderate amounts of traffic can cause issues by sending lots of unnecessary traffic to Redis.
What's wrong? pyramid_beaker * stores the timeout data in the session value, so the session is re-written on every request (regardless of modification) * [possibly not an issue] implements each session as it's own beaker namespace (based on the session_id), using locking on the 'session' attribute of the namespace. reversing the key + namespace, seems to only make things really confusing to manage, but there could be other implications. pyramid_redis_session * this stores the session timeout data in redis (great). it emits a GET once but it sets a new TTL on every attribute access AND rewrites the session on every attribute write. There are some other odd behaviors, but they're not as bad as these 2. I don't think the redis support for beaker is easily fixable or worth fixing. I've got a PR submitted to pyramid_redis_session that fixes this behavior (it only sets a single TTL/write per request) -- You received this message because you are subscribed to the Google Groups "pylons-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to pylons-discuss+unsubscr...@googlegroups.com. To post to this group, send email to pylons-discuss@googlegroups.com. Visit this group at http://groups.google.com/group/pylons-discuss. For more options, visit https://groups.google.com/d/optout.