Java面试题库,java每天定时任务

Redis作为主流的分布式缓存工具,提供String、Hash、List、Set和Sortedset等五种数据类型,广泛应用于计数、排行榜、用户访问记录和消息队列等场景。通过一致性哈希实现分布式,利用lua扩展功能和主从同步增强其功能。本文还介绍了基于一致性哈希的分布式实现,包括key的分布、client的选择以及异常处理和监控模块,帮助读者理解Redis的高性能缓存架构设计。
摘要由CSDN通过智能技术生成

Redis常用的数据类型

Redis的五种常用的数据类型分别是:String、Hash、List、Set和Sorted set

Redis的使用场景

1.Counting(计数)
2.展示最近、最热、点击率最高、活跃度最高等等条件的top list
3.用户最近访问记录也是redis list的很好应用场景
4.通过list的lpop及lpush接口进行队列的写入和消费
5.Redis 的Lua的功能扩展实际给Redis带来了更多的应用场景,你可以编写若干command组合作为一个小型的非阻塞事务或者更新逻辑
6.Redis提供的主从数据同步功能,其实是对cache的一个强有力功能扩展

小结

如此多的应用无非离不开Redis的所有特性

揭开Redis的神秘面纱

Redis是一个开源(KEY-VALUE键值对),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。采用单进程单线程模型,并发能力强大,是当前互联网架构中主流的分布式缓存工具。

Redis高性能缓存架构设计

1.架构设计

由于redis是单点,项目中需要使用,必须自己实现分布式。基本架构图如下所示:

2.分布式实现

通过key做一致性哈希,实现key对应redis结点的分布。

一致性哈希的实现:

hash值计算:通过支持MD5与MurmurHash两种计算方式,默认是采用MurmurHash,高效的hash计算。

一致性的实现:通过java的TreeMap来模拟环状结构,实现均匀分布

3.client的选择

对于jedis修改的主要是分区模块的修改,使其支持了跟据BufferKey进行分区,跟据不同的redis结点信息,可以初始化不同的ShardInfo,同时也修改了JedisPool的底层实现,使其连接pool池支持跟据key,value的构造方法,跟据不同ShardInfos,创建不同的jedis连接客户端,达到分区的效果,供应用层调用

4.模块的说明

脏数据处理模块,处理失败执行的缓存操作。

屏蔽监控模块,对于jedis操作的异常监控,当某结点出现异常可控制redis结点的切除等操作。

整个分布式模块通过hornetq,来切除异常redis结点。对于新结点的增加,也可以通过reload方法实现增加。(此模块对于新增结点也可以很方便实现)

最后

金三银四马上就到了,希望大家能好好学习一下这些技术点,需要领取这些学习资料和面试笔记的朋友请**赶紧点击这里免费获取!**

学习视频:

大厂面试真题:

)**

学习视频:

[外链图片转存中…(img-CHV3EuW5-1627018713356)]

大厂面试真题:

Java Web开发实例大全(提高卷)筛选、汇集了Java Web开发从基础知识到高级应用各个层面的大量实例及源代码,共有600个左右,每个实例及源代码按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进行了分析解读。 全书分为7篇23章,包括流行组件应用、数据应用、图表统计、Ajax框架应用、流行框架、网站安全与架构模式、综合应用等。重点内容有操作XML文件、发送与接收邮件、数据操作技术、SQL语句应用技术、复杂查询技术、数据高级应用、JFreeChart绘图基础、基础图表技术、扩展图表技术、基于Cewolf组件的图表编程、Prototype框架、jQuery框架、Dojo框架、Struts2框架应用、Struts2框架标签应用、Hibernate框架基础、Hibernate高级话题、Spring框架基础、Spring的 Web MVC 框架、网站性能优化与安全策略、设计模式与架构、网站设计与网页配色、Java Web典型项目开发案例等。配书光盘附带了实例的源程序。 《Java Web开发实例大全(提高卷)》既适合Java Web程序员参考和查阅,也适合Java Web初学者,如高校学生、软件开发培训学员及相关求职人员学习、练习、速查使用。 目录 第1篇 流行组件应用篇 第1章 操作XML文件 第2章 发送与接收邮件 第2篇 数据应用篇 第3章 数据操作技术 第4章 SQL语句应用技术 第5章 复杂查询技术 第6章 数据高级应用 第3篇 图表统计篇 第7章 JFreeChart绘图基础 第8章 基础图表技术 第9章 扩展图表技术 第10章 基于Cewolf组件的图表编程 第4篇 Ajax框架应用篇 第11章 Prototype框架 第12章 jQuery框架 第13章 Dojo框架 第5篇 流行框架篇 第14章 Struts2框架应用 第15章 Struts2框架标签应用 第16章 Hibernate框架基础 第17章 Hibernate高级话题 第18章 Spring框架基础 第19章 Spring的Web MVC框架 第6篇 网站安全与架构模式篇 第20章 网站性能优化与安全策略 第21章 设计模式与架构 第7篇 综合应用篇 第22章 网站设计与网页配色 第23章 Java Web典型项目开发案例
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值