关于SNS网站的个性化信息如何存储和调用? COOKIE+数据库,或者,对每个用户生成缓存文件, 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 全部信息 存储为一个xml文件 把全部信息存入Session明显不划算,如果不是经常调用的话没必要放Session里面。个性化信息一般是和用户有关联的数据,完全可以一次读取,如果要大量依次访问明显是数据库设计不合理,或者查询不合理。如果嫌每次读取DB压力大,可以为用户创建一个信息缓存。 看你要读这些个性化信息的频率吧,如果读的次数不是很多,就每次用的时候直接读数据库显示就OK了.如果用的频繁的话,还是建议为每个用户生成一个静态的html,当用户修改的时候,更新那个html页面. 把一些重要的资料放入数据库(少量的)。一些不经常更改的资料放入一个静态的HTML文件,像楼上的方案。 可以考虑放入 session,不过不能使用默认的文件存储的 session。可以考虑用缓存服务器,如 memcache 等。或者直接在数据库和web服务器之间加多一个 cache 层。Q-zone 的做法,据可靠消息,是他们的 C 程序员写了一个带 sql 查询的 cache 层加在数据库和前端脚本中间。很变态,不是么? 楼主说的个性化信息有哪些?如果是少量信息(用户名,用户id,用户角色),可以用session存数据库或内存表 其实你存个性化信息存session太多也没有,你很少用到它!主要看个性化信息的使用时机我开发的网站借鉴了CSDN的通行证机制,对于session:最基本的只存通行证名和角色名,需要时,再根据这个通行证名取其他信息 用户的信息不可能在每个页面都需要全部显示吧?session中只存用户id这个放在session而不存在cookie中是为了防止用户修改cookie而造成cookie欺骗。cookie中存姓名,年龄等等要经常显示的并且不是很重要的信息...到了需要显示用户全部信息的页面时,再用id去数据库查出来全部显示,平时直接读cookie中的那些信息来存储就可以了。session和cookie要交差着用,发挥它们各自的长处。上面是针对全动态页面而说的。其实这个你是可以做缓存的,把需要显示用户全部信息或需要显示很多信息的页面生成html页面,当用户修改个人信息时,再重新生成html。平时浏览时都是直接加载那个html页面。存成xml我觉得没必要,xml文件你不还是要去读去解析它吗?当然,针对每个用户存一个xml,只读此用户的xml文件检索的数据量确实比数据库检索稍多了,效率也高多了。不过最简单最快速的办法还是直接存成html。 上一帖回的太不厚道了 俺改正看过楼上的回帖 就一个问题 太极端 SESSION CACHE SQL 这3个缺一不可 根本无可能只用某一个前提是 分析数据 要搞清楚 什么东西 每次都用 很多使用 集中使用 偶尔使用搞清楚上面的问题 那就好办了 该放在什么地方就放在什么地方CACHE很多时候分2种 文件 内存 有些东西适合放在文件 有些适合在内存PHP的SESSION性能不错但有问题 所有SESSION文件都放在一个目录里 如果一个目录下文件过多性能会下降 应该重新注册SESSION后端俺一直对PHP 回收垃圾SESSION有看法 如果可以应该单独有个进程定时回收而不是用一个随机概率启动回收做一个高效可靠的程序真的很难 所以俺一直在写垃圾 缓存个人觉得不一定就是缓存服务器,可能是客户端缓存个人觉得静态的尽最缓存(如模板输出的),动态的可以通过调用js或iframe实现CSDN现在许多更新都不是实时的了均是下班后某一时间集中操作 一个网站全面ajax化就可以最大限度做缓存主要页面可以全部都是静态image,css,js,html,因为全部是静态,可以全部缓存于客户端只有少部份资料用ajax取得而且尽量将判断工作交给客户端ajax返回原始资料经常使用的资料在登入时缓存进内存这样就可以极大地提升效能我现在做的应用就是向这个方向做虽然还未完全完成但效果已经不错用户看到的是很快载入一个网页框架之后的内容会一步步出现加上一点点载入动画很好看 ^_^ {dede:loop}的问题 php不能正常运行是怎么回事 请教函数 求一验证码程序 前几天macromedia来公司要钱了,大家有没有免费的可以在win和linux下使用的网页工具介绍? 上传文件说我没权限 请你帮我注释这段代吗? 用PHP如何显示数据库中某一值的前十个字符?? 怎样从一个变量中截取一段前面一段字符?截止到一个规定的字符串的第二次出现 请教怎样实现中文数字与阿拉百数字互相转换 php不能嵌入到html中,超级简单的问题 在php页面中为什么get方法传递中文参数会出错?
如果嫌每次读取DB压力大,可以为用户创建一个信息缓存。
如果用的频繁的话,还是建议为每个用户生成一个静态的html,当用户修改的时候,更新那个html页面.
把一些重要的资料放入数据库(少量的)。一些不经常更改的资料放入一个静态的HTML文件,像楼上的方案。
可以考虑放入 session,不过不能使用默认的文件存储的 session。可以考虑用缓存服务器,如 memcache 等。或者直接在数据库和web服务器之间加多一个 cache 层。Q-zone 的做法,据可靠消息,是他们的 C 程序员写了一个带 sql 查询的 cache 层加在数据库和前端脚本中间。
很变态,不是么?
俺一直对PHP 回收垃圾SESSION有看法 如果可以应该单独有个进程定时回收而不是用一个随机概率启动回收做一个高效可靠的程序真的很难 所以俺一直在写垃圾
个人觉得静态的尽最缓存(如模板输出的),动态的可以通过调用js或iframe实现CSDN现在许多更新都不是实时的了
均是下班后某一时间集中操作
主要页面可以全部都是静态
image,css,js,html,因为全部是静态,可以全部缓存于客户端
只有少部份资料用ajax取得
而且尽量将判断工作交给客户端
ajax返回原始资料
经常使用的资料在登入时缓存进内存
这样就可以极大地提升效能我现在做的应用就是向这个方向做
虽然还未完全完成
但效果已经不错
用户看到的是很快载入一个网页框架
之后的内容会一步步出现
加上一点点载入动画
很好看 ^_^