为什么高负载情况下会出现session丢失?(网上找不到答案) sessionlinux面试 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 session写入文件i/o过高,导致写入失败,如果量很大通过缓存实现。 tmp目录会回收文件应该不会导致session丢失吧 或者是搞了负载均衡 或者是代码有问题 再说高负载情况下 一般不会用文件来存储session吧 是否在考察session的GC机制。每次建立Session时,都有一定的概率(session.gc_probability / session.gc_divisor)启动GC. 本来概率并不算高(默认应该只有1/1000),但如果并发量大,负载高,触发GC的机会还是很高的。 GC只清理那些过期的数据吧后来想想 会不是session id 生成算法也不是不可能冲突 特别在高并发的时候 同毫秒数访问 产生同样的rand 就出现冲突了 GC應該只清理過期的session。不知道你講的高併發是指多少併發呢。多个用户在同一台服务器时所生产的PHPSESSIONID重复的概率极低(至少为百万份之一)。如果高併發超過這個,就有可能出現session丟失。 不好意思,刚仔细看了一下帖子,是之前看错了。现在想了想,高并发访问可能导致的几个情况(这里只讨论session_save_handler是文件的情况):1. session 文件大量生成和随机读写。可能会造成系统IOwait加大,应该会导致页面响应变慢,不至于会丢失session.2. 高并发和负载的情况下,/tmp目录由于会大量生成session文件,导致目录迅速填满。Linux系统中如果有daily或者month的cron定时清理(一般是/etc/cron.daily,/etc/cron.month),其中会调用tmpwatch清理/tmp中的文件(可定制时间),这种情况下是可能出现session文件被清理的可能性的。个人拙见。欢迎讨论。 这里会不会存在磁盘inode占满的情况? 菜鸟百分求助,关于php页面莫名出现空白行的原因,如果能够完美解决,追加100分 如何定时删除数据库中无效信息? 关于文件上传服务器down机问题。 PHP+ACCESS下用中文关键词查询的问题! 求若干个数中之和最接近12的集合,怎样用程序实现这个功能 怎么实现没有任何操作的把一个页面里的form传递到后一个页面 求助!wap上面怎么显示表格? smarty模板高手帮忙解答一下! PHP读取数据库中的JS代码,怎样让执行JS执行? 请问一下,在WIN2K服务器下有软件能支持PHP的解析吗? 程序不生效 PHP问题【急】【急】【急】【急】请大神帮忙
每次建立Session时,都有一定的概率(session.gc_probability / session.gc_divisor)启动GC. 本来概率并不算高(默认应该只有1/1000),但如果并发量大,负载高,触发GC的机会还是很高的。
GC只清理那些过期的数据吧后来想想 会不是session id 生成算法也不是不可能冲突 特别在高并发的时候 同毫秒数访问 产生同样的rand 就出现冲突了
不知道你講的高併發是指多少併發呢。
多个用户在同一台服务器时所生产的PHPSESSIONID重复的概率极低(至少为百万份之一)。
如果高併發超過這個,就有可能出現session丟失。
现在想了想,高并发访问可能导致的几个情况(这里只讨论session_save_handler是文件的情况):
1. session 文件大量生成和随机读写。可能会造成系统IOwait加大,应该会导致页面响应变慢,不至于会丢失session.2. 高并发和负载的情况下,/tmp目录由于会大量生成session文件,导致目录迅速填满。Linux系统中如果有daily或者month的cron定时清理(一般是/etc/cron.daily,/etc/cron.month),其中会调用tmpwatch清理/tmp中的文件(可定制时间),这种情况下是可能出现session文件被清理的可能性的。个人拙见。欢迎讨论。