为什么保存会话在数据库中是很好的保存?
2022-08-30 09:55:29
我已经看到codeigniter具有将会话值保存在数据库中的工具。
它说在数据库中保存会话是很好的安全实践。
但我认为将会话信息保存在数据库中有助于提高性能。
它们仅保存会话的几个元素,例如:
CREATE TABLE IF NOT EXISTS 'ci_sessions' (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(50) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text NOT NULL,
PRIMARY KEY (session_id)
);
但是,如果站点使用更多的会话变量,例如用户名,上次登录时间等,我可以将它们保存在数据库中并在程序中使用它们。
我是否必须将这些列添加到同一个表中?我认为将会话信息保存在数据库中只会减少Web服务器的内存使用量(RAM)。任何人都可以解释它在什么意义上提高了安全性。