Windows 下 ThinkPHP5 配置 redis 缓存

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: Windows 下 ThinkPHP5 配置 redis 缓存

最近再写一个小的学校论坛项目,项目是基于 Vue + ThinkPHP5 开发的,在开发过程中遇到一个小问题让我纠结了好久,就是如何实现用户给帖子点赞。

用户给帖子点赞是一个很细节的小功能,在刚开始学习 Web 编程的时候曾经尝试过实现这个功能但总是会莫名其妙的卡住,当时觉得不是问题太难应该是我还没有学习相关的知识,直到最近开发项目的时候才发现问题并没有那么简单,我已经掌握了基本的前后端和数据库的知识但是具体实践起来还是有些困难,于是就百度了一下在V2EX上找到了这样一篇帖子 小菜我准备写一个简单的论坛...,看了里面大佬的回复才发现原来还是知识体系不全面,如大佬所言要很好的实现点赞功能需要借助 redis 等缓存机制来完成快速的读写。

于是我又赶紧补习了一下关于 redis 的一下皮毛并进行了 WindowsThinkPHP5 配置 redis 缓存,过程中还是有几个小坑的,于是写下这篇文章记录一下:

1. 声明

本教程所配置的仅是 Windows 下的开发环境并非服务器环境若需要服务器环境配置请自行百度。

2. 安装 php 的 redis 和 igbinary 拓展

php_igbinary : 在序列化和反序列化的效率上高于其自带的
php_redis : 效率是相当高有链表排序功能

首先在 phpinfo 页面查看本机 php 版本

php版本信息

然后分别点击 redis 拓展下载地址igbinary 拓展下载地址 下载相应的拓展

下载完成后解压,将 php_redis.dllphp_igbinary.dll 拷贝至 phpext 目录下,修改 php.ini ,在该文件中加入

; php_redis  
extension=php_igbinary.dll  
extension=php_redis.dll  

3. 下载 redisWindows server

下载地址

下载,解压后得到文件夹重命名为 redis 并将得到的文件夹移动到任意你想放置的位置
打开一个 cmd 窗口 使用 cd 命令切换目录到 redis 目录下运行 redis-server.exe redis.windows.conf

redis运行

得到上图信息则说明安装成功,若出现错误提示请按照提示信息自行百度解决或再文章下留言我看到后会第一时间回复

但是问题又来了,关闭 cmd 窗口就会关闭 Redis ,难道要一直开着吗?这显然是不科学的,下面看怎么在设置为自动运行:

// 将 redis 设置为开机自动运行
redis-server --service-install redis.windows.conf
// 设置完成后运行 redis
redis-server --service-start

推荐一个可视化工具 Redis Desktop Manager

效果图

4. ThinkPHP5 配置 redis 缓存

ThinkPHP5config.php 修改缓存方式为 redis

配置图
使用方法参考 ThinkPHP5 开发手册缓存说明

以上,就完成了 WindowsThinkPHP5 配置 redis 缓存

溜了溜了,接着去开发了...

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
23天前
|
存储 缓存 NoSQL
解决Redis缓存数据类型丢失问题
解决Redis缓存数据类型丢失问题
166 85
|
20天前
|
缓存 监控 NoSQL
Redis经典问题:缓存穿透
本文详细探讨了分布式系统和缓存应用中的经典问题——缓存穿透。缓存穿透是指用户请求的数据在缓存和数据库中都不存在,导致大量请求直接落到数据库上,可能引发数据库崩溃或性能下降。文章介绍了几种有效的解决方案,包括接口层增加校验、缓存空值、使用布隆过滤器、优化数据库查询以及加强监控报警机制。通过这些方法,可以有效缓解缓存穿透对系统的影响,提升系统的稳定性和性能。
|
2月前
|
缓存 NoSQL 关系型数据库
大厂面试高频:如何解决Redis缓存雪崩、缓存穿透、缓存并发等5大难题
本文详解缓存雪崩、缓存穿透、缓存并发及缓存预热等问题,提供高可用解决方案,帮助你在大厂面试和实际工作中应对这些常见并发场景。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
大厂面试高频:如何解决Redis缓存雪崩、缓存穿透、缓存并发等5大难题
|
2月前
|
缓存 NoSQL PHP
Redis作为PHP缓存解决方案的优势、实现方式及注意事项。Redis凭借其高性能、丰富的数据结构、数据持久化和分布式支持等特点,在提升应用响应速度和处理能力方面表现突出
本文深入探讨了Redis作为PHP缓存解决方案的优势、实现方式及注意事项。Redis凭借其高性能、丰富的数据结构、数据持久化和分布式支持等特点,在提升应用响应速度和处理能力方面表现突出。文章还介绍了Redis在页面缓存、数据缓存和会话缓存等应用场景中的使用,并强调了缓存数据一致性、过期时间设置、容量控制和安全问题的重要性。
47 5
|
2月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
86 4
|
2月前
|
Dart 搜索推荐 IDE
Windows下Zed编辑器配置Dart环境
本文介绍了Dart编程语言及其主要框架Flutter的优势,并推荐使用轻量级编辑器Zed进行Dart开发。详细步骤包括Dart环境的安装与配置,Zed编辑器的安装与个性化设置,以及如何在Zed中编写并运行Dart的HelloWorld程序。通过自定义任务实现Dart文件的快速运行,提高了开发效率。
|
2月前
|
监控 安全 网络安全
Windows Server管理:配置与管理技巧
Windows Server管理:配置与管理技巧
112 3
|
3月前
|
存储 缓存 NoSQL
数据的存储--Redis缓存存储(一)
数据的存储--Redis缓存存储(一)
126 1
|
3月前
|
消息中间件 缓存 NoSQL
Redis 是一个高性能的键值对存储系统,常用于缓存、消息队列和会话管理等场景。
【10月更文挑战第4天】Redis 是一个高性能的键值对存储系统,常用于缓存、消息队列和会话管理等场景。随着数据增长,有时需要将 Redis 数据导出以进行分析、备份或迁移。本文详细介绍几种导出方法:1)使用 Redis 命令与重定向;2)利用 Redis 的 RDB 和 AOF 持久化功能;3)借助第三方工具如 `redis-dump`。每种方法均附有示例代码,帮助你轻松完成数据导出任务。无论数据量大小,总有一款适合你。
88 6
|
2月前
|
存储 缓存 NoSQL
【赵渝强老师】基于Redis的旁路缓存架构
本文介绍了引入缓存后的系统架构,通过缓存可以提升访问性能、降低网络拥堵、减轻服务负载和增强可扩展性。文中提供了相关图片和视频讲解,并讨论了数据库读写分离、分库分表等方法来减轻数据库压力。同时,文章也指出了缓存可能带来的复杂度增加、成本提高和数据一致性问题。
【赵渝强老师】基于Redis的旁路缓存架构