Support for different database backends
Right now, FeoBlog uses an SQLite database. This simplifies maintenance, and should scale enough for individual use, or use among a small group of friends. But SQLite does have limitations with high write loads.
Currently, database operations are all abstracted through the Backend type. It should be easy to add a new implementation, but I'd need to plan for a few things.
- Do I want to maintain multiple backends?
- If not, how do I allow backend implementations to be maintained by others without requiring lock-step development?
- Config file support so database passwords don't need to be specified as command-line arguments. (Which is also good to have in general, I suppose.)
In the meantime, one method for gaining better write concurrency may be to enable write-ahead-logging in your SQLite database.
In the meantime, one method for gaining better write concurrency may be to enable write-ahead-logging in your SQLite database.
This was such a performance gain it's going to be the default in the next release. (It's already in the develop branch, via 6d20a809d29c595e82098f8e8c2b09b3932029dd)