在Tomat7上使用Redis保存Session
當用戶量大、應用服務器使用集群來布署時,使用Tomcat默認自帶的Session就不能滿足需求了。當然解決方法有很多,本文提供了一個解決方案,就是使用Redis來保存Session,好處就是使用Session的代碼沒有任何變化,Tomcat默認把 Session保存到Redis上面了。
使用 Redis 服務器來存儲Session非常有優勢。首先它是一個NOSQL數據,第二它很容易擴展使用。
下面這種安裝方式非常清晰明白的引導你把Redis緩存作為一個Session的存儲系統。步驟如下:
1. 下載Redis并且使用下面的命令編譯安裝:
wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable make
2. 使用如下命令啟動Redis
cd RedisDirectory/src ./redis-server --port 6379
3. 下載最新的Tomcat 7
4. 下載最新的Jedis(一個Redis 的Java客戶端),Tomcat Redis Session Manager 和 Apache Commons Pool
5. 將上面所有的Jar包都拷到Tomcat7安裝目錄下面的Lib目錄下
6. 在Tomcat 的conf/context.xml 文件里增加如下內容(或者在server.xml的context塊中添加):
<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" /> <Manager className="com.radiadesign.catalina.session.RedisSessionManager" host="localhost" <!-- 可選,默認是"localhost" --> port="6379" <!-- 可選,默認是 "6379" --> database="0" <!-- 可選,默認是 "0" --> maxInactiveInterval="60" <!-- 可選,默認是 "60" (單位:秒)--> />
7. 重啟Tomcat7,你現你可以看到,Session的內容開始在Redis中創建了。
現在,Tomcat7的Session就保存到Redis中了,而且它也維護著Session的不同方面。
各個組件的下載地址:
Redis:http://redis.io/ JRedis: https://github.com/xetorthio/jedis Tomcat Redis Session Manager :https://github.com/jcoleman/tomcat-redis-session-manager/downloads Apache Commons Pool :http://commons.apache.org/proper/commons-pool/download_pool.cgi來自:http://my.oschina.net/gccr/blog/321083
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!