如何将session数据保存到memcache中,以及memcache的生存周期
来源:互联网 发布:sqlserver 字段别名 编辑:程序博客网 时间:2024/05/02 06:12
将session的数据保存到memcache中
session的数据默认情况下,保存在file文件中
但是我们可以通过修改php的配置,让他保存在其他地方
(1)、打开D:\lamp\php/php.ini。session.save_handler = files是开着的,把它注释了
Session内容保存路径,添加画红线的那句话
修改好了测试一下
Session.php
<?php
session_start();
$_SESSION['name']='whj';
?>
Get_session.php
<?php
session_start();
$name=$_SESSION['name'];
echo $name;
?>
输出whj正确
(2)、但是如何获得session变量的时候,不再是name属性,而是通过session_id来保存的
session_id :浏览器访问服务器的时候,服务器给浏览器分配session_id然后在通过session_id找对应的值
例:
session_start();
$_SESSION['age']='whjwhj';
$sess_id=session_id();
var_dump($sess_id);
//运行出来是string(26) "dmkppdo0qhbkq099fo608an383",在telnet中运行get dmkppdo0qhbkq099fo608an383的出age|s:6:"whjwhj";
如果没有权限修改php的配置怎么办?
ini_set() 可以在php文件中,设置php的一些配置
安全问题:现在谁都可以访问我的memcache,别人访问我的telnet 192.168.2.200也能访问,
解决之道:防火墙
上面session的使用时修改了php.ini配置文件,现在做的是不用修改配置文件直接在文件开头加上:
ini_set('session.save_handler','memcache');
ini_set('session.save_path','tcp://127.0.0.1:11211');告诉它是用session保存到memcache的
例:
Ini_session.php
<?php
ini_set('session.save_handler','memcache');
ini_set('session.save_path','tcp://127.0.0.1:11211');
session_start();
class Hot{
public $name;
public $color;
public function __construct($name,$color){
$this->name=$name;
$this->color=$color;
}
}
$hot=new Hot('xiaobei','white');
$_SESSION['hot']=$hot;
?>
Get_ini_session.php
<?php
ini_set('session.save_handler','memcache');
ini_set('session.save_path','tcp://127.0.0.1:11211');
session_start();
class Hot{
public $name;
public $color;
public function __construct($name,$color){
$this->name=$name;
$this->color=$color;
}
}
$hot=$_SESSION['hot'];
var_dump($hot);
?>
7、Memcache的生存周期:
重启memcached、重启操作系统会导致全部数据消失。另外,内容容量达到指定值之后,就基于LRU(Least Recently Used)算法自动删除不使用的缓存。
如果设置expire为0,表示永远不过期,直到机器重启或服务重启
- 如何将session数据保存到memcache中,以及memcache的生存周期
- 如何将session数据保存到memcache中,以及memcache的生存周期
- 如何将session数据保存在memcache
- session数据保存到memcache中
- 将session保存到memcache
- PHP将session保存到memcache服务器
- Session保存到Memcache中,解决读取数据慢问题
- ThinkPHP中将session保存到memcache中
- memcache分布式实现、memcache分布式的数据同步、memcache保存session数据的实现
- session保存在memcache中
- memcache保存php的session
- PHP保存session到memcache服务器的方法
- 将session信息写入到memcache中管理
- PHP高级配置 ---将session存到Memcache缓存中
- memcache保存php session
- memcache保存session
- 如何将session存入redis或memcache
- 将数据库中的数据取到memcache中
- [leetcode]Best Time to Buy and Sell Stock
- Ubuntu 12.04 配置 VPN
- 探索并发编程(五)------Java多线程开发技巧
- 24点扑克牌游戏编程算法详解
- vmware环境下linux系统中安装sendmail服务器
- 如何将session数据保存到memcache中,以及memcache的生存周期
- 探索并发编程(六)------Java多线程性能优化
- struts2更改配置文件目录
- hive原理学习
- The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>)
- 如何在Linux使用Eclipse + CDT开发C/C++程序?
- asp.net 中javascript的引用
- 探索并发编程(七)------分布式环境中并发问题
- Search the Nth element of Level M in a binary tree