memcache 在php存取中的应用

当用户刷新网页或有大量用户访问网站时,就会产生大量数据库查询进程,这不但拖慢了网页打开速度,同时也给服务器带来了很大压力。

作为php菜鸟,今天刚刚接触到了 memcache 这个东东,于是自己跟着文档做了一个实例,一方面鼓励自己,另一方面等大神轻喷~

<?php 
	header("Content-Type:text/html;charset=utf-8");
	//创建memcache对象
	$mem = new Memcache;

	//连接memcache服务器
	$mem->connect("localhost",11211);


	$sql = "select id,name,pass,age,sex,email from user order by id";
	$key = md5($sql); //可用SQL语句做键值

	//直接从内存中要数据
	$data = $mem->get($key);

	//如果内存中没有数据,就从数据库中取出
	if (empty($data)) {
		
		//数据库连接操作
		try{
			$pdo = new PDO("mysql:host=localhost;dbname=phpdemo", "root", "");

		}catch(PDOException $e){
			echo "数据库连接失败,原因是".$e->getMessage();
		}
		
		
		$stmt = $pdo->prepare($sql);

		$stmt->execute();

		$data = $stmt->fetchAll(PDO::FETCH_ASSOC);

		$mem->add($key, $data, MEMCACHE_COMPRESSED, 5); //5秒

		echo "<br>这是第一次访问,从数据库访问并存到内存中!";
	}
	echo "<pre>";
	print_r($data);
	echo "</pre>";
	
	//关闭连接
	$mem->close();

 ?>

  

转载于:https://www.cnblogs.com/zhongshanblog/p/4558256.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值