麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

在ofbiz集群中使用redis共享session

2019-11-11 06:26:24
字體:
來源:轉載
供稿:網友

最開始的想法是使用session監聽器,在session創建時,根據sessionid為鍵,map為值,加入redis中.,在session銷毀時刪除此sessionid.

包裝session,重寫session中的方法來設置值和取得值.

包裝request,將包裝的session作為包裝request的session.

結果在實現時,發現每次創建session時id都不同而且控制不了,這樣的話一臺服務器死掉,切換到另一臺服務器的時候

原來存在redis中的數據得不到.

后面又想覆蓋掉jsessionid,沒成功.只能創建了一個rsessionid來做,在過濾器中根據此鍵來存入redis,

由于關閉ofbiz時,session銷毀沒有執行,只能設置存活時間.

由于有多個組件要使用此功能那么在初始化連接時初始一次就行了.

不過目前為止還沒有上線,不知道這樣有沒有問題.

主要代碼:

public void init(FilterConfig arg0) throws ServletException {		if (redisClient == null) {			synchronized (RedisFilter.class) {				if (redisClient == null) {					redisClient = RedisClient.getRedisClient();				}			}		}	}	//當關閉服務器時session銷毀沒有觸發session監聽器	PRivate void setRedisAttribute(String id) {		Jedis redis = null;		try {			redis = redisClient.getJedis();			Object redisValue = redis.get(UtilObject.getBytes(id));			if (redisValue == null) {				synchronized (RedisFilter.class) {					if (redisValue == null) {						redis.set(UtilObject.getBytes(id), UtilObject.getBytes(new HashMap<String, Object>()));						redis.expire(UtilObject.getBytes(id), 86400);					}				}			}		} catch (Exception e) {			e.printStackTrace();		} finally {			redisClient.returnJedis(redis);		}	}
HttpServletRequest request = (HttpServletRequest) arg0;		HttpServletResponse response = (HttpServletResponse) arg1;		Cookie[] cookies = request.getCookies();		String sessionId = "", cookiePath = "";		int maxAge = -1;		if (cookies != null) {			for (Cookie c : cookies) {				if (c.getName().equals("RSESSIONID")) {					sessionId = c.getValue();					cookiePath = c.getPath();					maxAge = c.getMaxAge();				}			}		}		HttpSession session = request.getSession();		sessionId = UtilValidate.isEmpty(sessionId) ? session.getId() : sessionId;		cookiePath = "/";		session.setAttribute("redisSessionId", sessionId);		Cookie c1 = new Cookie("RSESSIONID", sessionId);		c1.setPath(cookiePath);		response.addCookie(c1); 		arg2.doFilter(request, response);


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 99在线热视频 | 欧美a一 | 亚洲综合一区在线观看 | 极品xxxx欧美一区二区 | 国产寡妇xxxxxxxx性开放 | 欧美日比视频 | 日本人乱人乱亲乱色视频观看 | 成人免费久久网 | 91精品国产一区二区在线观看 | 一级做a爱片毛片免费 | 一级免费特黄视频 | 91 免费视频 | 素人视频免费观看 | 日本残忍极度灌浣肠视频 | 国产做爰全免费的视频黑人 | 亚洲欧洲日产v特级毛片 | 91精品国产综合久久婷婷香蕉 | 宅男噜噜噜66一区二区 | 在线成人免费观看www | 亚洲人成在线播放网站 | 欧美一级性 | 国产精品久久久久久久久久东京 | 精品一区二区电影 | 国产亚洲精品久久久久久久久久 | 护士xxxx | 国产一级毛片国语版 | 黄色毛片免费看 | 日韩在线毛片 | 精品久久久久久久久久久久久久 | 国产99视频精品免视看9 | 国产va在线观看 | 亚洲午夜激情网 | 久久久久久久久久久久久国产精品 | 久久国产精品影视 | 免费激情网址 | 久久久久久久久国产 | 欧美a视频在线观看 | 自拍偷拍999| 91精品国产91久久久久久 | 欧美顶级毛片在线播放小说 | 久久9色|