使用memcached加速web应用实例

使用memcached加速web应用实例

大家好,又见面了,我是全栈君。


在实际应用中,一般会把数据库查询的结果保存到memcached中,下次訪问数据库时直接从memcached中获取。而不再进行数据库操作,这样非常大的程度上减轻了数据库的负担。

【演示样例】:

<span style="font-family:Microsoft YaHei;"><?
       $mc = new Memcache();  //创建memcache对象
       $mc ->connect('127.0.0.1',11211);
      
       $sql = "select * fromuser where id = 1";
       $key = md5($sql);
       //数据库查询的结果是否已经缓存到memcacheserver中。
       if(!($datas = $mc ->get($key))){
              //在memcache中未获取数据,则从数据库中查询记录。
              $conn =mysql_connect('localhost','root','root');
              mysql_select_db('t1');
              $result =mysql_query($sql);
              while($row =mysql_fetch_object($result)){
                     $datas[] =$row;
              }
              //将从数据库中获取的结果集数据保存到memcache中。以供下次使用。

$mc ->add($key,$datas); } var_dump($datas);</span>

查看memcachedserver。已经加入成功。

 使用memcached加速web应用实例


使用memcached加速web应用实例


使用memcached加速web应用实例



【原理】:
首先要通过md5()函数把要查询的sql语句加密成一个唯一的key,是用脑这个key去memcacheserver中查询,假设memcache已经缓存次sql查询的结果,则直接返回给用户。否则从数据库中查询结果并缓存到memcacheserver中。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115707.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python如何使用继承

    python如何使用继承#-*-coding:utf-8-*-'''使用继承'''classSchoolMember:def__init__(self,name,age,

    2022年7月6日
    27
  • 常见逻辑漏洞总结「建议收藏」

    常见逻辑漏洞总结「建议收藏」kaixinyufeng博客园首页新随笔联系订阅管理Web安全测试中常见逻辑漏洞解析(实战篇)Web安全测试中常见逻辑漏洞解析(实战篇)简要:越权漏洞是比较常见的漏洞类型,越权漏洞可以理解为,一个正常的用户A通常只能够对自己的一些信息进行增删改查,但是由于程序员的一时疏忽,对信…

    2022年5月20日
    43
  • 微信公众号网页开发,获取 调用微信公众号接口后 的返回值,PHP

    微信公众号网页开发,获取 调用微信公众号接口后 的返回值,PHP在微信公众号网页开发中,我们通常会用到许多微信团队提供的接口,我们在运行单个php调用接口的时候,返回值直接出现在php的echo中,我们根据这个值来判断代码正确与否,但是当php文件和微信公众号连接起来的时候,我们无法获取返回值,下面就展示一下如何将返回值的信息写入txt文件中。测试代码段&lt;?php$myfile=fopen("fanhui.txt","a+")ordie("U…

    2022年6月5日
    123
  • Oracle 1521端口

    Oracle 1521端口当windows系统开启防火墙时,在win7中,要开启进的1521端口XP下,用telnet远程IP端口号(1521)来查看端口是否打开例:telnet192.168.1.101521win7下,netstat-naptcp来查看netstat-naptcpTCP192.168.1.10:1521192.168.1.225:3…

    2022年5月15日
    76
  • 查看端口被进程占用命令_cmd查看端口占用

    查看端口被进程占用命令_cmd查看端口占用步骤一:linux使用netstat或者ifconfig命令时,显示命令未找到。通过yumsearchnetstat这个命令,匹配结果如下:=================================匹配:netstat===================bwm-ng.x86_64:BandwidthMonitorNGdstat.noarch:Versatileresourcestatisticstoolnet-snmp.x86_64:Acollecti

    2022年7月27日
    5
  • Vue双向绑定原理

    Vue双向绑定原理vue的双向绑定原理:vue数据的双向绑定是通过数据劫持结合发布者-订阅者模式的方式来实现的。其核心就是通过obj.defineProperty()方法来实现数据的劫持,在数据变化时发布消息给订阅者,触发相应的监听回调。也就是说数据和视图同步,数据发生变化,视图跟着变化,视图变化,数据也随之发生改变;简单介绍一下Object.defineProperty()方法:1、Object.defineProperty(obj,prop,descriptor),这个语法内有三个参数,分别为obj(要定

    2022年10月18日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号