Awesome
restbase-mod-table-sqlite
An SQLite3 back-end module for RESTBase conforming to the RESTBase storage specification.
Installation
Firstly, install RESTBase. The SQLite back-end module should be pulled in
automatically as a dependency. If you cannot find restbase-mod-table-sqlite
in
RESTBase's node_modules/
directory, install it using:
npm install restbase-mod-table-sqlite
Note: in order to successfully install the module, you are going to need the SQLite3 development headers.
Configuration
RESTBase comes pre-configured to use Cassandra as its back-end storage. In order
to select SQLite, RESTBase's table
module in the configuration
file
needs to be instructed to use this module; simply replace
restbase-mod-table-cassandra
with restbase-mod-table-sqlite
. The table that
follows lists the configuration options accepted by this module.
Option | Default | Description |
---|---|---|
dbname | restbase | The path to the database file |
pool_idle_timeout | 10000 | The amount of milliseconds a connection to the database is kept open during idle periods |
retry_delay | 100 | The amount of time (in ms) to wait before retrying queries when the database is locked |
retry_limit | 5 | The maximum number of times a query is retried |
show_sql | false | Whether to log queries being executed; for debugging purposes only |
All of the configuration directives are optional. Here's an example of the
table
module using the SQLite back-end module:
/{module:table}:
x-modules:
- name: restbase-mod-table-sqlite
version: 1.0.0
type: npm
options:
conf:
dbname: /var/lib/restbase/db.sqlite3
pool_idle_timeout: 20000
retry_delay: 250
retry_limit: 10
show_sql: false