django的redis会话后端

django-redis-sessions-fork的Python项目详细描述


info:Redis Session Backend For Django
https://img.shields.io/travis/hellysmile/django-redis-sessions-fork.svghttps://img.shields.io/coveralls/hellysmile/django-redis-sessions-fork.svghttps://img.shields.io/pypi/dm/django-redis-sessions-fork.svghttps://img.shields.io/pypi/v/django-redis-sessions-fork.svg

功能

  • 快速NoSQL Django会话后端
  • 通过TTL
  • django.contrib.sessions
  • 轻松迁移
  • 最快的会话序列化程序
  • 向后迁移到django.contrib.sessions

安装

运行pip install django-redis-sessions-fork

或者下载tarball并运行python setup.py install

redis_sessions_fork.session设置为会话引擎,就像这样

SESSION_ENGINE='redis_sessions_fork.session'

配置

# all these options are defaults, you can skip anyoneSESSION_REDIS_HOST='127.0.0.1'SESSION_REDIS_PORT=6379SESSION_REDIS_DB=0SESSION_REDIS_PASSWORD=NoneSESSION_REDIS_PREFIX=None# if you prefer domain socket connection# you can just add this line instead of SESSION_REDIS_HOST and SESSION_REDIS_PORTSESSION_REDIS_UNIX_DOMAIN_SOCKET_PATH='/var/run/redis/redis.sock'# you can also use redis from urlSESSION_REDIS_URL='redis://127.0.0.1:6379/0'# also available setup connection via redis.ConnectionPool likeSESSION_REDIS_CONNECTION_POOL='random.app.redis_connection_pool'

如果你是一个快乐的heroku.com用户

您完全可以跳过redis配置

django-redis-sessions-fork已经为redis云设置了前缀

序列化程序的

django>;=1.5.3supports不同的会话序列化程序,例如django.contrib.sessions.serializers.PickleSerializerdjango.contrib.sessions.serializers.JSONSerializer

另外,您可以使用ujson序列化程序,它比默认值更快

pip install ujson

然后

SESSION_SERIALIZER='redis_sessions_fork.serializers.UjsonSerializer'

此外,还可以配置ujson编码,如

SESSION_REDIS_JSON_ENCODING='utf8'# default is 'latin-1'

会话迁移

redis_sessions_fork添加到INSTALLED_APPS

# copy orm sessions to redis
python manage.py migrate_sessions_to_redis
# copy redis sessions to orm
python manage.py migrate_sessions_to_orm
# flush redis sessions
python manage.py flush_redis_sessions
# flush orm sessions
python manage.py flush_orm_sessions

测试

pip install tox
tox

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在一个问题被连续正确回答三次/并添加差异后,我如何将程序循环回开始   Java中未实例化的匿名类   java如何在Android中录制视频,只允许横向模式和最长时间录制时间   java从另一个活动发送实时消息   多线程java线程和互斥   java禁用Spring安全日志   JAVA伊奥。StreamCorruptedException:在与子级和父级ProcessBuilder通信时写入子级中的标准输出时,流头无效   使用Java(HttpURLConnection)对Restheart进行身份验证(对于Mongodb)   java如何解决Jenkins中的SAXParseException?   java为什么我需要mockito来测试Spring应用程序?   计算sin-cos和tan时缺乏精度(java)   java Hibernate。不同项目中相同一对一映射的不同行为   java图像滑块:如何使用JavaFX将图像放在另一个图像上   java Mockito在使用when时抛出NotAMockException   http Java servlet发送回响应