lavarel中如何使用memcache

一、总结

一句话总结:

composer下载包,配置,使用函数

1、memcache是什么?

键值对内存缓存

MemCache是一个自由、源码开放、高性能、分布式的分布式内存对象缓存系统,MemCaChe是一个存储键值对的HashMap,在内存中对任意的数据(比如字符串、对象等)使用key-value存储,数据可以来自数据库调用、API调用,或者页面渲染的结果。MemCache设计理念就是小而强大,它简单的设计促进了快速部署、易于开发并解决面对大规模的数据缓存的许多难题

2、为什么要使用Memcache?

通过在内存中缓存数据和对象来减少读取数据库的次数

主要用于动态Web应用以减轻数据库的负载。
它通过在内存中缓存数据和对象来减少读取数据库的次数,
从而提高了网站访问的速度。

3、Memcache的实现原理?

键值对 hash表

memcache处理的原子是每一个key、val,key会通过一个hash表转换成hash的key,便于查找对比以及竟可能的做到散列。同时mem用的是一个二级散列,通过一个hash表来维护。

4、memcache有两个核心组件:服务端和客户端 如何工作?

总结:标准的服务端和客户端工作模式
在一个memcache组件查询中,client先通过key的hash值来确定kv在service端的位置,当server端确定后,客户端就会发一个请求到server端。让它来查找出确切数据,因为这之间没有交互以及多播协议,因此mem带给网络的影响最小

5、使用memcache的公司有哪些?

Yahho,facebook,搜狐,新浪,豆瓣。Wikipedia等

二、lavarel中使用memcache

更改cache.php中cache_driver值为memcached。

use Cache; #控制器中使用缓存

    public function memcache(){
Cache::put('memcache','hello,world',1); #写入缓存(key,value,time)
dd(Cache::get('memcache')); #获取缓存
}

参考:laravel操作memcache笔记! - 简书
https://www.jianshu.com/p/2a3baf32348a

三、memcache如何在TP框架项目中使用

参考:memcache如何在项目中使用_百度经验
https://jingyan.baidu.com/article/ca2d939d1c74fceb6c31ce8f.html

当用户发生一个动态请求的时候,先去memcache服务器里面查询缓存数据,当首次查询的时候,memcache里面肯定是没有数据的,这个时候需要php程序去MySQL数据库里面获取数据,将获取先缓存一份到memcache服务器里面,在把数据返回给用户。当第二次发生相同的动态的请求的时候,这个时候由于上一次memcache里面已经缓存了对应的查询数据,这个memcache就可以直接的返回数据,而不需要MySQL数据库的参与,减少了MySQL数据库的压力。对于这种架构来说,由于memcache是处于旁边的,这种缓存系统叫做旁路式缓存系统。

对于下面这种结构,缓存数据的获取不依赖php程序,缓存系统自身有能力可以从MySQL数据库里面获取数据,在将数据缓存到本地的缓存系统里面,下次直接从缓存系统里面返回数据的这种架构叫做穿透式缓存系统。

 

lavarel中如何使用memcache的更多相关文章

  1. 仿联想商城laravel实战---7、lavarel中如何给用户发送邮件

    仿联想商城laravel实战---7.lavarel中如何给用户发送邮件 一.总结 一句话总结: 设置邮件服务器,比如163邮箱 lavarel中配置邮件服务,在.env中 控制器中使用Mail对象发 ...

  2. js插件---webuploader 使用(lavarel中使用)

    js插件---webuploader 使用(lavarel中使用) 一.总结 一句话总结: 多去看几个具体使用的实例,很多blog教程都有坑,多看几个交叉印证可以没那么多坑 1.webuploader ...

  3. 后盾网lavarel视频项目---lavarel中的tinker是什么

    后盾网lavarel视频项目---lavarel中的tinker是什么 一.总结 一句话总结: 是用来调试laravel,可以打印变量或对象信息,显示函数代码,对数据库写入和查询数据 laravel中 ...

  4. legend3---4、lavarel中session使用注意

    legend3---4.lavarel中session使用注意 一.总结 一句话总结: session('key',$value)不是存值,是设置默认值,session(['key'=>$val ...

  5. PHP中的数据库二、memcache

    :first-child, ol li > :first-child, ul li ul:first-of-type, ol li ol:first-of-type, ul li ol:firs ...

  6. Windows下Memcache的安装与在php中使用

    memcache dll插件和测试例子下载地址: http://pecl.php.net/package/memcache Windows下Memcache的安装方法 Memcached官方:http ...

  7. 在php中使用Memcache

    在上一篇博客中我写到了memcache的安装和管理,在这一篇博客中我将写到的是在php中如何使用memcache. 一.安装memcache扩展 首先我们通过phpinfo()函数查看一下我们当前的p ...

  8. 使用Memcache在PHP中调试方法的介绍及应用

    使用Memcache在PHP中调试方法的介绍及应用 如果我们在网络开发中,特别是大访问量的web项目开发中,为了提高响应速度,减少数据查询运算,那么我们都会选用memcahce.首先我们必须要安装,接 ...

  9. Memcache 在win7x64中安装配置

    Memcached从0.2.0开始,要求PHP版本大于等于5.2.0. 环境:phpstudy集成环境 目标:实现php用memcache 下载:memcache for win 64 http:// ...

随机推荐

  1. uoj#209【UER #6】票数统计

    题目 做UER的A题涨信心 首先我们注意到这个所谓的至少有一条正确在\(x\)和\(y\)不相等的时候非常弱,当\(x<y\)时,只有可能是后\(y\)位用户有\(x\)个通过:当\(x> ...

  2. Deep Dive into Neo4j 3.5 Full Text Search

    In this blog we will go over the Full Text Search capabilities available in the latest major release ...

  3. WIN10安装CUDA10 cuDNN

    文章目录 CPU和GPU 什么是CUDA 什么是cuDNN WIN10安装CUDA10 WIN10安装cuDNN CPU和GPU CPU和GPU是不一样的计算机设备,CPU作为计算机心脏一直被人们所认 ...

  4. 通讯录查询(Profile Lookup)——freeCodeCamp

  5. Android开发 View_自定义圆环进度条View

    前言 一个实现,空心圆环的自定义View,已经封装完好,可以直接使用. 效果图 代码 import android.content.Context; import android.graphics.C ...

  6. css----7渐变

    linear-gradient(90deg,red 10%,yellow 20%,green 30%) <!DOCTYPE html> <html> <head> ...

  7. Java迷宫代码,广度优先遍历,最短路径

    使用一个队列,采用层层扩张的方式,寻找迷宫最优的路径信息,再用一个迷宫节点数组记录行走信息方向常量定义: public interface Constant { // 右方向 int RIGHT = ...

  8. Sqlite && EF Code FIRST 终极解决方案 2019.5.17

    Sqlite && EF Code FIRST 终极解决方案 2019.5.17 包括根据模型自动生成数据库,初始化数据,模型改变时的自动数据迁移等 2019.12.25 更新 支持E ...

  9. 一个切图仔的 CSS 笔记

    1,flexbox~注意,设为 Flex 布局以后,子元素的float.clear和vertical-align属性将失效. 在ios8上要加上前缀 display: -webkit-box; dis ...

  10. Html+css3记录

    一.html5新特性  常用语义标签:nav footer header section mark  功能标签 video audio iframe canvas(画布和绘图功能)  input新ty ...