自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 面试文章合集

Java 面试题Java 面试题 001 - 010Java 面试题 011 - 020Java 面试题 021 - 030Java 面试题 031 - 040Java 面试题 041 - 050Java 面试题 051 - 060Java 面试题 061 - 070Java 面试题 071 - 080Java 面试题 081 - 090Java 面试题 091 - 100Java 面试题 101 - 110JVM 面试题JVM 面试题 001 - 010JVM 面试题 011

2021-03-03 20:30:47 229 1

原创 Kafka 面试题 001 - 010

001、kafka 的消息模型是什么?发布订阅模型。Topic 是通信载体,发布者发送消息到 Topic,订阅了 Topic 的消费者可以消费到消息。在 kafka 中一个 Topic 可以有多个分区。002、什么是Producer、Consumer、Broker、Topic、Partition?producer 是产生消息的一方consumer 是消费消息的一方broker 相当于一个 kafka 实例,多个 broker 可以组成集群topic:producer 将消息发送到 topic,

2021-03-15 01:08:11 353

原创 Redis 面试题 021 - 030

021、什么是哨兵模式?哨兵是一个独立的进程,它会监控所有 master 节点和 slave 节点,如果哨兵发现 master 节点宕机了,它会选择一个 slave 将其切换成 master,并通知其他 slave 节点。但是一个哨兵进程进行监控的时候还是可能会出现问题,因此可以设置多个哨兵进程进行监控,不同哨兵之间也能彼此感知到,如果一个哨兵感知到 master 节点宕机了并不会立马做出反应,而是会先询问其他哨兵,这种情况被称为主观下线,如果有超过指定数量的哨兵节点都认为 master 节点宕机了,那

2021-03-13 22:33:59 168

原创 Spring 家族面试题 031 - 040

031、什么是 Hystrix?服务熔断的意思是当某服务出现不可用或响应超时的情况时,为了防止整个服务出现雪崩,会暂停对该服务的调用。服务降级指的是当服务器压力剧增的情况下,根据当前业务情况及流量对一些服务和页面有策略的降级,以此释放服务器资源以保证核心任务的正常运行。Hystrix 提供的功能就是当服务 A 调用服务 B 失败次数达到一定阈值的时候,A 不会再去调用 B,而是会去执行本地的降级方法。032、什么是网关?网关就是一个专门处理外部请求的组件,一般都会提供请求转发、权限认证、流量控制、

2021-03-11 17:33:58 191 1

原创 Redis 面试题 011 - 020

