41 lines
1.4 KiB
Markdown
41 lines
1.4 KiB
Markdown
cassandra-sessions
|
|
==================
|
|
|
|
This is a session backend for Django that stores sessions in Cassandra
|
|
|
|
The advantage to using this over other solutions is that your data is persistent
|
|
unlike memcached, and Cassandra is designed to store key-value data like
|
|
this, so performance is much closer to that of memcached than with a database.
|
|
|
|
Note: This work was initially based off of [tokyo-tyrant-sessions](http://github.com/ericflo/django-tokyo-sessions) by Eric Flo.
|
|
|
|
Dependencies
|
|
------------
|
|
* [Lazyboy](http://github.com/ieure/lazyboy/) * Use Ian Eure's version as it supports 0.6.1 of Cassandra
|
|
|
|
Installing cassandra-sessions
|
|
-----------------------------
|
|
|
|
1. Either download the tarball and run 'python setup.py install', or simply
|
|
use easy install or pip like so 'easy_install cassandra-sessions'.
|
|
|
|
|
|
2. Set 'cassandra-sessions' as your session engine, like so:
|
|
|
|
SESSION_ENGINE = 'cassandra-sessions'
|
|
|
|
|
|
3. Add settings describing where to connect to Cassandra:
|
|
|
|
CASSANDRA_POOL = ('127.0.0.1:9160',)
|
|
CASSANDRA_SESSION_KEYSPACE = 'Testing'
|
|
|
|
|
|
4. Create the Keyspace and Column Family in Cassandra:
|
|
|
|
<Keyspace Name="Testing">
|
|
<ColumnFamily Name="Sessions" CompareWith="UTF8Type"/>
|
|
<ReplicaPlacementStrategy>org.apache.cassandra.locator.RackUnawareStrategy</ReplicaPlacementStrategy>
|
|
<ReplicationFactor>1</ReplicationFactor>
|
|
<EndPointSnitch>org.apache.cassandra.locator.EndPointSnitch</EndPointSnitch>
|
|
</Keyspace> |