关于laravel使用Redis实现网站缓存读取的方法
这篇文章主要给大家介绍了关于laravel使用Redis实现网站缓存读取的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们来一起学习学习吧。
redis的简介
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 Redis 与其他 key - value
缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
Redis支持数据的备份,即master-slave模式的数据备份。
Redis 优势
性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。
如何安装redis
1.Ubuntu(因为我用的是Homestead环境虚拟机是Ubuntu的所以只用过这一种方法安装)
官方给的Ubuntu安装方法
$sudo apt-get update $sudo apt-get install redis-server
由于我的网站采用的laravel的框架,要使用composer的方法安装
composer require predis/predis
如果安装了lumen微框架还需要安装illuminate/redis (5.2.*)
composer require illuminate/redis (5.2.*)
配置
如果安装了lumen
//需要在bootstrap/app.php里面加入此段代码 $app->register(Illuminate\Redis\RedisServiceProvider::class); $app->configure('database');
Redis可以用作主数据库,所以Laravel中Redis的配置信息位于config/database.php中:
'redis' => [ 'cluster' => false, 'default' => [ 'host' => '127.0.0.1', 'port' => 6379, 'database' => 0, ], ],
其中cluster选项表示是否在多个Redis节点间进行分片,这里我们本地测试只有一个节点故将其设置为false。
default选项表示默认Redis主机连接,这里Redis和Web服务器共用一台主机,所以host为127.0.0.1,Redis默认端口是6379。
此外,default选项还支持更多连接参数(如果需要的话):
参数 | 意义 | 默认值 |
---|---|---|
host | 服务器IP地址/主机名称 | 127.0.0.1 |
port | Redis服务器监听的端口号 | 6379 |
password | 如果服务器需要认证密码 | 不使用密码 |
database | 连接时选择的数据库索引 | 没有设置索引 |
timeout | 连接到Redis服务器超时时间 | 5秒 |
read_write_timeout | 通过网络连接进行读写操作的超时时间 | 系统默认(不限制超时时间的话设置为-1) |
read_write_timeout |通过网络连接进行读写操作的超时时间 |系统默认(不限制超时时间的话设置为-1)
另外Redis如果是作为缓存工具,还需要在config/cache.php配置redis选项:
'redis' => [ 'driver' => 'redis', 'connection' => 'default', ],
这里的connection对应config/database中redis的默认主机default配置。
完成上述配置之后我们就可以在应用代码中使用Redis进行数据存取了。
看一个实例————laravel的mysql与Redis搭配
我的想法是在读取的时候会先去缓存中去查找,如果找到那就大吉大利了,找不到再去数据库中查找并且调到缓存中。
if (Cache::has($key)){ //首先查寻cache如果找到 $values = Cache::get($>key); //直接读取cache return $values; }else{ //如果cache里面没有 $values = DB::select($sql); Cache::put($key,$value,$time); return $values; }
但是laravel的cache还提供了个remember函数
$values = Cache::remember($key,$time,function () { return DB::select($this->sql); });
如果缓存有直接读取并返回,如果缓存项在缓存中不存在,则返回给 remember 方法的闭包将会被运行,而且闭包的运行结果将会被存放在缓存中。
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
以上是关于laravel使用Redis实现网站缓存读取的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

从 Redis 官方源下载源码包编译安装,保证最新稳定版本,可个性化定制。具体步骤如下:更新软件包列表创建 Redis 目录下载 Redis 源码包解压源码包编译安装配置并修改 Redis 配置启动 Redis检查启动状态

在CentOS系统上启用Redis慢查询日志,提升性能诊断效率。以下步骤将指导您完成配置:第一步:定位并编辑Redis配置文件首先,找到Redis配置文件,通常位于/etc/redis/redis.conf。使用以下命令打开配置文件:sudovi/etc/redis/redis.conf第二步:调整慢查询日志参数在配置文件中,找到并修改以下参数:#慢查询阈值(毫秒)slowlog-log-slower-than10000#慢查询日志最大条目数slowlog-max-len

Laravel在后端开发中的核心功能包括路由系统、EloquentORM、迁移功能、缓存系统和队列系统。1.路由系统简化了URL映射,提高了代码组织和维护性。2.EloquentORM提供了面向对象的数据操作,提升了开发效率。3.迁移功能通过版本控制管理数据库结构,确保一致性。4.缓存系统减少数据库查询,提升响应速度。5.队列系统有效处理大规模数据,避免阻塞用户请求,提升整体性能。

在CentOS系统上安装和配置GitLab时,数据库的选择至关重要。GitLab兼容多种数据库,但PostgreSQL和MySQL(或MariaDB)最为常用。本文将分析数据库选择因素,并提供详细的安装和配置步骤。数据库选择指南选择数据库需要考虑以下因素:PostgreSQL:GitLab的默认数据库,功能强大,可扩展性高,支持复杂查询和事务处理,适合大型应用场景。MySQL/MariaDB:广泛应用于Web应用的流行关系型数据库,性能稳定可靠。MongoDB:NoSQL数据库,擅长处

Redis的数据库方法包括内存数据库和键值存储。1)Redis将数据存储在内存中,读写速度快。2)它使用键值对存储数据,支持复杂数据结构,如列表、集合、哈希表和有序集合,适用于缓存和NoSQL数据库。

CentOS下Redis配置疑难解答在CentOS系统上部署Redis时,可能会遇到各种问题。本文总结了一些常见问题及其解决方案,助您顺利完成Redis配置。常见问题与解决方案Redis编译安装失败问题:编译Redis源码时,可能遇到编译器版本过低、依赖库缺失或系统资源不足等情况。解决方案:升级GCC编译器:使用sudoyuminstallcentos-release-scl和sudoyuminstalldevtoolset-7,然后执行sclenabled

Docker 是一种实现 Redis 容器化的技术,确保服务的安全性、可移植性和可扩展性。先决条件:Docker 安装和 Redis 镜像。步骤:运行命令行 docker run 创建 Redis 容器。使用 Redis 客户端或命令行连接到容器。通过命令行启动/停止/重新启动容器。查看日志或删除容器。

在CentOS系统中为Redis设置密码,可以通过修改配置文件或使用命令行临时设置两种方法实现。方法一:修改redis.conf配置文件定位Redis配置文件:Redis配置文件通常位于/etc/redis/redis.conf。编辑配置文件:使用文本编辑器(如vi或nano)打开配置文件:sudovi/etc/redis/redis.conf设置密码:找到requirepass行(如果没有则添加),并将其后的值替换为你选择的密码:requirepassyour_st
