/connect-session-knex

A knex.js session store for express-session, supporting PostgreSQL, MySQL, MariaDB, Oracle and SQLite.

Primary LanguageJavaScriptISC LicenseISC

Connect Session Knex

NPM Version NPM Downloads Node.js Version Build Status Dependency Status Coverage Status

NPM

connect-session-knex is an express-session store backed by Postgres, MySQL, MariaDB or SQLite3, via the knex.js library.

Installation

$ npm install connect-session-knex

Usage

Example application using the defaults

Example application with PostgreSQL

With Express 3 or Connect

Options

  • tablename='sessions' Tablename to use. Defaults to 'sessions'.
  • knex knex instance to use. Defaults to a new knex instance, using sqlite3 with a file named 'connect-session-knex.sqlite'
  • clearInterval milliseconds between clearing expired sessions. Defaults to 60000.

If the table does not exist in the schema, this module will attempt to create it.

If a knex instance is not provided, this module will attempt to create a sqlite3 database, with a file named 'connect-session-knex.sqlite', in the working directory of the process.

This module does not create any indexes. You should create an index on the 'expired' column to make the session clearing efficient.

Benchmarks

https://github.com/llambda/express-session-benchmarks