概述
缓存
缓存概念及类型:什么是缓存 - 与非网
缓存(cache)一般存放在runtime目录下,页面请求一次将请求内容进行缓存,下一次再次访问,会直接访问到缓存内容,不会再次请求服务器,减少服务器压力
场景:微博热搜榜,榜单后的点击次数,并不会实时更新,而是会隔一段时间进行计算,假如说榜单数据之和一分钟更新一次,但是在这一分钟内,用户会在页面不断进行请求,页面一直都是显示缓存数据,而并非实时数据,这就是缓存
缓存可在config中进行配置,包括缓存期限,缓存存放路径等等
//缓存
public function cacheTest(){
//设置缓存
//Cache::set('test','111',1);
//取出缓存
//dump(Cache::get('test'));
//助手函数
cache('test','111',1);
sleep(10);
dump(cache('test'));
}
Session
session:一般存放在服务器端,用来存储用户登录信息,也可存储验证码信息
//原生session
public function session(){
//开启session初始化
session_start();
//创建session
$_SESSION['user'] = '111';
//获取session
dump($_SESSION['user']);
}
//session
public function sessionTest(){
//框架中的session
//不需要手动初始化
//静态方法
Session::set('user','2');
Session::get('user');
//助手函数
session('test','1111');
dump(session('test'));
}
session拓展:
session的自动回收机制
session的自动回收机制配置信息存储于php.ini中,默认设置过期时间为1440秒,但是在平常网页的登录中,session即使到达了过期时间,也不会被清除,是因为session自动回收机制的原因,由于每次到了过期时间就要被清除,太多次的请求会导致服务器崩溃,所以自动回收机制的触发概率是千分之一,极大地减少了服务器的性能损耗
cookie
//框架定义cookie
public function cookieTest(){
//静态方法
Cookie::set('user','zhangsan');
Cookie::get('user');
//助手函数
cookie('test','111');
dump(cookie('test'));
}
验证码
(官方文档:https://static.kancloud.cn/manual/thinkphp5/154295)
登录注册页面都会使用到验证码,是为了防止现在的人工智能,有人蓄意整活,如果没有验证码,会有机器人不断的进行注册,总会写满数据库,导致网站新用户不能正常注册
题外:
队列(先进先出)
场景:
- 12306购票:预售1000张票,但是如果同时有1万个人,同时请求查询,同时下单的话,那么又没有一万张票,就采用队列限制,进行排队,售完1000张票就停止售卖。
- 医院挂号:谁来的早,谁排到前面,并且优先进入医生办公室
最后
以上就是有魅力曲奇为你收集整理的12月8日:thinkphp中的杂项缓存Sessioncookie验证码题外:的全部内容,希望文章能够帮你解决12月8日:thinkphp中的杂项缓存Sessioncookie验证码题外:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复