88689c789a
* add a wrapper around `sqlite3` to enable connection pooling across multiple threads. Most tests now use a in-memory database which speeds things (slightly) up. The database wrapper is now uncoupled from the actual database connection. * split cache framework from core.Mixin into a separate package `isso.cache`. The dependency on `werkzeug.contrib` has been removed to ease a possible transition to a different web framework later. The default cache uses SQLite3 now (unless Isso is run from uWSGI). While it may sound like a Bad Idea (tm), it's much more efficient than per-process python datastructures. The SQLite3 cache is SMP-capable and fast for read-heavy sites. SQLite3 may fail due to a corrupt database for concurrent read access from multiple processes. The database is actually not corrupted, but the connection is stale. As a workaround, limit process number to your CPU count or wait until a "real" backend such as PostgreSQL is available. |
||
---|---|---|
.. | ||
isso.conf |