代码编织梦想

redis 分布式锁实现详解-爱代码爱编程

一、概述 分布式锁,即分布式系统中的锁。在单体应用中我们通过锁解决的是控制共享资源访问的问题,而分布式锁,就是解决了分布式系统中控制共享资源访问的问题。与单体应用不同的是,分布式系统中竞争共享资源的最小粒度从线程升级成了进程。基于 Redis 单机实现的分布式锁,其方式和 Memcached 的实现方式类似,利用 Redis 的 SETNX 命令,

could not read json: unexpected token (start-爱代码爱编程

目录 异常信息:   解决方法: 异常信息:  Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org

redis基础篇:redis的java客户端-爱代码爱编程

文章整理自B站黑马视频课程 第一章:客户端对比一:Jedis二:lettuce三:Redisson 第一章:客户端对比 Redis官网中提供了各种语言的客户端,供我们使用。 我们关注的一定是Java客户

redis 缓存的主要异常及解决方案-爱代码爱编程

1 导读 Redis 是当前最流行的 NoSQL 数据库。Redis 主要用来做缓存使用,在提高数据查询效率、保护数据库等方面起到了关键性的作用,很大程度上提高系统的性能。当然在使用过程中,也会出现一些异常情景,导致 Redis 失去缓存作用。 2 异常类型 异常主要有 缓存雪崩 缓存穿透 缓存击穿。 2.1 缓存雪崩 2.1.1 现象 缓

基于jedis的redis操作工具类-爱代码爱编程

JedisUtil.java package io.minio.uploadfile; import redis.clients.jedis.Jedis; import redis.clients.jedis.Jedis

好友关注-feed流实现方案-爱代码爱编程

9.3 好友关注-Feed流实现方案 当我们关注了用户后,这个用户发了动态,那么我们应该把这些数据推送给用户,这个需求,其实我们又把他叫做Feed流,关注推送也叫做Feed流,直译为投喂。为用户持续的提供“沉浸式”的体验,

狂神聊reids笔记-爱代码爱编程

狂神聊Redis Nosql概述 为什么用Nosql Memcached(缓存)+Mysql + 垂直拆分 分库分表+水平拆分+MySQL集群 早些年MyISAM:表锁,十分影响效率!高并发下就会出现严重的锁问题

redis 高频面试题,面试不用愁,看完直接吊打面试官-爱代码爱编程

1、说说 Redis 都有哪些应用场景? 缓存:这应该是 Redis 最主要的功能了,也是大型网站必备机制,合理地使用缓存不仅可以加 快数据的访问速度,而且能够有效地降低后端数据源的压力。共享Session:对于一些依

回归基础学习-mysql语法全面复习-爱代码爱编程

文章目录 一、基本概念数据库术语SQL 语法 二、增删改查插入数据更新数据删除数据查询数据 三、子查询WHEREIN 和 BETWEENAND、OR、NOTLIKE 四、连接和组合连接(JOIN)组

mysql 三万字精华总结 + 面试100 问,看完吊打面试官绰绰有余-爱代码爱编程

文章目录 二、存储引擎查看存储引擎存储引擎对比 三、数据类型四、索引基本语法:优势劣势MySQL索引分类MySQL索引结构哪些情况需要创建索引哪些情况不要创建索引MySQL高效索引 五、MySQL查询SQ

8.7 redis集群之故障自动转移-爱代码爱编程

1.集群节点信息 6372是6375的从节点。 2.挂掉6375,观察6372是否会晋升为主节点继续提供服务 ps -ef | grep redis kill -9 5928 从上图中可以看到,6372晋升为

java中redis相关-爱代码爱编程

JAVA中redis相关 [redis是什么] redis 是一个高性能的开源的、C语言写的Nosql(非关系型数据库),数据保存在内存中(快,容易丢失)。与mysql不一样的是,redis的数据是存储在内存中,因此它的

redis序列化设置,redis键、值...乱码-爱代码爱编程

使用redis存值的时候发现值有乱码的情况,这是因为RedisTemplate可以接收任意Object作为值写入Redis,只不过写入前会把Object序列化为字节形式,默认是采用JDK序列化RedisTemplate提供了

redis 持久化数据缓存 入门教程-爱代码爱编程

3. Redis持久化 3.1 Redis 持久化数据和缓存怎么做扩容? 如果 Redis 被当做缓存使用,使用一致性哈希实现动态扩容缩容。 如果 Redis 被当做一个持久化存储使用,必须使用固定的 keys-to

windows下redis的安装及php扩展使用-爱代码爱编程

本文为大家讲解的是在Windows下安装Redis和PHP扩展及简单使用方法,感兴趣的同学参考下。 1、下载redis的windows应用程序,支持32位和64位,根据实际情况下载 下载地址:https://github.com/dmajkic/redis/downloads 2、将相应的程序copy到你所需要的目录中,在这里我使用的64位,放到E:\r

php 操作redis 详细讲解-爱代码爱编程

phpredis是redis的php的一个扩展,效率是相当高有链表排序功能,对创建内存级的模块业务关系 很有用;以下是redis官方提供的命令使用技巧: 下载地址如下: https://github.com/owlient/phpredis(支持redis 2.0.4) Redis::__construct构造函数 $redis = new Re

redis 的安装配置介绍-爱代码爱编程

Redis logo redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。问题是这个项目还很新,可能还不足够稳定,而且没有在实际的一些大型系统应用的实例

redis令牌桶限流-爱代码爱编程

常用限流 Nginx Nginx+lua kong dinggo redis令牌桶   <?php class TrafficShaper{ private $_config; private $_queque; private $_max; private $redis;

redis有序集合zset底层怎么实现的-爱代码爱编程

Redis中的set数据结构底层用的是跳表实现的. 跳表是一个随机化的数据结构,实质就是一种可以进行二分查找的有序链表。 跳表在原有的有序链表上面增加了多级索引,通过索引来实现快速查找。 跳表不仅能提高搜索性能,同时也可以提高插入和删除操作的性能。 (1)跳表是可以实现二分查找的有序链表; (2)每个元素插入时随机生成它的level; (3)最

redis高效删除大key-爱代码爱编程

一、大key的删除问题 大key(bigkey)是指 key 的 value 是个庞然大物,例如 Hashes, Sorted Sets, Lists, Sets,日积月累之后,会变得非常大,可能几十上百MB,甚至到GB。 如果对这类大key直接使用 del 命令进行删除,会导致长时间阻塞,甚至崩溃。 因为 del 命令在删除集合类型数据时,时间复杂度为