011、Redis 内存淘汰机制有什么?volatile-lru(least recently used):从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中挑选将要过期的数据淘汰volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰allkeys-lru(least recently used

2021-03-07 21:31:14 196

原创 Redis 面试题 001 - 010

001、什么是 Redis?Redis 是一个使用 C 语言开发的内存数据库,读写速度非常快,它提供了多种数据类型来支持不同的业务场景,可以用作缓存、分布式锁甚至是消息队列。002、缓存数据的处理流程?如果用户请求的数据在缓存中存在的话就直接返回,如果不存在的话就看数据库中是否存在,数据库中有的话就更新缓存并返回对应的数据给用户,如果数据库中不存在的话就返回空数据。003、为什么要使用 Redis / 缓存?主要是为了满足系统高性能、高并发的要求。对于那种用户高频访问且不经常更改的数据,如果每

2021-03-07 21:28:45 126

原创 MyBatis 面试题 011 - 020

011、MyBatis 都有哪些 Executor 执行器?它们之间的区别是什么?MyBatis 内部维护了一个 Executor 接口,我们所进行的一系列增删改查操作实际上都是在调用这个接口,该接口有两个实现类,分别是 BaseExecutor 和 CachingExecutor,其中 BaseExecutor 是一个抽象类,它有三个实现 SimpleExecutor、ReuseExecutor、BatchExecutor,Executor 的继承结构如下图所示。SimpleExecutor:默认执

2021-03-03 17:57:07 153 2

原创 Spring 家族面试题 021 - 030

021、什么是 Spring 框架?有什么缺点?Spring 为企业级 Java 应用的开发提供了一种相对简单的方法,通过依赖注入和面向切面编程大大提高了开发效率,并且提高了系统的可维护性和可扩展性。Spring 的组件代码是轻量级的,但它的配置却是重量级的,为了简化配置,后来有创建了 Spring Boot。022、开发 RESTful 服务常用的注解有哪些?Spring Bean 相关@Autowired : 自动导入对象到类中,被注入进的类同样要被 Spring 容器管理。@RestCo

2021-03-03 17:53:39 316 1

原创 Spring 家族面试题 011 - 020

011、谈谈 Spring 中都用到了哪些设计模式?工厂模式:Spring 使用工厂模式通过 BeanFactory、ApplicationContext 创建 bean 对象。代理模式:Spring AOP 通过动态代理实现。单例模式:Spring 中的 Bean 默认都是单例的。模板模式:Spring 中 jdbcTemplate、hibernateTemplate 等以 Template 结尾的对数据库操作的类都使用到了模板模式。适配器模式:Spring MVC 中用适配器模式适配 Con

2021-03-03 17:24:22 121 1

原创 Spring 家族面试题 001 - 010

001、@RestController vs @Controller?@Controller 直接返回一个视图,广泛应用于前后端不分离的开发。@RestController 只返回对象,对象数据直接以 JSON 或 XML 形式写入 HTTP 响应(Response)中,广泛应用于前后端分离的开发模式。@Controller 和 @ResponseBody 配合使用效果和 @RestController 一样。002、谈谈你对 IoC 的理解?IoC(控制反转)是一种设计思想,就是将原本在程序中手

2021-03-03 14:31:05 162 1

原创 Java 面试题 101 - 110

101、什么是乐观锁和悲观锁?乐观锁是一种思想,在进行读写操作的时候都不会加锁,但在进行写操作的时候会判断数据是否被修改过。乐观锁适用于读多写少的场景,可以提高吞吐量。悲观锁是一种思想,每次读或写操作都会加锁,共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程,适用于写多读少的场景。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁、表锁、读锁、写锁等,都是在做操作之前先上锁。Java 中 synchronized 和 ReentrantLock 等独占锁都是悲观锁思想的实现。

2021-03-02 22:07:49 102

原创 Java 面试题 091 - 100

091、JUC 包中的原子类主要有哪些?基本类型使用原子的方式更新基本类型AtomicInteger:整形原子类AtomicLong:长整型原子类AtomicBoolean:布尔型原子类数组类型使用原子的方式更新数组里的某个元素AtomicIntegerArray:整形数组原子类AtomicLongArray:长整形数组原子类AtomicReferenceArray:引用类型数组原子类引用类型AtomicReference:引用类型原子类AtomicStampedRefe

2021-03-02 20:10:40 156

原创 Java 面试题 081 - 090

081、synchronized 关键字和 volatile 关键字的区别?volatile 是线程同步的轻量级实现,性能比 synchronized 好一些volatile 用于修饰变量,synchronized 用于修饰方法和代码块volatile 能保证可见性和有序性,但不能保证原子性;synchronized 能保证可见性和原子性,但不能保证有序性。082、ThreadLocal 是用来干什么的?通常情况下,我们创建的变量是可以被任何一个线程访问并修改的。如果想实现每一个线程都有自己的

2021-03-02 15:32:57 98

原创 MySQL 面试题 011 - 020

011、什么是快照读和当前读?不加锁的 select 操作就是快照读(即不加锁的非阻塞读),它读取的是事务开始后首次快照读的版本,有可能不是最新版本,基于 MVCC 实现,避免了加锁操作,降低了开销。但快照读有一个前提,隔离级别不能是SERIALIZABLE(可串行化),否则也会成为当前读。像 update,delete,insert,select lock in share mode(共享锁),select for update 这些操作都是当前读,读取的是记录的最新版本,会对读取的记录进行加锁,从而

2021-03-02 13:34:38 211

原创 MySQL 面试题 001 - 010

001、MyISAM 和 InnoDB 区别?是否支持行级锁 : MyISAM 只有表级锁(table-level locking),而 InnoDB 支持行级锁(row-level locking)和表级锁,默认为行级锁。是否支持事务和外键:MyISAM 不支持事务和外键,而 InnoDB 支持事务和外键。是否支持 MVCC(多版本并发控制):仅 InnoDB 支持。应对高并发事务,MVCC 比单纯的加锁更高效;MVCC只在 READ COMMITTED 和 REPEATABLE READ 两个隔

2021-03-01 14:23:39 245

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除