
redis
java架构师小芷
java构架大数据每天分享干货
展开
-
看完这波3-5年Java程序员常问的高并发/缓存/高可用问题,甚是感叹
总结下最近被问到最多的几类问题,发现在解决这些问题的时候收获还是非常大。往往提出一个好问题其实是最难的,但是大部分做技术的人都不敢问或不好意思问甚至担心会被别人笑话,这才是真正的笑话。好像看似傻傻的问题只要能解决自己的困惑就是好样的 !整理了下,一起来看看你有没有这些疑惑?一.Redis相关的:二. 消息队列相关:三.、分库分表相关四、分布式服务框架五、分布式锁及分布式事务Zookeeper 都有哪些应用场景? 使用 Redis...原创 2020-10-09 20:03:55 · 225 阅读 · 2 评论 -
金九银十备战资源库:源码笔记+厂面试真题+跳槽解析
内容过多,不适合在文章全部阐述,在文末分享了我为金九银十准备的备战资源库,包含了源码笔记类,大厂面试真题,跳槽解析,简历解析,项目实战源码+笔记+工具,有需要的可以直接转发本文后,私信关键词【666】即可获取!!阿里一面1.JVM分区2.垃圾收集算法3.索引怎么优化4.一个8G的服务器,堆的大小应该设置成多少5.redis基本数据类型6.synchronized原理7.tcp三次握手8.海量数据求频率最多的100个9.spring一个事务中调用另外一个事务,另一个事务原创 2020-09-23 19:20:17 · 221 阅读 · 0 评论 -
京东三面遇Redis狂击,之后啃透189页成神之路笔记,二战阿里
一说到 Redis,现在可是无人不知无人不晓。在如今分布式,高并发的环境下,是开发的一件必备神器,系统配上了它,就好比如画龙点睛,整个系统都活了起来,系统的可用性,性能都能得到大大的提升。然而0202年了,Redis在很多一线大厂面试来说都是必不可少的部分,比如:Redis的key和数据结构应该怎么设计?有什么最佳实践? Redis集群如何均衡数据?又如何横向扩展? 怎么保证数据的一致性?热点数据的问题怎么解决? RDB持久化生成的数据快照,每次更新是全量更新还是增量更新? 缓存雪.原创 2020-09-17 18:33:33 · 136 阅读 · 0 评论 -
阿里三面倒在了缓存技术(Redis+MongDB)上,我闭关啃透这些实战笔记,顺利拿到offer
前几日有个小老弟找我哭诉,挤破脑袋进Alibaba,三轮技术下来倒在了缓存技术(Redis+MongDB)上。听完我这小老弟的一番肺腑之言,这...缓存架构技术:Redis+MongDB,不就是阿里P8面试必跳的坑?跳不过去那就只能say godbye了,在坑里“等死”呀...紧接着...吾日三省吾身,突然发现自己掌握的好像也不咋滴,不得不回家好好“补一补”。熬了三天三夜,四处收集缓存架构相关的:Redis+MongDB面试、实战等等笔记资料,完事之后感觉还不错呢,今天特地拿出来献宝~~别忘了私信原创 2020-09-15 14:35:51 · 178 阅读 · 0 评论 -
不支持原子性的 Redis 事务也叫事务吗?
假设现在有这样一个业务,用户获取的某些数据来自第三方接口信息,为避免频繁请求第三方接口,我们往往会加一层缓存,缓存肯定要有时效性,假设我们要存储的结构是 hash(没有String的'SET anotherkey "will expire in a minute" EX 60'这种原子操作),我们既要批量去放入缓存,又要保证每个 key 再加上过期时间(以防 key 永不过期),这时候事务操作是个比较好的选择为了确保连续多个操作的原子性,我们常用的数据库都会有事务的支持,Redis 也不例外。但它又.原创 2020-09-07 15:27:59 · 260 阅读 · 1 评论 -
hash、set、zset有多牛?从底层告诉你数据结构原理
前言今天来说下Redis中hash、set、zset的底层数据结构原理!Redis-哈希对象(hash)hash的底层存储有两种数据结构,一种是ziplist,另外一种是hashtable,这两种数据结构我们之前都有讲解,ziplist就是上文提到的结构,hashtable之前讲解的redis结构,hash对象只有同时满足以下条件,才会采用ziplist编码:hash对象保存的键和值字符串长度都小于64字节 hash对象保存的键值对数量小于512 ziplist存储的结构如下上.原创 2020-09-01 11:47:25 · 525 阅读 · 1 评论 -
深入理解Raft算法
前言最近在分布式系统一致性方面,Raft算法比较火啊。所以就抽时间看了下这个算法。之前已经有Paxos算法,用于解决分布式系统最终一致性问题,而且已经有了zookeeper这个成熟的开源实现。那么这个Raft算法有啥用呢?按照Raft官网的说法,这个算法的错误容忍和性能和Paxos算法类似,但是拥有更加简单易懂的设计。看过Paxos算法的童鞋们都知道,这货复杂地和屎一样,为了实现去中心化而考虑了各种复杂的边界条件和时序下的可靠性。而Raft算法则根据实际应用中的需要,简化了设计模型,不采用去中心原创 2020-08-29 17:23:05 · 722 阅读 · 0 评论 -
SpringCloud Gateway 身份认证
使用SpringCloud技术栈搭建微服务集群,可以选择的组件比较多,由于有些组件已经闭源或停更,这里主要选用spring-cloud-alibaba作为我们的技术栈。服务注册与发现: nacos-discovery 统一配置管理:nacos-config 微服务网关:spring cloud gateway由于nacos本身就已经是完备的服务,故参考官方文档直接安装使用就可以,这里重点介绍如何使用SpringCloud Gateway实现路由转发和身份认证。一、微服务架构所有的.原创 2020-08-19 14:51:39 · 983 阅读 · 0 评论 -
500道Java高级工程面试题解析,成功让我面过阿里,定级P7!
宅家里一个月,“闭关修炼”的你是不是正在为金三银四跳槽季发愁呢?小编今天说的这富含的15个互联网大厂Java高级工程师核心面试问题整理!内容包括:Java 集合 22 题及答案解析 JVM与调优 21 题及答案解析 并发编程 28 题及答案解析 Spring 25 题及答案解析 23种设计模式解析 Spring Boot25题及答案解析 分布式高并发架构解析(消息队列,分库分表,事务,高可用,微服务架构) MySQL高频20题解析 Redis45题及答案解析好好吃透消化,让你面试跳槽不原创 2020-08-18 19:37:57 · 443 阅读 · 1 评论 -
记一次使用Redis Cache引起的Bug排查及修复总结
一次产品需求愉快的上线后,翌日下午有用户反馈,工单流程状态不对,为何不对呢?经过跟用户微信电话沟通,工单提交后,流程子状态应该展示转存量。是的,没有错,业务流程 没有问题,应该是我的程序出现bug了。恰巧上线后翌日,北京气象局多次短信通知,有大暴雨,注意防涝。尽管如此,当日我依然来到公司,排查一些其他反馈问题。室外开始大雨来临, 我收拾电脑准备回家,到家后准备吃饭,微信群又反馈出现几单状态不正确,我回复"刚到家,吃饭后立即排查"。吃饭后,经过电脑前一系列排查最终找到问题,当时已经晚上22点多了。1..原创 2020-08-14 16:24:49 · 649 阅读 · 0 评论 -
简直骚操作,ThreadLocal还能当缓存用
背景说明有朋友问我一个关于接口优化的问题,他的优化点很清晰,由于接口中调用了内部很多的 service 去组成了一个完成的业务功能。每个 service 中的逻辑都是独立的,这样就导致了很多查询是重复的,看下图你就明白了。上层查询传递下去上层查询传递下去对于这种场景最好的就是在上层将需要的数据查询出来,然后传递到下层去消费。这样就不用重复查询了。如果开始写代码的时候是这样做的没问题,但很多时候,之前写的时候都是独立的,或者复用的老逻辑,里面就是有独立的查询。...原创 2020-08-11 14:45:21 · 401 阅读 · 0 评论 -
LVS+Keepalived 实现高可用负载均衡
一致的事物模型Spring的统一事务模型,解决的一个核心问题,就是不管你用的是什么数据访问方式,Hibernate、MyBatis、JDBC,你的Service层的代码都是一样的,不需要做任何变动。 无论使用JTA或DataSource事务Spring都能很好的统一在一起。事物抽象核心接口PlatformTransactionManager 事务管理器包路径 org.springframework.transaction.PlatformTransactionManager /**原创 2020-08-08 20:08:14 · 197 阅读 · 0 评论 -
Redis命令大全,满足你的日常工作,看这一篇就够了(求点赞)
前言(求点赞)我们呢,今天讲讲Redis的各种命令,这篇会把大家日常需要用到的命令全都列出来,满足你们的日常工作需求。redis五大数据类型redis键(key)常用命令命令 注释 keys * 获取所有的key select 0(库角标) 选择第几个库 move key 0(库角标) 将当前的数据库key移动到某个数据库,目标库有,则不能移动 flush 0(库角标) 清除指定库 randomkey 获取随机...原创 2020-08-08 19:05:17 · 133 阅读 · 0 评论