在PHP中维护会话的长篇大论

时间:2014-02-18 18:49:12

标签: php mysql facebook session

我已经看到很多问题,说明在db或mem cache中保存会话的优点和缺点。 stil都有问题,mem-cache不是持久的,如果你在DB中保存可能是性能问题的会话。(从db检索信息是一项繁琐的工作)。如果我有像facebook这样的应用程序应该是我的偏好怎么办?

2 - 如果我使用数据库选项,这是架构,但这将如何帮助我考虑我的用户可以使用不同的IP地址从任何位置登录。

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)
);

3-最后但并非最不重要的是像Facebook这样的大巨头Google如何保存用户数据?

4-任何可以帮助管理的PHP库,而不是传统的会话处理。 如果不是这将是我工作的热门机会。

1 个答案:

答案 0 :(得分:1)

要获得内存缓存速度的好处,并选择近乎实时地备份到持久性存储,请尝试使用REDIS:

您可以使用像MySQL这样的数据库作为持久存储,并且每隔一秒左右就有一次REDIS备份......

一些提供帮助的链接: