1. 程式人生 > >Ubuntu上使用Redis數據庫存儲SessionID並實現Session共享

Ubuntu上使用Redis數據庫存儲SessionID並實現Session共享

del sudo session共享 www. ins start data exp ssp

Ubuntu上使用Redis數據庫存儲SessionID並實現Session共享

第一部分:安裝及配置Redis 數據庫

安裝Redis database server. 參見:http://grainier.net/how-to-install-redis-in-ubuntu/

Redis官網: https://redis.io/

$ wget http://download.redis.io/releases/redis-3.2.8.tar.gz

$ tar xzf redis-3.2.8.tar.gz

$ cd redis-3.2.8

$ make

$ make test

$ cat /sys/kernel/mm/transparent_hugepage/enabled //顯示當前

THP啟用狀況

$ sudo su 切換到root 然後 # echo never > /sys/kernel/mm/transparent_hugepage/enabled 切換THP狀態。可以 add it to your /etc/rc.local in order to retain the setting after a reboot.

$ sudo make install //將編譯好的可執行文件復制到合適的地方以完成安裝。



redis 主要文件作用如下:

redis-serverRedis服務器的daemon啟動程序

redis-cliRedis命令行操作工具。當然,你也可以用

telnet根據其純文本協議來操作

redis-benchmarkRedis性能測試工具,測試Redis在你的系統及你的配置下的讀寫性能

redis-statRedis狀態檢測工具,可以檢測Redis當前狀態參數及延遲狀況

使用幫助:

$ cd utils

$ sudo ./install_server.sh

設置相應參數 (可將默認的port 6379 改為其他值,比如 6535).

Port : 6535

Config file : /etc/redis/6535.conf

Log file : /var/log/redis_6535.log

Data dir : /var/lib/redis/6535

Executable : /usr/local/bin/redis-server

Cli Executable : /usr/local/bin/redis-cli



命令使用:



$ sudo service redis_6535 start

$ sudo service redis_6535 stop

$ sudo service redis_6535 restart

$ redis-server --help



通過客戶端連接Redis服務器:

$ redis-cli -p 6535 //登錄

$ select 1 //選擇數據庫

$ keys * //列出所有Key

$ get KEY_NAME //獲取值

Redius 安全設置: https://www.digitalocean.com/community/tutorials/how-to-secure-your-redis-installation-on-ubuntu-14-04



第二部分:網站代碼(放在服務器端主文件www.js裏面)

var session = require(‘express-session‘),

RedisStore = require(‘connect-redis‘)(session), //使用Redis 數據庫存儲session信息

redis = require("redis"), //使用Radis客戶端node_redis



//================設置Redis 數據庫存儲共享session==================

rsclient = redis.createClient({ //創建redis客戶端實例

host: ‘127.0.0.1‘,

port: 6535,

db:1});



// ==============設置 session (此條應放在passport之前)==============

var sessionMiddleware = session({

store: new RedisStore({client: rsclient}), //設置將session存儲在Redis數據庫裏面

secret: ‘putyoursecrethere‘, //加密字符串,‘putyoursecrethere‘可改為別的字符串

resave: true,

saveUninitialized: true

});

Ubuntu上使用Redis數據庫存儲SessionID並實現Session共享