暂时未有相关云产品技术能力~
CSDN博客专家,Java领域优质创作者。
面试官经常问的Redis高频题目,我整理出来了,附参考答案,欢迎大家一起交流、补充和指正。
Redis的两种持久化机制RDB和AOF
面试热点:缓存穿透、缓存击穿、缓存雪崩的区别和解决方案
Redis双写一致性问题和解决方案
Redis集群环境搭建
本地连接阿里云部署的Redis
解决Redis安装时的编译报错问题
Redis的有序集合类型(Sorted Set)
Redis的集合类型
Redis的列表类型(List)
Redis的散列类型(Hash)
Redis的字符串类型(String)
【Redis实战】Redis安装在Linux系统
Redis安装在Windows系统
Redis(Remote Dictionary Server)是一个key-value的NoSQL产品,数据都是缓存在内存中,周期性的数据持久化。
策略模式作为一种软件设计模式,指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。
桥接模式是将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(interface)模式。
外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。
代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。
装饰者模式(Decorator Pattern)是一种比较常见的模式,其定义如下:动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更为灵活。
适配器模式(Adapter Pattern)将某个类的接口转换成客户端期望的另一个接口表示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同工作。适配器模式属于结构型模式,主要分为三类:类适配器模式、对象适配器模式、接口适配器模式。
构建者模式,将一个复杂对象分解成多个相对简单的部分,然后根据不同需要分别创建它们,最后构建成该复杂对象。例如:电脑是显示器、键盘、鼠标等等组成使用的,但客户只需购买就可以了,无需关注产品内部组成的细节。
原型模式,将一个对象作为原型,通过对其进行复制而克隆出多个和原型类似的新实例。
单例模式,某个类只能生成一个实例,该类提供了一个全局访问点供外部获取该实例,其拓展是有限多例模式。
抽象工厂模式提供一个创建产品族的接口,其每个子类可以生产一系列相关的产品。
工厂方法模式,是⼀种创建型设计模式。定义一个用于创建产品的接口,由子类决定生产什么产品。
软件设计模式(Design pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。
简单使用RedisTemplate操作Redis
Druid是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池、插件框架和SQL解析器组成。该项目主要是为了扩展JDBC的一些限制,可以让程序员实现一些特殊的需求,比如向密钥服务请求凭证、统计SQL信息、SQL性能收集、SQL注入检查、SQL翻译等,程序员可以通过定制来实现自己需要的功能。
RabbitMQ是采用 Erlang语言实现AMQP协议的消息中间件,AMQP全称是 Advanced Message Queue Protocolo,高级消息队列协议。它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产品、开发语言等条件的限制。
过滤器和拦截器的使用及其区别
在我们的项目中,通常会用到发邮件的需求,比如说:系统异常的预警、用户注册的邮箱验证、异地登录的提醒等等。在Spring Boot中,发送邮件使用的是Spring提供的JavaMailSender,其提供了许多简单易用的方法,可发送简单的邮件、HTML格式的邮件、带附件的邮件,并且可以创建邮件模板。
在我们平时的日常开发工作中,修改了Java代码或者配置文件的时候,必须手动重启项目才能生效。所谓的热部署就是在你修改了后端代码后不需要手动重启,工具会帮你快速的自动重启使其生效。其深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间。
Spring Boot Admin(SBA)是一款基于Actuator开发的开源项目,用于管理和监控Spring Boot应用程序。应用程序注册到我们的Spring启动管理客户端(通过HTTP)或使用Spring Cloud(例如Eureka)发现。UI只是一个AngularJs应用程序,位于Spring启动Actuator endpoints之上。以图形化界面的方式展示Spring Boot应用的配置信息、Beans信息、环境属性、线程信息、JVM状况等。
如何使用Actuator监控Spring Boot应用
定时任务注解@Scheduled的使用
集成Mybatis-Plus的实例详解
单元测试JUnit的使用
Redis配置Fastjson进行序列化和反序列化
AOP的两种动态代理(JDK和Cglib)
JdbcTemplate的使用
全局异常处理@ExceptionHandler+@ControllerAdvice的使用
Controller的使用及获取请求参数的示例
自定义事件及监听
条件注解@Conditional的使用
Spring Boot自定义启动图案
logback详解和最佳配置
图解properties和yml配置文件读取顺序
简述Spring Boot三种启动方式