laravel配置Redis多个库的实现方法_php实例_脚本之家


本站和网页 https://www.jb51.net/article/159386.htm 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

laravel配置Redis多个库的实现方法_php实例_脚本之家
脚本之家
服务器常用软件
手机版
投稿中心
关注微信
快捷导航
软件下载
android
MAC
驱动下载
字体下载
DLL
源码下载
PHP
ASP.NET
ASP
JSP
软件编程
C#
JAVA
C 语言
Delphi
Android
网络编程
PHP
ASP.NET
ASP
JavaScript
在线工具
CSS格式化
JS格式化
Html转化为Js
数据库
MYSQL
MSSQL
oracle
DB2
MARIADB
CMS
PHPCMS
DEDECMS
帝国CMS
WordPress
常用工具
PHP开发工具
python
Photoshop
必备软件
网站首页
网页制作
网络编程
脚本专栏
脚本下载
数据库
服务器
电子书籍
操作系统
网站运营
平面设计
其它
媒体动画
电脑基础
硬件教程
网络安全
php基础
php技巧
php实例
php文摘
php模板
您的位置:首页 → 网络编程 → PHP编程 → php实例 → laravel配置Redis多个库
laravel配置Redis多个库的实现方法
更新时间:2019年04月10日 08:27:36 作者:haoyq
这篇文章主要介绍了laravel配置Redis多个库的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
导语
经过编译安装和安装扩展之后,Redis 已经可以正常使用了。但是在 laravel 中还需要其他的操作。
安装扩展
要想在 laravel 中使用 Redis,还需要安装 predis 扩展。使用 composer require predis/predis 进行安装就可以了。
修改配置
Redis 的配置在 config/database.php 文件,根据需求修改,我这里不需要改动;
设置 Cache 默认缓存为 Redis,在 .evn 文件中 CACHE_DRIVER=redis;
设置 Session 的驱动为 Redis,在 .env 文件中 SESSION_DRIVER=redis;
配置多个库
经过以上的配置后,多个服务都使用 Redis,如果都使用同一个库,这显然是不合理的。我们可以配置多个连接来解决这个问题。
Redis 默认有 16 个库,在服务器中设置 redis.conf 的 database 值可以修改。
先来看下 config/database.php 的默认连接
'redis' => [
'client' => 'predis',
'default' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_DB', 0),
],
'cache' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_CACHE_DB', 1),
],
],
默认是有两个连接的,分别是 default 和 cache。下面来看下 config/cache.php 中关于 Redis 的配置
'redis' => [
'driver' => 'redis',
'connection' => 'cache',
],
可以看到它的 connection 值是 cache,也就是使用 config/database.php 中 Redis 的 cache。
下面修改 config/database.php 的 Redis,添加一个 session 的连接,如下
'redis' => [
'client' => 'predis',
'default' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_DB', 0),
],
'cache' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_CACHE_DB', 1),
],
'session' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_SESSION_DB', 2),
],
],
接下来在 .env 中添加 SESSION_CONNECTION=session。
测试
经过上面的操作,已经修改好了。总结下就是 default 使用的是 0 库,cache 使用的是 1 库,session 使用的是 2 库。
使用如下代码来测试下
/**
* 测试 Redis 的存储
*/
public function testRedis()
// Redis 门面
Redis::setex('facades', 30, 'i am facades');
// Cache
Cache::put('cache', 'i am cache', now()->addMinute(30));
// 因为 Cache 默认是 Redis,所有和上面语句相同
// Cache::store('redis')->put('cache', now(), now()->addMinute(30));
运行以上代码之后,在服务器中使用 redis-cli 来看下存储情况
可以看到各个库的存储情况
使用 Redis 门面操作,默认为 config/database.php 中 Redis 的 default 连接,数据存入 0 库;
使用 Cache 操作,因为 config/cache.php 中 Redis 的 connection 设置为 cache,理所当然存入的是 1 库;
Session 也根据 SESSION_CONNECTION=session 配置,正确的存入了 2 库;
使用 Redis 门面的时候,也可以指定连接
$redis = Redis::connection('session');
$redis->setex('facades_connection', 30, 'i am facades_connection');
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:PHP的Laravel框架结合MySQL与Redis数据库的使用部署Laravel框架使用Redis的方法详解laravel使用Redis实现网站缓存读取的方法详解关于 Laravel Redis 多个进程同时取队列问题详解Redis在Laravel项目中的应用实例详解Laravel框架实现redis集群的方法分析Laravel如何使用Redis共享SessionLaravel的Auth验证Token验证使用自定义Redis的例子laravel项目利用twemproxy部署redis集群的完整步骤laravel中Redis队列监听中断的分析
laravel
配置
Redis
相关文章
微信自定义分享php代码分析这篇文章主要为大家详细分析了微信自定义分享php代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 2016-11-11
PHP网站自动化配置的实现方法(必看)下面小编就为大家带来一篇PHP网站自动化配置的实现方法(必看)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 2017-05-05
jquery+thinkphp实现跨域抓取数据的方法这篇文章主要介绍了jquery+thinkphp实现跨域抓取数据的方法,结合实例形式分析了thinkPHP结合jQuery的ajax实现跨域抓取数据的相关操作技巧,需要的朋友可以参考下 2016-10-10
ThinkPHP写数组插入与获取最新插入数据ID实例这篇文章主要介绍了ThinkPHP写数组插入与获取最新插入数据ID的方法,实例讲述了ThinkPHP基于数组操作数据库的方法,具有一定的参考借鉴价值,需要的朋友可以参考下 2014-11-11
ThinkPHP3.1新特性之多数据库操作更加完善对于早期版本的ThinkPHP来说,切换数据库需要使用高级模型,而现在的3.1版本则可以更加轻松的解决了。这篇文章主要介绍了ThinkPHP3.1对多数据库操作,需要的朋友可以参考下 2014-06-06
Laravel框架实现即点即改功能的方法分析这篇文章主要介绍了Laravel框架实现即点即改功能的方法,结合具体实例形式分析了Laravel框架即点即改功能的实现原理、步骤及相关操作技巧,需要的朋友可以参考下 2019-10-10
在PHP中使用FastCGI解析漏洞及修复方案这篇文章主要介绍了在PHP中使用FastCGI解析漏洞及修复方案的相关资料,需要的朋友可以参考下 2015-11-11
Laravel框架+Blob实现的多图上传功能示例这篇文章主要介绍了Laravel框架+Blob实现的多图上传功能,结合实例形式详细分析了Laravel框架+Blob进行多张图片上传操作的前端提交与后台处理相关操作技巧,需要的朋友可以参考下 2018-01-01
PHP数组的基本操作及遍历数组的经典操作实例下面小编就为大家带来一篇PHP数组的基本操作及遍历数组的经典操作实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 2017-08-08
Thinkphp 5.0实现微信企业付款到零钱这篇文章主要为大家详细介绍了Thinkphp 5.0实现微信企业付款到零钱,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 2018-09-09
最新评论
大家感兴趣的内容
1php获取数组长度的方法(有实例)2PHP保留两位小数的几种方法3PHP错误Allowed memory size of 674微信公众平台实现获取用户OpenID的方法5教你如何使用php session6使用PHP生成二维码的两种方法(带logo图像)7PHP删除数组中空值的方法介绍8php发送get、post请求的6种方法简明总结9PHP中把stdClass Object转array的几个方10微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
最近更新的内容
PHP 翻页 实例代码ThinkPHP实现转换数据库查询结果数据到对应类型的方法PHP不用递归遍历目录下所有文件的代码PHP dirname(__FILE__)原理及用法解析php在windows环境下获得cpu内存实时使用率(推荐)TP5框架实现自定义分页样式的方法示例PHP curl伪造IP地址和header信息代码实例Laravel如何友好的修改.env配置文件详解Yii框架分页技术实例分析PHP中CheckBox多选框上传失败的代码写法
常用在线小工具
微信
投稿
脚本任务
在线工具
关注微信公众号
关于我们 -
广告合作 -
联系我们 -
免责声明 -
网站地图 -
投诉建议 -
在线投稿
CopyRight 2006-2021 JB51.Net Inc All Rights Reserved. 脚本之家 版权所有