memcached和redis的安装使用

来源:互联网 发布:大学生使用网络情况 编辑:程序博客网 时间:2024/05/21 23:32

关于缓存,memcached和redis都可以使用,其中redis还能用作队列。

关于memcached和redis的安装,memcached的比较简单,而redis就相对复杂些。


1、memcached

网上的介绍说,memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载(不是很懂,只是单纯使用缓存的话不去理解也行吧?)

安装方法:直接百度搜索下载解压安装,把memcache.dll文件(不同压缩包该文件名字可能不一样)放入php的ext目录里,然后还要启动服务,可以用命令行执行,具体命令上网查下,也可以去管理工具->查看本地服务里手动启动。在php.ini文件里要加一句extension=memcache.dll,我使用的是phpstudy,需要在扩展那里选择memcached后,再重启服务器。

PHP使用方法:添加扩展后,在namespace下加一句use Memcache;

$memcache = new Memcache //new一个memcache对象(或者使用Memcache::直接引用)

$memcache->connenct("127.0.0.1",11211) //连接memcache,IP地址和端口自定

$memcache->add("key", $value, 0, 100) //添加一个值,

$memcache->set("key", $value, 0, 100) //添加一个值,若已存在则覆盖,0为压缩内容(不懂),100为时间

$memcache->replace("key", $value, 0, 100) //修改一个已存在的值

$memcache->get("key") //获取值

$memcache->close() //关闭memcache连接

memcache还有很多的操作方法,具体百度一搜一大把。


2、redis

网上介绍说,Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。(不懂,反正能用就行)

安装方法:与memcache相似,都是搜索下载解压安装,复制粘贴.dll文件(其中有个_redis.pdb文件貌似也要复制),修改php.ini配置,启动服务,唯一难点是很难找到对应的PHP版本。

PHP使用方法:添加扩展后,在namespace下加一句use Redis;

$redis = new Redis();

$redis->connect("127.0.0.1", 6379) //连接Redis,IP和端口自定

$redis->set("key", $value) //添加值

$redis->expire("key", 60) //设置值的缓存时间

$redis->get("key") //获取值

$redis->close() //关闭Redis连接

还有更多的操作方法网上搜索一大把

其中,我用的是laravel框架,所以在namespace下加的是use Illuminate\Support\Facades\Redis; 这里需要在config/database.php文件里的return[]中添加:

'redis' => [

    'cluster' => false, // 是否在多个节点间进行分片(不懂)

    'default' => [

        'host' => env('REDIS_HOST', '127.0.0.1'),

        'port' => env('REDIS_PORD', 6379),

       'database' => env('REDIS_DATABASE', 0), //数据库索引(目前没用到)

       'password' => env('REDIS_PASSWORD', '123456'), //如果没设置密码就不需要加此句

    ],

],

在config/cache.php文件的return[]里添加:

'redis' => [

    'driver' => 'redis',

    'connection' => 'default',

],

这样就不需要手动连接Redis,直接引用Redis的方法就行。

Redis还能用做队列功能。原理:通过Redis::rPush("key", $value)把数据从“队列”的右边插入,通过Redis::lPop("key")从“队列”的左边取出,一次只取出一个数据,对这数据做完处理后再从“队列”里取出下一个数据。

       



原创粉丝点击