标签:
一:缓存的概念
1 缓存是什么
缓存是指能够进行高速数据交换的存储器
2 缓存的工作原理
当我们读取数据时,首先会从缓存中获取,如果找到立即返回,如果没有缓存对应数据就会从数据源读取;取回的同时会把相应的数据进行缓存,以便下次访问同一数据源时使用可以从缓存中直接取回。
3 为什么要使用缓存
4 缓存的特性
二:一个PHP的HTTP请求执行过程
三:缓存的类型
//优化前 document.getElementById("h_890").value = "890"; var form = document.getElementById("h_890").form; //局部变量优化后 var h_890 = document.getElementById("h_890"); h_890.value="890"; var form = h_890.form; //利用global缓存=>窗口进程内(不刷新) global userList = null; function getUserList(){ if(userList != null){ //处理数据 }else{ //请求数据资源 //global 全局变量 //处理相应的数据 } } //利用cookie缓存=>会话期内(不关闭浏览器) function getUserList(){ var c_name = "h_890",c_val = getCookie(c_name); if(c_val != ‘‘){ //处理数据 }else{ //请求数据资源,返回data setCookie(c_name,data); //处理相应的数据 } } //利用local storage缓存=>最长时间(浏览器关闭仍有效) function getUserList(){ var key = "h_890",val = window.localStorage.getItem(key); if(val != ‘‘){ //处理数据 }else{ //请求数据资源,返回data window.localStorage.setItem(key ,data); //处理相应的数据 } }
2.php静态变量
//最常见的数据库资源 function connect(){ return mysql_connect(‘localhost‘,‘root‘,‘root‘); } //改良 class Db { private static $db = null; function connect() { if (null === self::$db) { self::$db = mysql_connect(‘localhost‘,‘root‘,‘root‘); } return self::$db; } } //静态变量升华->单例模式 class Db { static private $_instance = array(); //类实例 private $_db; private $_db_name = "localhost"; private $_db_host = "root"; private $_db_pwd = "root"; static function getInstance() { (NULL === self::$_instance) && self::$_instance = new self(); return self::$_instance; } private function __clone() { } private function __construct() { $this->_db = mysql_connect($this->_db_host, $this->_db_name, $this->_db_pwd); } } $db = Db::getInstance();
3. php扩展缓存简介
标签:
原文地址:http://www.cnblogs.com/ID890/p/cache.html