美文网首页
php 链接redis 实际例子

php 链接redis 实际例子

作者: 幺加幺 | 来源:发表于2017-03-20 16:06 被阅读120次

项目环境背景:

公司的关于销售排行的数据已经达到了2千多万条,在查询数据库需要等待的时间增长。因此想优化查询速度。

1.合理建立索引

根据表的设计,合理建立相关的索引,因为涉及到一些公司机密,这里不方便写太多,有兴趣的童鞋可以自行搜索资料。

2.合理分表

根据业务需求进行合理分表,将不常用到的的数据分到另外一张表,例如将每三个季度或者1年为一个周期。如果数据涉及到了好几年前,可以把几年前的数据放到另外一个数据库维护。把专注度放在近期。

3.缓存技术

可以把一些经常会查询的数据做一些缓存。
本次采用redis ,高性能key-value 数据库。
原因:

性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。

丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。

原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。

丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

本次是利用php链接redis 进行实际的例子。
1.到github找到相关版本号的phpredis
https://github.com/phpredis/phpredis/releases

将相关的php插件放到相关的ext 路径下。

Paste_Image.png

2.查看插件是否配置成功
成功例子:


Paste_Image.png

3.启动redis

1.运行 redis-server.exe redis.windows.conf

2.另外启动一个命令窗口,redis-cli

3.编写php链接redis

代码:

<?php
    //connect redis 
    // $redis =new Redis();
    // $redis->connect('127.0.0.1',6379);

    // echo "Connect to server sucessfully<br>";

    // echo "Server is running : ".$redis->ping(); 
    
       //连接本地的 Redis 服务
   $redis = new Redis();
   $redis->connect('127.0.0.1', 6379);
   echo "Connection to server sucessfully<hr>";
   //存储数据到列表中
   // $redis->lpush("tutorial-list", "Redis");
   // $redis->lpush("tutorial-list", "Mongodb");
   // $redis->lpush("tutorial-list", "Mysql");
   // 获取存储的数据并输出
   $arList = $redis->lrange("tutorial-list", 0 ,50);
   echo "Stored string in redis";
   print_r($arList);

?>

Paste_Image.png

redis简单set 数据php方式:

<?php
        
       //连接本地的 Redis 服务
   $redis = new Redis();
   $redis->connect('127.0.0.1', 6379);

   $redis->set('cc',31);
   if ($redis) {
      echo "success";
   }

?>
Paste_Image.png

redis 简单get数据 php方式

<?php
        
       //连接本地的 Redis 服务
   $redis = new Redis();
   $redis->connect('127.0.0.1', 6379);

  echo  $redis->get('cc');
   
?>

经过php获得的数据。

Paste_Image.png

相关文章

网友评论

      本文标题:php 链接redis 实际例子

      本文链接:https://www.haomeiwen.com/subject/tuzbnttx.html