列表
-
php
随着移动互联网的兴起,即时通讯(IM)系统已成为我们日常生活中不可或缺的一部分。因此,开发一款实用、高性能的IM系统已成为很多开发者追求的目标之一。在这个过程中,Swoole 和 Redis 是两种常用的性能工具,它们可以帮助我们快速构建高
-
php
随着互联网技术的不断发展,网站的访问量也越来越高,这给网站的性能带来了很大的挑战。为了提高网站的访问速度,很多网站都采用了缓存技术。而Redis作为一种高性能、内存存储数据库,被广泛应用于缓存、消息队列、位置信息等场景。在本文中,我们将介绍
-
php
Redis持久化方案Redis是内存数据库,数据都是存储在内存中,为了避免进程退出导致数据的永久丢失,需要定期将Redis中的数据以某种形式(数据或命令)从内存保存到硬盘。当下次Redis重启时,利用持久化文件实现数据恢复。除此之外,为了进
-
php
Redis 自带了一个叫redis-benchmark的工具来模拟 N 个客户端同时发出 M 个请求。 (类似于 Apacheab程序)。使用命令 redis-benchmark -h 可以查看基准测试参数。以下参数被支持: Usag
-
php
为什么 Redis 不使用基本的 Socket 编程模型?使用 Socket 模型实现网络通信时,需要经过创建 Socket、监听端口、处理连接和读写请求等多个步骤,现在我们就来具体了解下这些步骤中的关键操作,以此帮助我们分析 Socket
-
php
Spring 封装了 RedisTemplate 来操作 Redis,它支持所有的 Redis 原生的 API。在 RedisTemplate 中定义了对5种数据结构的操作方法。opsForValue():操作字符串。opsForList(
-
php
有个需求场景是这样的,使用redis控制scrapy运行的数量。设置系统后台为4后,scrapy最多只能启动4个任务,多余的任务将被排队等待。概况最近做了一个django + scrapy + celery + redis 的爬虫系统,客户
-
php
1 设置带过期时间的 keyexpire key seconds时间复杂度:O(1)设置key的过期时间。超时后,将会自动删除该key。在Redis的术语中一个key的相关超时是volatile的。超时后只有对key执行DEL、SET、GE
-
php
一、Why K8s1、资源隔离当前的Redis Cluster部署在物理机集群上,为了提高资源利用率节约成本,多业务线的Redis集群都是混布的。由于没有做CPU的资源隔离,经常出现某Redis节点CPU使用率过高导致其他Redis集群的节
-
php
一、为什么使用Redis在项目中使用Redis,笔者认为需要从性能和并发两个方面考虑。当然,Redis还具备可做分布式锁等功能的其它功能,但如果只是为了分布式锁这些其它功能,完全还有其它中间件(如Zookpeer等)可以代替,并不是非要使用
-
php
Redis 持久化机制Redis是一个支持持久化的内存数据库,通过持久化机制把内存中的数据同步到硬盘文件来保证数据持久化。当Redis重启后通过把硬盘文件重新加载到内存,就能达到恢复数据的目的。 实现:单独创建fork()一个子进程,将当前
-
php
RedisTemplate配置 序列和反序列化Spring Data Redis提供了优秀的封装,便于使用Redis操作。提供了一个高度封装的RedisTemplate类来进行一系列redis操作,连接池自动管理;同时将事务封装操作,交由容
-
php
一、集合概述 对于集合,STL 的 set 相信大家都不陌生,它的底层实现是红黑树。无论插入、删除、查找都是 O(log n) 的时间复杂度。当然,如果用哈希表来实现集合,插入、删除、查找都可以达到 O(1)。那么为什么集合要
-
php
需求描述某些页面需要配置广告或活动宣传图,广告或活动需满足随时上下线、过期自动下线及到时自动上线。如:现在时间2019-2-22 16:16:13,要在支付完成页面配置领奖活动,活动要在2019-3-10 00:00:00准时上线,在201
-
php
一、简介1、场景由于数据字典的变化不是很频繁,而且系统对数据字典的访问较频繁,所以我们有必要把数据字典的数据存入缓存,减少数据库压力和提高访问速度。这里,我们使用Redis作为系统的分布式缓存中间件。2、RedisTemplate在Spri
-
php
是数据结构而非类型很多文章都会说,redis支持5种常用的数据类型,这其实是存在很大的歧义。redis里存的都是二进制数据,其实就是字节数组(byte[]),这些字节数据是没有数据类型的,只有把它们按照合理的格式解码后,可以变成一个字符串,
-
php
我们写代码时,一般会先在自己电脑上进行开发,然后把代码部署到服务器上。如果一段代码涉及到读写数据库,或者访问某些其他的线上服务接口,那么在开发时,为了不影响线上环境,我们一般会把测试环境的数据库和线上环境的数据库分开。例如,我们的程序需要访
-
php
缓冲区(buffer),是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区。一、Redis缓冲区溢出影响在Redis中,主要有三个场景用到了缓冲区的概念。在客户
-
php
缓存击穿和缓存穿透不同的是,缓存击穿是指:缓存中没有,但是数据库中存在的热点数据。例如:首页的热点新闻,并发访问量非常大的热点数据,如果缓存过期失效,服务器会去查询DB,这时候如果大量的并发去查询DB,可能会瞬间压垮DB。画了个简图,如下所