2012-11-19 33 views
1

我想知道哪些可能是與使用session_matching用戶IP相關的主要問題?Codeigniter會話匹配IP

我理解這會使會話表小一點,因爲如果找到IP會話是從同一個數據庫字段重新生成,或者我錯了?

我的dubt是在現場有很多用戶,這會產生許多會話表字段,而沒有將ip匹配參數設置爲TRUE,原因是,如果會話不匹配用戶ip,則新的db字段用於用戶會話,這是真的?

這是爲了顯示我想我學到了會議db表的例子:

$config['session_match_ip'] = false; 

3000000 users on site = 3000000 session db records. 
3000000 users returns on site = 6000000 session db records. (cause everytime user is a NEW USER) 

$config['session_match_ip'] = true; 

3000000 users on site = 3000000 session db records. 
3000000 users returns on site = 4500000 session db records. (cause ,maybe, 1500 users uses static IP) 

是這個邏輯嗎?

謝謝。

+0

你面臨什麼問題? – itachi

+0

沒有問題,我想知道如果sess匹配用戶ip會產生一個更小的數據庫會話表 – sbaaaang

+1

如果性能是你所指的,那麼6000記錄是什麼。我不知道codeigniter會話表是如何工作的,但是,必須有一個垃圾收集器。即使它不存在,你也可以使用cron作業。這只是它應該如何。現在將深入到codeigniter會話類,並讓我們看看它給了什麼。 – itachi

回答

2

當然,你會在你的數據庫的詳細記錄,如果您選擇使用$config['session_match_ip']設置爲false。但是,如果您檢查codeigniter documentation,您會看到codeigniter會在過期的會話上進行垃圾回收,這會使您的操作受到控制。

「注意:會話類具有內置的垃圾收集它清除 了過期會話,所以你不需要編寫自己的程序來 做到這一點。」