首页 >公司新闻

有关session的常见问题

发布时间:2013-08-30     发布者:本地    

session 不依赖 cookie,使用 cookie 是为了保存 sessionId,把 sessionId 附在url、或者放在表单中,请求时,服务器也能得到 sessionId,不过使用 cookie 会方便的多。

session 的数据能放在很多地方,文件、数据库、缓存,等等,只要能持久化就行,PHP 默认采用文件方式保存 session 的数据是因为实现简单、所有环境都支持,能演示出效果。

PHP 内置的 session 机制,是使用内置的 session 系列函数,并将 session 数据保存到文件中。大流量的网站,如果 web 服务器大于一台,这种机制就有问题。

假设有 A B 两台 web 服务器,用户的请求会随机分发到这两台上,某用户请求登录时,在 A 上创建了 session 数据文件,但下一次请求被分配到 B,B 上面没有对应 session 数据文件,于是程序判断用户没有登录,于是用户认为网站出错。当然有补救的方案,同步 session 数据文件,但这复杂化了,简单的方案,应该是自己去实现 session 机制,将 session 数据保存到数据库等地方。至于数据库、数据表压力会不会太大,需要分散压力,是另一个话题。

上一篇:学习php框架的一些建议 下一篇:后台技术人员应该有良好的沟通习惯

相关新闻