时间过的好快呀,转眼马上到了金九银十,又是一年跳槽面试季,最近有很多网友都在求大厂面试题,希望可以提前准好面试,如果不准备充分的面试,完全是浪费时间,更是对自己的不负责。所以小编在这里给大家准备了一套Java技术岗面试真题,综合了今年上半年粉丝去阿里、字节、蚂蚁等互联网大厂的面试总结+小编整理的一起分享给大家,关注公众号:麒麟改bug获取,希望可以帮助大家,祝大家求职顺利。
一、Java基础专题面试
二、Java并发专题面试
三、Java框架专题面试
四、Java性能调优专题面试
五、分布式专题面试
六、数据库专题面试
七、微服务专题面试
八、中间件专题面试
Java 基础,是进行 Java 开发的前提,同样也是最容易被忽视的基础点。在开发中总会有一些知识点,很基础的、很重要,就是在使用时,突然想不起来。针对,在开发过程中遇到这些痛点,我进行了 Java 基础知识的梳理。
编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。为了使计算机能够理解人的意图,人类就必须要将需解决的问题的思路、方法、和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算机之间交流的过程就是编程。
优点: 性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、Linux/Unix 等一般采用面向过程开发,性能是最重要的因素。
缺点: 没有面向对象易维护、易复用、易扩展
优点: 易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护
缺点: 性能比面向过程低
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
5、jdk1.5之后的三大版本
6、关于 JVM JDK 和 JRE 最详细通俗的解答
7、创建一个对象用什么关键字?对象实例与对象引用有何不同?
8、抽象类能使用 final 修饰吗?
9、import java 和 javax 有什么区别
10、重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?
11、什么是反射机制?
12、static存在的主要意义
13、线程有哪些基本状态?
14、内部类相关,看程序说出运行结果
15、float f=3.4;是否正确
16、 Integer a= 127 与 Integer b = 127相等吗
17、抽象类和接口的对比
18、反射机制的应用场景有哪些?
19、Java应用程序与小程序之间有那些差别?
20、Java有哪些数据类型
21、 String有哪些特性
22、对象的相等与指向他们的引用相等,两者有什么不同?
23、字符型常量和字符串常量的区别
24、static的独特之处
25、在 Java 中定义一个不做事且没有参数的构造方法的作用
26、super关键字的用法
27、Java 面向对象编程三大特性: 封装 继承 多态
28、String 类的常用方法都有那些?
29、String str="i"与 String str=new String(“i”)一样吗?
30、什么是方法的返回值?返回值在类的方法里的作用是什么?
31、一个类的构造方法的作用是什么 若一个类没有声明构造方法,该程序能正确执行吗 ?为什么?
32、 String和StringBuffer、StringBuilder的区别是什么?String为什么是不可变的
33、是否可以继承 String 类
34、Java 中的异常处理
35、创建一个对象用什么运算符?对象实体与对象引用有何不同?
36、重载和重写的区别
37、内部类有哪些应用场景
38、Java 应用程序与小程序之间有那些差别
39、什么是内部类?
40、 this关键字的用法
Java 集合,面试必备,也是 Java 的核心 API,本文将从结构,实现及特性深入讲解各集合的特点。
Array 可以存储基本数据类型和对象,ArrayList 只能存储对象。
Array 是指定固定大小的,而 ArrayList 大小是自动扩展的。
Array 内置方法没有 ArrayList 多,比如 addAll、removeAll、iteration 等方法只有 ArrayList有。
链表的优点
链表的缺点
5、为什么HashMap中String、Integer这样的包装类适合作为K?
6、ConcurrentHashMap 和 Hashtable 的区别?
7、如何边遍历边移除Collection中的元素?
8、HashMap在JDK1.7和JDK1.8中有哪些不同?HashMap的底层实现
9、集合和数组的区别
10、HashMap 与 HashTable 有什么区别?
11、集合的特点
12、 什么是Hash算法
13、使用集合框架的好处
14、comparable 和 comparator的区别?
15、多线程场景下如何使用 ArrayList?
16、HashMap的put方法的具体流程?
17、HashSet如何检查重复?HashSet是如何保证数据不可重复的?
18、为什么 ArrayList 的 elementData 加上 transient 修饰?
19、TreeMap 和 TreeSet 在排序时如何比较元素?Collections 工具类中的 sort()方法如何比较元素?
20、说一下 HashSet 的实现原理?
21、ConcurrentHashMap 底层具体实现知道吗?实现原理是什么?
22、Collection 和 Collections 有什么区别?
23、TreeMap 和 TreeSet 在排序时如何比较元素?Collections 工具类中的 sort()方法如何比较元素?
24、HashSet与HashMap的区别
25、lterator和Listlterator有什么区别?
26、哪些集合类是线程安全的?
27、Java集合的快速失败机制“fail-fast"?
28、能否使用任何类作为 Map 的 key?
29、HashMap为什么不直接使用hashCode()处理后的哈希值直接作为table的下标?
30、集合框架底层数据结构
31、如何实现 Array 和 List 之间的转换?
32、什么是集合
33、什么是TreeMap 简介
34、ArrayList和LinkedList的区别是什么?
35、 HashMap的扩容操作是怎么实现的?
36、如何实现数组和List之间的转换?
37、 List 和 Set 的区别
38、 什么是红黑树
39、HashMap是怎么解决哈希冲突的?
40、遍历一个List有哪些不同的方式?每种方法的实现原理是什么? Java中List遍历的最佳实践是什么?
50、不要忽略异常
2、怎么确保一个集合不能被修改?
直接抛出异常
private static void readFile(String filePath) throws IOException {
File file = new File(filePath);
String result;
BufferedReader reader = new BufferedReader(new FileReader(file));
while((result = reader.readLine())!=null) {
System.out.println(result);
}
reader.close();
}
4、lterator 怎么使用?有什么特点?
5、HashMap是怎么解决哈希冲突的?
6、List 和 Set 的区别
7、ArrayList和LinkedList的区别是什么?
8、声明异常
9、说一下HashMap的实现原理?
10、异常会影响性能
11、Java异常架构
12、HashMap的扩容操作是怎么实现的?
13、如何实现数组和List之间的转换?
14、类 ExampleA 继承 Exception,类 ExampleB 继承ExampleA。
15、对异常进行文档说明
16、Java常见异常有哪些
17、List,Set,Map三者的区别?
18、HashMap 的长度为什么是2的幂次方
19、Java异常简介
20、ArrayList 和Vector的区别是什么?
21、优先明确的异常
22、什么是集合
23、throw 和 throws 的区别是什么?
24、如何选择异常类型
25、不要使用异常控制程序的流程
26、NoClassDefFoundError 和 ClassNotFoundException 区别?
27、不要捕获 Throwable 类
28、运行时异常和一般异常(受检异常)区别是什么?
29、优先捕获最具体的异常
30、捕获异常
31、遍历一个List有哪些不同的方式?每种方法的实现原理是什么? Java中List遍历的最佳实践是什么?
32、说一下ArrayList的优缺点
33、如果使用Object作为HashMap的Key,应该怎么办呢?
34、插入数据时,ArrayList、LinkedList、Vector谁速度较快?阐述 ArrayListVector、LinkedList 的存储性能和特性?
35、什么是TreeMap 简介
36、使用描述性消息抛出异常
37、在 finally 块中清理资源或者使用 try-with-resource 语句
38、try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?
39、不要记录并抛出异常
40、使用标准异常
3、Error 和 Exception 区别是什么?
4、 什么是LILO?
5、 请问当用户反馈网站访问慢,你会如何处理?
6、 简单 Linux 文件系统?
7、 Linux的基本组件是什么?
8、包装异常时不要抛弃原始的异常
9、 BASH和DOS之间的基本区别是什么?
10、什么是TreeMap 简介
11、什么是Linux
12、什么是红黑树
13、 Windows和Linux的区别
14、如何决定使用 HashMap 还是 TreeMap?
15、不要忽略异常
16、Unix和Linux有什么区别
17、 基本命令
18、 Linux 使用的进程间通信方式?
19、 一台 Linux 系统初始化环境后需要做一些什么安全工作?
20、 什么是BASH?
21、 Linux 有哪些系统日志文件?
22、 Linux系统安装多个桌面环境有帮助吗?
23、 开源的优势是什么?
24、 什么叫 CC 攻击?什么叫 DDOS 攻击?
25、 Linux 的体系结构
26、 如何规划一台 Linux 主机,步骤是怎样?
27、 什么是GUI?
28、 什么是交换空间?
29、使用描述性消息抛出异常
30、 Linux 的目录结构是怎样的?
1、删除远端仓库
2、基于当前分支创建新分支
3、删除已合并到 master 分支的所有本地分支
4、临时任务处理完后继续之前的工作
5、将仓库内所有变更都加入到暂存区
6、新建带备注标签
7、查看本地和远端分支
8、用图示显示所有分支的历史
9、将 A 分支合入到 B 分支中且为 merge 创建 commit
10、查看所有 stash
11、将指定文件添加到暂存区
12、某文件各行最后修改对应的 commit 以及作者
13、查看变更情况
14、当前仓库配置
15、比较某文件工作区和 HEAD 的差异
16、将 A 分支基于 B 分支做 rebase,以便将 B 分支合入到 A 分支
17、将当前目录及其子目录下所有变更都加入到暂存区
18、比较暂存区和 HEAD 的所有差异
19、比较工作区和暂存区的所有差异
20、基于某个 commit 创建分支
21、删除当前仓库配置
22、查看涉及到某文件变更的所有 commit
23、查看 global 配置
24、删除 global 配置
25、查看已有标签
26、将当前分支基于 B 分支做 rebase,以便将B分支合入到当前分支
27、查看当前工作分支及本地分支
28、删除一个本地标签
29、删除一个远端标签
30、查看哪些文件没被 Git 管控
1、在 Java 中,为什么不允许从静态方法中访问非静态变量?
2、Java 中什么叫单例设计模式?请用 Java 写出线程安全的单例模式
3、什么是设计模式?你是否在你的代码里面使用过任何设计模式?
4、在 Java 中,什么叫观察者设计模式(observer design pattern)?
5、设计一个 ATM 机,请说出你的设计思路?
6、在 Java 中,什么时候用重载,什么时候用重写?
7、请列举出在 JDK 中几个常用的设计模式?
8、举一个用 Java 实现的装饰模式(decorator design pattern)?它是作用于对象层次还是类层次?
9、使用工厂模式最主要的好处是什么?在哪里使用?
10、举例说明什么情况下会更倾向于使用抽象类而不是接口?
4、为什么要对网络协议分层
5、计算机网络体系结构
6、 什么是TCP/IP和UDP
7、 TCP与UDP区别:
8、 TCP和UDP的应用场景:
9、 形容一下TCP和UDP
10、 运行在TCP 或UDP的应用层协议分析
11、什么是ARP协议 (Address Resolution Protocol)?
12、什么是NAT (Network Address Translation, 网络地址转换)?
13、从输入址到获得页面的过程?
14、 TCP的三次握手
15、 用现实理解三次握手的具体细节
16、 建立连接可以两次握手吗?为什么?
17、 可以采用四次握手吗?为什么?
18、 第三次握手中,如果客户端的ACK未送达服务器,会怎样?
19、 如果已经建立了连接,但客户端出现了故障怎么办?
20、 初始序列号是什么?
21、 用现实理解三次握手的具体细节TCP的四次挥手
22、 为什么不能把服务器发送的ACK和FIN合并起来,变成三次挥手(CLOSE_WAIT状态意义是什么)?
23、 如果第二次挥手时服务器的ACK没有送达客户端,会怎样?
24、 客户端TIME_WAIT状态的意义是什么?
25、 什么是Socket
26、 socket属于网络的那个层面
27、 Socket通讯的过程
28、什么是Http协议?
29、Socket和http的区别和应用场景
30、什么是http的请求体?
只有调用了 start()方法,才会表现出多线程的特性,不同线程的 run()方法里面的代码交替执行。如果只是调用 run()方法,那么代码还是同步执行的,必须等待一个线程的 run()方法里面的代码全部执行完毕之后,另外一个线程才可以执行其 run()方法里面的代码。
这是一个相对艰难的多线程面试问题,它能达到很多的目的。第一,它可以检测侯选者是否能实际的用 Java 线程写程序;第二,可以检测侯选者对并发场景的理解,并且你可以根据这个问很多问题。如果他用 wait()和 notify()方法来实现阻塞队列,你可以要求他用最新的 Java 5 中的并发类来再写一次。
这是个关于线程和阻塞的棘手的问题,它有很多解决方法。如果线程遇到了 IO 阻塞,我并且不认为有一种方法可以中止线程。如果线程因为调用 wait()、sleep()、或者 join()方法而导致的阻塞,你可以中断线程,并且通过抛出 InterruptedException 来唤醒它。我之前写的《How to deal with blocking methods in java》有很多关于处理线程阻塞的信息。
5、你将如何使用 threaddump?你将如何分析 Thread dump?
6、线程池启动线程 submit()和 execute()方法有什么不同?
7、什么是重入锁?
8、一个线程运行时发生异常会怎样?
9、线程同步需要注意什么?
10、线程 yield()方法有什么用?
11、violatile 关键字的作用?
12、什么是乐观锁和悲观锁?
13、常用的几种线程池并讲讲其中的工作原理。
14、Java 中的 volatile 关键是什么作用?怎样使用它?在 Java 中它跟 synchronized 方法有什么不同?
15、你如何在 Java 中获取线程堆栈?
16、Jdk 中排查多线程问题用什么命令?
17、在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别?
18、多线程同步有哪几种方法?
19、什么是守护线程?有什么用?
20、Java 中堆和栈有什么不同?
21、 为什么我们调用 start()方法时会执行 run()方法,为什么我们不能直接调用 run()方法?
22、为什么 wait 和 notify 方法要在同步块中调用?
23、线程数过多会造成什么异常?
24、线程和进程的区别是什么?
25、什么是 CAS 算法?在多线程中有哪些应用。
26、现在有 T1
27、线程怎样拿到返回结果?
28、为什么 wait/notify/notifyAll 这些方法不在 thread 类里面?
29、什么是不可变对象,它对写并发应用有什么帮助?
30、Hashtable 的 size()方法为什么要做同步?
31、怎么控制同一时间只有 3 个线程运行?
32、说说线程安全的和不安全的集合。
33、用 Java 编程一个会导致死锁的程序,你将怎么解决?
34、用 Java 写代码来解决生产者——消费者问题。
35、什么是自旋锁?
36、什么是原子操作,Java 中的原子操作是什么?
37、ThreadLocal 是什么?有什么应用场景?
38、线程之间如何传递数据?
39、什么是原子性
40、Fork/Join 框架是干什么的?
当一个线程需要调用对象的 wait()方法的时候,这个线程必须拥有该对象的锁,接着它就会释放这个对象锁并进入等待状态直到其他线程调用这个对象上的 notify()方法。同样的,当一个线程需要调用对象的 notify()方法时,它会释放这个对象的锁,以便其他在等待的线程就可以得到这个对象锁。由于所有的这些方法都需要线程持有对象的锁,这样就只能通过同步来实现,所以他们只能在同步方法或者同步块中被调用。
一般来说,共享变量要求变量本身是线程安全的,然后在线程内使用的时候,如果有对共享变量的复合操作,那么也得保证复合操作的线程安全性。
5、 synchronized 和 Lock 有什么区别?
6、既然提到可以通过配置不同参数创建出不同的线程池,那么Java中默认实现好的线程池又有哪些呢?请比较它们的异同。
7、你刚才提到获取对象的锁,这个“锁”到底是什么?如何确定对象的锁?
8、 为什么要使用并发编程
9、 并发队列和并发集合的区别:
10、 线程池中 submit() 和 execute() 方法有什么区别?
11、 如何避免线程死锁
12、 什么是重排序
13、 并发关键字 synchronized ?
14、 线程和进程区别
15、 你是如何调用 wait() 方法的?使用 if 块还是循环?为什么?
16、 用过ConcurrentHashMap,讲一下他和HashTable的不同之处?
17、 原子类的常用类
18、请谈谈ThreadLocal是怎么解决并发安全的?
19、 Thread 类中的 yield 方法有什么作用?
20、 notify() 和 notifyAll() 有什么区别?
21、 finalize()方法什么时候被调用?析构函数(finalization)的目的是什么?
22、 synchronized可重入的原理
23、 怎么判断并发队列是阻塞队列还是非阻塞队列
24、JVM对Java的原生锁做了哪些优化?
25、 常用并发列队的介绍:
26、 Java 中你怎样唤醒一个阻塞的线程?
27、如何让Java的线程彼此同步?你了解过哪些同步器?请分别介绍下。
28、 什么是ThreadPoolExecutor?
29、 什么叫线程安全?servlet 是线程安全吗?
30、 单例模式了解吗?给我解释一下双重检验锁方式实现单例模式!”
31、 Java中垃圾回收有什么目的?什么时候进行垃圾回收?
32、 创建线程的四种方式
33、请对比下volatile对比Synchronized的异同。
34、 什么是 CAS
35、 常用的并发工具类有哪些?
36、 volatile 能使得一个非原子操作变成原子操作吗?
37、 多线程应用场景
38、 说一下 Atomic的原理?
39、 Java 程序中怎么保证多线程的运行安全?
40、 乐观锁和悲观锁的理解及如何实现,有哪些实现方式?
当一个类收到了类加载请求时,不会自己先去加载这个类,而是将其委派给父类,由父类
去加载,如果此时父类不能加载,反馈给子类,由子类去完成类的加载。
在 java 中,程序员是不需要显示的去释放一个对象的内存的,而是由虚拟机自行执行。在JVM 中,有一个垃圾回收线程,它是低优先级的,在正常情况下是不会执行的,只有在虚拟机空闲或者当前堆内存不足时,才会触发执行,扫面那些没有被任何引用的对象,并将它们添加到要回收的集合中,进行回收。
5、说一下JVM运行时数据区
6、Java会存在内存泄漏吗?请说明为什么?
7、堆栈的区别是什么?
8、简单说说你了解的类加载器,可以打破双亲委派么,怎么打破。
9、MinorGC
10、能不能解释一下本地方法栈?
11、对象什么时候可以被垃圾器回收
12、详解JVM内存模型
13、堆里面的分区:Eden,survival(from+to),老年代,各自的特点。
14、GC是什么?为什么要GC
15、JVM的GC收集器设置
16、你听过直接内存吗?
17、java类加载过程?
18、说说你知道的几种主要的JVM参数
19、强引用
20、常用的JVM调优的参数都有哪些?
21、JVM垃圾回收算法有哪些?
22、Jdk和Jre和JVM的区别
23、我们开发人员编写的Java代码是怎么让电脑认识的
24、能不能解释一下方法区
25、怎么打出线程栈信息。
26、GC的三种收集方法:标记清除
27、SafePoint是什么
28、为什么新生代要分Eden和两个Survivor区域?
29、GC收集器有哪些?CMS收集器与G1收集器的特点。
30、知道垃圾收集系统吗?
31、垃圾回收器的原理是什么?有什么办法手动进行垃圾回收?
32、什么是JVM字节码执行引擎
33、什么情况下会发生栈内存溢出。
34、详细的介绍下程序计数器?(重点理解)
35、JVM调优的参数可以在那设置参数值
36、简述java类加载机制?
37、说一下类装载的执行过程?
38、JVM内存模型的相关知识了解多少,比如重排序,内存屏障,happen-before,主内存,工作内存。
39、你知道哪几种垃圾收集器,各自的优缺点,重点讲下cms和G1,包括原理,流程,优缺点。
40、类加载的几个过程:
41、什么是类加载器,类加载器有哪些?
42、FullGC是什么
43、怎么判断对象是否可以被回收?
44、java中垃圾收集的方法有哪些?
45、详细介绍下Java虚拟机栈?(重点理解)
46、为什么要这样分代:
47、详细介绍下Java虚拟机栈?
48、为什么说java是跨平台语言
49、简述分代垃圾回收器是怎么工作的?
50、讲一下新生代
5、Netty 内部执行流程
6、Spring Bean 的生命周期
7、Spring 事务实现方式
8、Spring 事务底层原理
9、TCP 粘包/拆包的解决办法
10、原生的 NIO 在 JDK 1.7 版本存在 epoll bug
11、如何自定义注解实现功能
12、Spring 的单例实现原理
13、Netty 线程模型
14、Spring AOP 实现原理
15、说说 Spring AOP
16、说说 Netty 的零拷贝
17、Spring MVC 启动流程
18、Spring 框架中用到了哪些设计模式
19、什么是 TCP 粘包/拆包
20、动态代理(cglib 与 JDK)
21、BeanFactory 和 ApplicationContext 有什么区别
答:Hibernate 属于全自动 ORM 映射工具,使用 Hibernate 查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。而 Mybatis 在查询关联对象或关联集合对象时,需要手动编写 sql 来完成,所以,称之为半自动 ORM 映射工具。
注:这道题出自京东面试官。
还 有 很 多 其 他 的 标 签 , 加 上 动 态 sql 的9 个 标签,trim|where|set|foreach|if|choose|when|otherwise|bind等 , 其 中 为sql片段标签,通过标签引入 sql 片段,为不支持自增的主键生成策略标签。
6、Mybatis是否支持延迟加载?如果支持,它的实现原理是什么?
7、Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式?
8、Mybatis能执行一对一、一对多的关联查询吗?都有哪些实现方式,以及它们之间的区别?
9、传统JDBC开发存在什么问题?
10、Mybatis是如何进行分页的?分页插件的原理是什么?
11、IBatis和MyBatis在核心处理类分别叫什么?
12、IBatis和MyBatis在细节上的不同有哪些?
13、Hibernate和MyBatis的区别
14、Mybatis如何执行批量操作
15、{}和${}的区别
16、Mybatis中如何指定使用哪一种Executor执行器?
17、MyBatis的框架架构设计是怎么样的
18、简述Mybatis的Xml映射文件和Mybatis内部数据结构之间的映射关系?
19、Mybatis是否可以映射Enum枚举类?
20、Mybatis比IBatis比较大的几个改进是什么?
21、Mapper编写有哪几种方式?
22、MyBatis实现一对一有几种方式?具体怎么操作的?
23、在mapper中如何传递多个参数
24、ORM是什么
25、简述Mybatis的插件运行原理,以及如何编写一个插件。
26、MyBatis是什么?
27、简述Mybatis的插件运行原理,以及如何编写一个插件?
28、Mybatis执行批量插入,能返回数据库主键列表吗?
29、如何获取自动生成的(主)键值?
30、MyBatis的功能架构是怎样的
5、阻塞BIO(blockingI/O)
6、异步AIO(asynchronousI/O)
7、IO基本操作讲解
8、非阻塞NIO(noblockingI/O)
9、使用Netty实现网络通信
10、信号驱动IO(signalblockingI/O)
11、TCP粘包/拆包的原因及解决方法?
12、在了解不同的IO之前先了解:同步与异步,阻塞与非阻塞的区别
13、BIO和NIO、AIO的区别
14、什么是IO
15、NIOEventLoopGroup源码?
16、什么Netty
17、什么是内核空间
18、BufferedReader属于哪种流,它主要是用来做什么的,它里面有那些经典的方法
19、在实现序列化接口是时候一般要生成一个serialVersionUID字段,它叫做什么,一般有什么用
20、什么是NIO
21、什么叫对象序列化,什么是反序列化,实现对象序列化需要做哪些工作
22、NIO的组成?
23、Netty的高性能表现在哪些方面?
24、BIO编程会出现什么问题?
25、使用NIO实现网络通信
26、多线程解决BIO编程会出现的问题
27、Netty的零拷贝实现?
28、网络操作IO讲解
29、Netty的线程模型?
30、IO流的分类
31、怎么生成SerialversionUID
32、Netty的特点?
33、什么是比特(Bit),什么是字节(Byte),什么是字符(Char),它们长度是多少,各有什么区别
34、IO的常用类和方法,以及如何使用
35、为什么图片、视频、音乐、文件等都是要字节流来读取
36、五种IO模型
37、BIO、NIO和AIO的区别?
38、什么是BIO
39、Java中流类的超类主要有那些?
40、什么是AIO
41、网络操作IO编程演变历史
为了通过一个不同的端口开启 Nginx,你必须进入/etc/Nginx/sitesenabled/,如果这是默认文件,那么你必须打开名为“default”的文件。编辑文件,并放置在你想要的端口:
静态资源访问,就是存放在nginx的html页面,我们可以自己编写
ngx_http_upstream_module 用于定义可通过 fastcgi 传递、proxy 传递、uwsgi传递、memcached 传递和 scgi 传递指令来引用的服务器组。
5、限流怎么做的?
6、什么是正向代理和反向代理?
7、location的语法能说出来吗?
8、Nginx应用场景?
9、请列举Nginx服务器的最佳用途
10、解释如何在Nginx中获得当前的时间?
11、为什么要用Nginx?
12、什么是Nginx?
13、解释如何在Nginx服务器上添加模块?
14、在Nginx中,如何使用未定义的服务器名称来阻止处理请求?
15、如何用Nginx解决前端跨域问题?
16、请陈述stub_status和sub_filter指令的作用是什么?
17、Nginx配置文件nginx.conf有哪些属性模块?
18、在Nginx中,解释如何在URL中保留双斜线?
19、为什么Nginx性能这么高?
20、漏桶流算法和令牌桶算法知道?
21、怎么限制浏览器访问?
22、用Nginx服务器解释-s的目的是什么?
23、请解释Nginx如何处理HTTP请求
24、Nginx怎么做的动静分离?
25、Nginx目录结构有哪些?
26、Nginx负载均衡的算法怎么实现的?策略有哪些?
27、请解释什么是C10K问题?
28、解释Nginx是否支持将请求压缩到上游?
29、使用“反向代理服务器”的优点是什么?
30、location的作用是什么?
31、Nginx的优缺点?
32、请解释是否有可能将Nginx的错误替换为502错误、503?
33、请列举Nginx和Apache之间的不同点
34、Nginx怎么处理请求的?
35、使用“反向代理服务器的优点是什么?
36、Nginx怎么判断别IP不可访问?
37、请解释Nginx服务器上的Master和Worker进程分别是什么?
38、Nginx配置高可用性怎么配置?
39、为什么要做动静分离?
40、Nginx虚拟主机怎么配置?
41、Rewrite全局变量是什么?
Ng:(nginx) upstream yy_001{
server 10.99.99.99:8080;
server 10.99.99.100:8080;
hash $**;
healthcheck_enabled;
healthcheck_delay 3000;
healthcheck_timeout 1000;
healthcheck_failcount 2;
healthcheck_send 'GET /healthcheck.html HTTP/1.0' 'Host: wo.com' 'Connection: close';
}
server {
include base.conf;
server_name wo.de.tian;
... location /yy/ {
proxy_pass http://yy_001; }
首先 dns 解析 wo.de.tian机器,一般是ng服务器ip地址
然后 ng根据server的配置,寻找路径为 yy/的机器列表,ip和端口
最后 选择其中一台机器进行访问—->下面为详细过程
当容器启动时,会读取在webapps目录下所有的web应用中的web.xml文件,然后对xml文件进行解析,并读取servlet注册信息。然后,将每个应用中注册的servlet类都进行加载,并通过反射的方式实例化。(有时候也是在第一次请求时实例化)在servlet注册时加上如果为正数,则在一开始就实例化,如果不写或为负数,则第一次请求实例化。
IBM ISA,JProfiler、probe 等,具体监控及分析方式去网上搜索即可
5、添加 JMS 远程监控
6、关于 Tomcat 的 session 数目
7、监视 Tomcat 的内存使用情况
8、Tomcat 有几种部署方式?
9、监视Tomcat的内存使用情况
10、关于Tomcat的session数目
11、Tomcat工作模式?
12、共享 session 处理
13、tomcat 有哪几种 Connector 运行模式(优化)?
14、Tomcat 工作模式?
15、Tomcat的缺省端口是多少,怎么修改?
16、Tomcat 的缺省端口是多少,怎么修改?
17、共享session处理
18、垃圾回收策略调优
19、Tomcat 一个请求的完整过程
20、Tomcat有几种部署方式?
21、添加JMS远程监控
22、tomcat 如何优化?
23、tomcat 容器是如何创建 servlet 类实例?用到了什么原理?
24、打印类的加载情况及对象的回收情况
25、tomcat 有哪几种Connector 运行模式(优化)?
CAS 只对单个共享变量有效,当操作涉及跨多个共享变量时 CAS 无效。但是从 JDK 1.5 开始,提供了 AtomicReference 类来保证引用对象之间的原子性,你可以把多个变量放在一个对象里来进行 CAS 操作.所以我们可以使用锁或者利用 AtomicReference 类把多个共享变量合并成一个共享变量来操作。
乐观锁一般会使用版本号机制或 CAS 算法实现。
5、CAS 与 synchronized 的使用情景
6、CAS 算法
7、乐观锁的缺点
8、乐观锁
9、两种锁的使用场景
默认使用 Hessian 序列化,还有 Duddo、FastJson、Java 自带序列化。
dubbo 在调用服务不成功时,默认是会重试两次。
随着服务化的进一步发展,服务越来越多,服务之间的调用和依赖关系也越来越复杂,诞生了面向服务的架构体系(SOA),也因此衍生出了一系列相应的技术,如对服务提供、服务调用、连接处理、通信协议、序列化方式、服务发现、服务路由、日志输出等行为进行封装的服务框架。就这样为分布式系统的服务治理框架就出现了,Dubbo 也就这样产生了。
5、Dubbo服务注册与发现的流程?
6、Dubbo类似的分布式框架还有哪些?
7、RPC和SOA、SOAP、REST的区别
8、dubbo连接注册中心和直连的区别
9、dubbo通信协议dubbo协议为什么采用异步单一长连接:
10、同一个服务多个注册的情况下可以直连某一个服务吗?
11、Dubbo如何优雅停机?
12、Dubbo在安全机制方面是如何解决的
13、Dubbo超时设置有哪些方式?
14、Dubbo与Spring的关系?
15、Dubbo的注册中心集群挂掉,发布者和订阅者之间还能通信么?
16、Dubbo集群提供了哪些负载均衡策略?
17、Dubbo和SpringCloud的区别?
18、Dubbo的架构设计?
19、服务调用超时问题怎么解决?
20、Dubbo的集群容错方案有哪些?
21、Dubbo的整体架构设计有哪些分层?
22、Dubbo和SpringCloud的关系?
23、Dubbo核心组件有哪些?
24、Dubbo超时时间怎样设置?
25、Dubbo中zookeeper做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么?
26、Dubbo服务降级,失败重试怎么做?
27、Dubbo和SpringCloud有什么哪些区别?
28、Dubbo可以对结果进行缓存吗?
29、DubboMonitor实现原理?
30、服务上线怎么兼容旧版本?
31、Dubbo支持哪些协议,每种协议的应用场景,优缺点?
32、Dubbo有哪些注册中心?
33、Dubbo在安全方面有哪些措施?
34、服务提供者能实现失效踢出是什么原理?
35、Dubbo有些哪些注册中心?
36、Dubbo支持服务降级吗?
37、Dubbo必须依赖的包有哪些?
38、Hessian协议
39、说说核心的配置有哪些?
40、dubbo通信协议dubbo协议适用范围和适用场景
41、PRC架构组件
42、DubboSPI和JavaSPI区别?
43、Dubbo用到哪些设计模式?
44、Dubbo提供了常见的集群策略实现,并预扩展点予以自行实现
45、为什么要有RPC
46、Dubbo核心功能有哪些?
47、Dubbo服务器注册与发现的流程?
48、RPC使用了哪些关键技术?
49、Dubbo是什么?
50、Dubbo和Dubbox之间的区别?
51、Dubbo支持哪些协议,它们的优缺点有哪些?
52、dubbo服务集群配置(集群容错模式)
53、Dubbo使用的是什么通信框架?
54、主流RPC框架有哪些
55、RPC的实现原理架构图
56、Dubbo的主要应用场景?
57、Dubbo配置文件是如何加载到Spring中的?
58、Dubbo支持分布式事务吗?
59、Dubbo在安全机制方面是如何解决?
60、Dubbo框架设计一共划分了10个层:
61、Dubbo的核心功能?
62、Dubbo集群的负载均衡有哪些策略
63、dubbo服务负载均衡策略?
64、Dubbo使用过程中都遇到了些什么问题?
65、Dubbo的默认集群容错方案?
66、Dubbo的使用场景有哪些?
67、服务调用是阻塞的吗?
68、RPC框架需要解决的问题?
69、什么是RPC
70、Dubbotelnet命令能做什么?
71、Dubbo和SpringCloud有什么关系?
72、RPC的实现基础?
Lucene 是有索引和搜索的两个过程,包含索引创建,索引,搜索三个要点。可以基于这个脉络展开一些。
选了一个 master,另外 10 个选了另一个 master,怎么办?
(1)当集群 master 候选数量不小于 3 个时,可以通过设置最少投票通过数量
(discovery.zen.minimum_master_nodes)超过所有候选节点一半以上来解决脑裂问题;
(3)当候选数量为两个时,只能修改为唯一的一个 master 候选,其他作为 data节点,避免脑裂问题。
4、elasticsearch索引数据多了怎么办,如何调优,部署?
5、如何监控Elasticsearch集群状态?
6、Elasticsearch在部署时,对Linux的设置有哪些优化方法?
7、介绍一下你们的个性化搜索方案?
8、Elasticsearch是一个分布式的RESTful风格的搜索和数据分析引擎。
9、在并发情况下,Elasticsearch如果保证读写一致?
10、详细描述一下Elasticsearch更新和删除文档的过程。
11、对于GC方面,在使用Elasticsearch时要注意什么?
12、介绍下你们电商搜索的整体技术架构。
13、Elasticsearch是如何实现Master选举的?
14、Elasticsearch对于大数据量(上亿量级)的聚合如何实现?
15、elasticsearch的倒排索引是什么
16、详细描述一下Elasticsearch索引文档的过程。
17、在Elasticsearch中,是怎么根据一个词找到对应的倒排索引的?
18、拼写纠错是如何实现的?
19、详细描述一下Elasticsearch搜索的过程?
20、是否了解字典树?
21、elasticsearch了解多少,说说你们公司es的集群架构,索引数据大小,分片有多少,以及一些调优手段
22、Elasticsearch是一个高度可伸缩的开源全文搜索和分析引擎。它允许您快速和接近实时地存储
23、客户端在和集群连接时,如何选择特定的节点执行请求的?
24、详细描述一下Elasticsearch搜索的过程。
25、Elasticsearch在部署时,对Linux的设置有哪些优化方法
26、详细描述一下Elasticsearch索引文档的过程
34、Redis当中有哪些数据结构
过期时间最大可以达到 30 天。memcached 把传入的过期时间(时间段)解释成时间点后,一旦到了这个时间点,memcached 就把 item 置为失效状态。这是一个简单但 obscure的机制。
3、为什么单个item的大小被限制在1Mbyte之内?
5、memcached的内存分配器是如何工作的?为什么不适用malloc/free!?为何要使用slabs?
6、memcached是如何做身份验证的?
7、memcached如何处理容错的?
8、memcached最大的优势是什么?
9、memcached和服务器的localcache(比如PHP的APC、mmap文件等)相比,有什么优缺点?
10、memcached的cache机制是怎样的?
11、memcached和MySQL的querycache相比,有什么优缺点?
12、memcached能够更有效地使用内存吗?
13、我需要把memcached中的item批量导出导入,怎么办?
14、简述Memcached内存管理机制原理?
15、memcached的多线程是什么?如何使用它们?
16、memcached能接受的key的最大长度是多少?
17、memcached最大能存储多大的单个item?
18、memcached是怎么工作的?
19、如何将memcached中item批量导入导出?
20、什么是二进制协议,我该关注吗?
21、memcached与redis的区别?
22、memcached如何实现冗余机制?
23、如果缓存数据在导出导入之间过期了,您又怎么处理这些数据呢?
24、Memcached服务分布式集群如何实现?
25、Memcached服务特点及工作原理是什么?
26、memcached是原子的吗?
可以
不需要,移动操作是一致(consistent)并且是确定性的(deterministic);一次失败后,移动操作会不断重试;当完成后,数据只会出现在新的分片里
更新操作会立即发生在旧的块(Chunk)上,然后更改才会在所有权转移前复制到新的分片上。
GridFS 是一种将大型文件存储在 MongoDB 中的文件规范。使用 GridFS 可以将大文件分隔成多个小文档存放,这样我们能够有效的保存大文档,而且解决了 BSON 对象有限制的问题。
6、更新操作立刻fsync到磁盘?
7、NoSQL数据库有哪些类型?
8、journal回放在条目(entry)不完整时(比如恰巧有一个中途故障了)会遇到问题吗?
9、什么是secondary或slave?
10、分片(sharding)和复制(replication)是怎样工作的?
11、什么是master或primary?
12、如何执行事务/加锁?
13、我可以把moveChunk目录里的旧文件删除吗?
14、当我试图更新一个正在被迁移的块(chunk)上的文档时会发生什么?
15、如果在一个分片(shard)停止或者很慢的时候,我发起一个查询会怎样?
16、你说的NoSQL数据库是什么意思?NoSQL与RDBMS直接有什么区别?为什么要使用和不使用NoSQL数据库?说一说NoSQL数据库的几个优点?
17、你怎么比较MongoDB、CouchDB及CouchBase?
18、如果一个分片(Shard)停止或很慢的时候,发起一个查询会怎样?
19、MongoDB在A:{B,C}上建立索引,查询A:{B,C}和A:{C,B}都会使用索引吗?
20、为什么我的数据文件如此庞大?
21、MySQL与MongoDB之间最基本的差别是什么?
22、数据在什么时候才会扩展到多个分片(shard)里?
23、启用备份故障恢复需要多久?
24、允许空值null吗?
25、我怎么查看Mongo正在使用的链接?
26、如果用户移除对象的属性,该属性是否从存储层中删除?
27、分析器在MongoDB中的作用是什么?
28、我应该启动一个集群分片(sharded)还是一个非集群分片的MongoDB环境?
29、MongoDB成为最好NoSQL数据库的原因是什么?
30、名字空间(namespace)是什么?
31、能否使用日志特征进行安全备份?
32、MongoDB支持存储过程吗?如果支持的话,怎么用?
33、我必须调用getLastError来确保写操作生效了么?
CHAR_LENGTH 是字符数,而 LENGTH 是字节数。Latin 字符的这两个数据是相同的,但是对于 Unicode 和其他编码,它们是不同的。
以下是 FLOAT 和 DOUBLE 的区别:
浮点数以 8 位精度存储在 FLOAT 中,并且有四个字节。
浮点数存储在 DOUBLE 中,精度为 18 位,有八个字节。
共有 5 种类型的表格: 1、MyISAM2、Heap 3、Merge 4、INNODB 5、MISAM
ISAM 简称为索引顺序访问方法。它是由 IBM 开发的,用于在磁带等辅助存储系统上存储和检索数据。
6、表中有大字段X(例如:text类型),且字段X不会经常更新,以读为为主,将该字段拆成子表好处是什么?
7、Mysql的技术特点是什么?
8、为表中得字段选择合适得数据类型
9、怎样才能找出最后一次插入时分配了哪个自动增量?
10、InnoDB是什么?
11、LIKE和REGEXP操作有什么区别?
12、BLOB和TEXT有什么区别?
13、NOW()和CURRENT_DATE()有什么区别?
14、如何显示前50行?
15、主键和候选键有什么区别?
16、优化数据库的方法
17、MySQL查询缓存有什么弊端,应该什么情况下使用,8.0版本对查询缓存有什么更.
18、简单描述MySQL中,索引,主键,唯一索引,联合索引
19、MyISAMStatic和MyISAMDynamic有什么区别?
20、MYSQL数据库服务器性能分析的方法命令有哪些?
21、TIMESTAMP在UPDATECURRENT_TIMESTAMP数据类型上做什么?
22、MySQL中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?SQL标准定义的四个隔离级别为:
23、可以使用多少列创建索引?
24、MySQL的基础操作命令:
25、MyISAM表格将在哪里存储,并且还提供其存储格式?
26、federated表是什么?
27、实践中如何优化MySQL
28、与Oracle相比,Mysql有什么优势?
29、你怎么看到为表格定义的所有索引?
30、LIKE声明中的%和_是什么意思?
31、以及在mysql数据库中索引的工作机制是什么?
32、什么是非标准字符串类型?
33、什么样的对象可以使用CREATE语句创建?
34、MYSQL数据表在什么情况下容易损坏?
35、CHAR和VARCHAR的区别?
36、如何定义REGEXP?
37、请简述常用的索引有哪些种类?
38、MySQL如何优化DISTINCT?
39、如何在Unix和Mysql时间戳之间进行转换?
40、Mysql服务器默认端口是什么?
41、SQL注入漏洞产生的原因?如何防止?
42、我们如何得到受查询影响的行数?
43、MySQL有关权限的表都有哪几个?
44、MySQL中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?
45、MySQL由哪些部分组成,分别用来做什么
46、SQL语言包括哪几部分?每部分都有哪些操作关键字?
47、Mysql驱动程序是什么?
48、MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化?
49、Mysql查询是否区分大小写?
50、HAVNG子句和WHERE的异同点?
51、列的字符串类型可以是什么?
52、mysql_fetch_array和mysql_fetch_object的区别是什么?
53、在Mysql中ENUM的用法是什么?
54、mysql中myisam与innodb的区别?
55、解释访问控制列表
56、列对比运算符是什么?
57、MySQL事务的隔离级别,分别有什么特点
58、Heap表是什么?
59、MySQL支持事务吗?
60、mysql中varchar与char的区别以及varchar(50)中的50代表的涵义?
61、Mysql中有哪几种锁?
62、MySQL中InnoDB引擎的行锁是通过加在什么上完成(或称实现)的?
63、列设置为AUTOINCREMENT时,如果在表中达到最大值,会发生什么情况?
64、我们如何在mysql中运行批处理模式?
65、MySQL中控制内存分配的全局参数,有哪些?
66、订单表数据量越来越大导致查询缓慢,如何处理
67、如何控制HEAP表的最大尺寸?
68、数据库中的事务是什么?
69、若一张表中只有一个字段VARCHAR(N)类型,utf8编码,则N最大值
70、mysql支持的复制类型?
71、唯一索引比普通索引快吗,为什么
72、如何使用Unixshell登录Mysql?
73、myisamchk是用来做什么的?
75、完整性约束包括哪些?
76、如何获取当前的Mysql版本?
77、什么是通用SQL函数?
78、一千万条数据的表,如何分页查询
79、SELECT*和SELECT全部字段的2种写法有何优缺点?
80、数据库三范式是什么?
81、MySQL的insert和update的select语句语法
82、SQL标准定义的四个隔离级别为:
83、解释MySQL外连接
84、存储时期
85、索引的底层实现原理和优化
86、如果一个表有一列定义为TIMESTAMP,将发生什么?
87、MySQL怎么恢复半个月前的数据
88、MySQL当记录不存在时insert,当记录存在时update,语句怎么写?
89、请简洁描述Mysql中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?
90、Myql中的事务回滚机制概述
91、对于关系型数据库而言,索引是相当重要的概念,请回答
92、简要说一下数据库范式
93、一张表,里面有ID自增主键,当insert了17条记录之后,删除了第15,16,17条记录,再把Mysql重启,再insert一条记录,这条记录的ID是18还是15?
94、锁的优化策略
95、Mysql表中允许有多少个TRIGGERS?
96、做过哪些MySQL索引相关优化
97、Mysql中使用什么存储引擎?
98、mysql的复制原理以及流程
99、如何输入字符为十六进制数字?
100、什么情况下设置了索引但无法使用
101、MyISAM和InnoDB**的区别有哪些
102、MySQL里记录货币用什么字段类型好
103、有哪些数据库优化方面的经验?
“永久链接”的目的是用来减少重新创建 MySQL 链接的次数。当一个链接被创建了,它会永远处在连接的状态,就算是数据库操作已经结束了。而且,自从我们的 Apache 开始重用它的子进程后——也就是说,下一次的 HTTP 请求会重用 Apache 的子进程,并重用相同的 MySQL 链接。
5、为查询缓存优化你的查询
6、越小的列会越快
7、使用一个对象关系映射器
8、拆分大的 DELETE 或 INSERT 语句
9、在 Join 表的时候使用相当类型的例,并将其索引
10、使用 ENUM 而不是 VARCHAR
11、千万不要 ORDER BY RAND()
12、 选择正确的存储引擎
13、当只要一行数据时使用 LIMIT 1
14、Prepared Statements
15、垂直分割
16、固定长度的表会更快
17、 无缓冲的查询
18、把 IP 地址存成 UNSIGNED INT
19、永远为每张表设置一个 ID
20、为搜索字段建索引
21、 从 PROCEDURE ANALYSE() 取得建议
Redis集群目前无法做数据库选择,默认在0数据库。
如果一个命令的结果导致大量内存被使用(例如很大的集合的交集保存到一个新的键),不用多久内存限制就会被这个内存使用量超越
基于Lua脚本,Redis可以保证脚本内的命令一次性、按顺序地执行,其同时也不提供事务运行错误的回滚,执行过程中如果部分命令运行错误,剩下的命令还是会继续运行完* 基于中间标记变量,通过另外的标记变量来标识事务是否执行完成,读取数据时先读取该标记变量判断是否事务执行完成。但这样会需要额外写代码实现,比较繁琐
Redis 官方站提出了一种权威的基于 Redis 实现分布式锁的方式名叫 Redlock,此种方式比原先的单节点的方法更安全。它可以保证以下特性:
5、Redis主要消耗什么物理资源?
6、Redis有哪些适合的场景?
7、Jedis与Redisson对比有什么优缺点?
8、Redis事务相关的命令有哪几个?
9、Redis的内存淘汰策略有哪些
10、Redis集群的主从复制模型是怎样的?
11、Redis如何做内存优化?
12、锁互斥机制
13、Redis主从架构
14、生产环境中的redis是怎么部署的?
15、说说Redis哈希槽的概念?
16、使用过Redis分布式锁么,它是什么回事?
17、基于代理服务器分片
18、Redis线程模型
19、一个字符串类型的值能存储最大容量是多少?
20、缓存降级
21、可重入加锁机制
22、什么是redis雪崩?
23、redis主从复制如何实现的?redis的集群模式如何实现?redis的key是如何寻址的?
24、你知道有哪些Redis分区实现方案?
25、Redis集群会有写操作丢失吗?为什么?
26、Rediskey的过期时间和永久有效分别怎么设置?
27、Redis集群最大节点个数是多少?
28、Redis的持久化机制是什么?各自的优缺点?
29、为什么要用Redis/为什么要用缓存
30、缓存热点key
31、Redis常见的性能问题和解决方案
32、MySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都
33、memcached与redis的区别?
34、Redis当中有哪些数据结构
35、Redis集群方案什么情况下会导致整个集群不可用?
36、Redis为什么这么快
37、Redis集群方案应该怎么做?都有哪些方案?
38、Redis集群之间是如何复制的?
39、什么是缓存穿透?如何避免?什么是缓存雪崩?何如避免?
40、Redis的过期键的删除策略
41、如何选择合适的持久化方式
42、Redis的数据淘汰策略有哪些
43、Redis和Redisson有什么关系?
44、主从数据库不一致如何解决
45、使用redis有哪些好处?
46、假如Redis里面有1亿个key,其中有10w个key是以某个固定的已知的前缀开头的,如果将它们全部找出来?
47、上述Redis分布式锁的缺点
48、Redis支持哪几种数据类型?
49、Redis有哪些数据类型
50、Redis的数据类型?
51、怎么理解Redis事务?
52、Redis是单线程的,如何提高多核CPU的利用率?
53、Redis常见性能问题和解决方案:
54、缓存预热
55、Redis支持的Java客户端都有哪些?官方推荐用哪个?
56、都有哪些办法可以降低Redis的内存使用情况呢?
57、Redis事务的概念
58、什么是Redis?简述它的优缺点?
59、Redis如何实现延时队列
60、Redis的应用场景
61、为什么Redis需要把所有数据放到内存中?
62、Redis与memcached相比有哪些优势?
63、Redis的内存用完了会发生什么?
64、使用Redis做过异步队列吗,是如何实现的
65、使用过Redis做异步队列么,你是怎么用的?有什么缺点?
66、MySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据?
67、Redis是单进程单线程的?
68、什么是redis穿透?
69、如何解决Redis的并发竞争Key问题
70、为什么要用Redis而不用map/guava做缓存?
71、Redis如何设置密码及验证密码?
72、Redis持久化数据和缓存怎么做扩容?
73、Redis分区有什么缺点?
74、如果有大量的key需要设置同一时间过期,一般需要注意什么?
75、使用过Redis分布式锁么,它是怎么实现的?
76、watchdog自动延期机制
77、一个Redis实例最多能存放多少的keys?List
78、Redis官方为什么不提供Windows版本?
79、
80、Redis最适合的场景?
81、基于客户端分配
82、缓存与数据库不一致怎么办
83、什么是Redis?
84、Redis事务保证原子性吗,支持回滚吗
85、redis过期策略都有哪些?LRU算法知道吗?写一下java代码实现?
86、在选择缓存时,什么时候选择redis,什么时候选择memcached
87、Redis有哪些优缺点?
88、释放锁机制
89、热点数据和冷数据
90、Redis的同步机制了解么?
91、知道redis的持久化吗?底层如何实现的?有什么优点缺点?
92、什么是事务?
93、Redis事务的三个阶段
94、为什么要做Redis分区?
95、redis和memcached什么区别?为什么高并发下有时单线程的redis比多线程的
96、Memcache与Redis的区别都有哪些?
97、Redis事务支持隔离性吗
98、Redis过期键的删除策略?
99、怎么测试Redis的连通性?
100、使用redis如何设计分布式锁?说一下实现思路?使用zk可以吗?如何实现?这两种有什么区别?
101、官方RedisCluster方案(服务端路由查询)
102、使用过Redis做异步队列么,你是怎么用的?
103、分布式Redis是前期做还是后期规模上来了再做好?为什么?
104、事务管理(ACID)概述
105、Redis实现分布式锁
106、Redis相比Memcached有哪些优势?
107、Redis有哪几种数据淘汰策略?
108、加锁机制
109、Redis事务相关命令
110、是否使用过Redis集群,集群的原理是什么?
111、我们知道通过expire来设置key的过期时间,那么对过期的数据怎么处理呢?
112、Pipeline有什么好处,为什么要用pipeline?
113、Redis中的管道有什么用?
114、如何实现集群中的session共享存储?
115、Redis的回收策略(淘汰策略)?
在 Mysql 表中允许有六个触发器,如下:
每当行被更改时,时间戳字段将获取当前时间戳。
任何标准表最多可以创建 16 个索引列。
6、如何定义REGEXP?
7、Mysql中有哪几种锁?
8、如何显示前50行?
9、列设置为AUTOINCREMENT时,如果在表中达到最大值,会发生什么情况?
10、什么是通用SQL函数?
11、如何使用Unixshell登录Mysql?
12、Mysql的技术特点是什么?
13、怎样才能找出最后一次插入时分配了哪个自动增量?
14、如何获取当前的Mysql版本?
15、在Mysql中ENUM的用法是什么?
16、ISAM是什么?
17、TIMESTAMP在UPDATECURRENT_TIMESTAMP数据类型上做什么?
18、CHAR和VARCHAR的区别?
19、myisamchk是用来做什么的?
20、列的字符串类型可以是什么?
21、如何在Unix和Mysql时间戳之间进行转换?
22、MYSQL支持事务吗?
23、mysql有关权限的表都有哪几个?
24、列对比运算符是什么?
25、MyISAM表格将在哪里存储,并且还提供其存储格式?
26、MYSQL数据库服务器性能分析的方法命令有哪些?
27、InnoDB是什么?
28、我们如何得到受查询影响的行数?
29、什么样的对象可以使用CREATE语句创建?
30、我们如何在mysql中运行批处理模式?
31、NOW()和CURRENT_DATE()有什么区别?
32、mysql_fetch_array和mysql_fetch_object的区别是什么?
33、一张表,里面有ID自增主键,当insert了17条记录之后,删除了第15,16,17条记录,再把Mysql重启,再insert一条记录,这条记录的ID是18还是15?
34、MYSQL数据表在什么情况下容易损坏?
35、如何输入字符为十六进制数字?
36、LIKE声明中的%和_是什么意思?
37、什么是非标准字符串类型?
38、主键和候选键有什么区别?
39、Mysql中有哪些不同的表格?
40、Mysql驱动程序是什么?
41、与Oracle相比,Mysql有什么优势?
42、Mysql查询是否区分大小写?
43、Mysql中使用什么存储引擎?
44、区分CHAR_LENGTH和LENGTH?
45、Heap表是什么?
46、如何控制HEAP表的最大尺寸?
47、LIKE和REGEXP操作有什么区别?
48、你怎么看到为表格定义的所有索引?
49、如何区分FLOAT和DOUBLE?
50、Mysql服务器默认端口是什么?
51、解释访问控制列表
52、MyISAMStatic和MyISAMDynamic有什么区别?
53、请简洁描述Mysql中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?
54、federated表是什么?
55、Mysql如何优化DISTINCT?
1、 Hadoop 的核心配置是什么?
2、 如何确定 hadoop 集群的健康状态
3、 简述 hadoop 的调度器
4、 Hive 你们用的是外部表还是内部表,有没有写过 UDF,hive 的版本
5、 解决下面的错误
6、 大数据面试汇总
7、你们数据库怎么导入 hive 的,有没有出现问题
8、hadoop 中 Combiner 的作用?
9、举一个简单的例子说明 mapreduce 是怎么来运行的 ?
10、用 mapreduce 来实现下面需求?
11、 combiner 出现在那个过程
12、 用 mapreduce 怎么处理数据倾斜问题?
13、 Redis,传统数据库,hbase,hive 每个之间的区别
14、 生产环境中为什么建议使用外部表?
15、“jps”命令的用处?
16、那当下又该如何配置?
17、 基站逗留时间
18、 datanode 在什么情况下不会备份
19、 shuffle 阶段,你怎么理解的
20、 一键执行
21、 实时流式计算 的结果内容有哪些,你们需要统计出来 么
22、 hadoop 框架中怎么来优化
23、mapreduce 的原理?
24、 我们开发 job 时,是否可以去掉 reduce 阶段。
25、公司技术选型可能利用 storm 进行实时计算,讲解一下 storm
26、 hbase 的 rowkey 怎么创建好?列族怎么创建比较 好?
27、 面试问题:
28、京东商城 - 大数据
29、Hbase 的特性,以及你怎么去设计 rowkey 和 columnFamily ,怎么去建一个 table
30、 hdfs 的体系结构
31、 不同语言的优缺点
32、 写出下面的命令
33、 请列出 hadoop 进程名
34、 3 个 datanode 中有一个 datanode 出现错误会怎样?
35、 脚本替换
36、 combiner 和 partition 的作用
37、唯一难住我的是他说实时计算,storm 如果碰上了复杂 逻辑,需要算很长的时间,你怎么去优化,怎么保证实时性
38、 HDFS 存储的机制?
39、 hive 内部表和外部表的区别
40、 列出你开发 mapreduce 的语言
41、简述 hadoop 安装
42、 共同朋友
43、 hive 有哪些保存元数据的方式,个有什么特点。
44、Mapreduce 的 map 数量 和 reduce 数量 怎么确 定 ,怎么配置
45、 描述一下 hadoop 中,有哪些地方使用了缓存机制, 作用分别是什么?
46、 书写程序
47、一个 datanode 宕机,怎么一个流程恢复
1、 SpringCloud主要项目
2、 什么是Feign?
3、 服务降级底层是如何实现的?
4、 什么是Eureka的自我保护模式,
5、 SpringBoot和SpringCloud的区别?
6、 Ribbon和Feign调用服务的区别
7、 Eureka怎么实现高可用
8、@LoadBalanced注解的作用
9、 Zuul网关如何搭建集群
10、 Ribbon底层实现原理
11、 常用网关框架有那些?
12、Spring Cloud Consul
13、 什么是Eureka
14、 既然Nginx可以实现网关?为什么还需要使用Zuul框架
15、 什么是Spring Cloud Config?
16、 什么是 Spring Cloud Bus?
17、Spring Cloud Security
18、Spring Cloud Config
19、 Zuul与Nginx有什么区别?
20、 使用 Spring Boot 开发分布式微服务时,我们面临什么问题
21、 什么是网关?
22、 分布式配置中心的作用?
23、Spring Cloud Gateway
24、 Spring Cloud和SpringBoot版本对应关系
25、 如何设计一套API接口
26、什么是 Spring Cloud Bus?我们需要它吗?
27、Spring Cloud Zookeeper
28、 服务雪崩效应产生的原因
29、Spring Cloud Sleuth
30、 SpringCloud的优缺点
31、 什么是Spring Cloud Gateway?
32、 Spring Cloud 和dubbo区别?
33、 什么是微服务架构
34、 Spring Cloud和SpringBoot版本对应关系
35、什么是 Hystrix 断路器?我们需要它吗?
36、 为什么需要学习Spring Cloud
37、 什么是Spring Cloud Zuul(服务网关)
38、 Nginx与Ribbon的区别
39、 谈谈服务降级、熔断、服务隔离
40、 Spring Cloud 是什么
41、 ZuulFilter常用有那些方法
42、 SpringCloud Config 可以实现实时刷新吗?
43、Spring Cloud Stream
44、Spring Cloud OpenFeign
45、 分布式配置中心有那些框架?
46、什么是 Hystrix?它如何实现容错?
47、 什么是 Hystrix?
48、 服务注册和发现是什么意思?Spring Cloud 如何实现?
49、 DiscoveryClient的作用
50、什么是 Netflix Feign?它的优点是什么?
51、 负载平衡的意义什么?
52、 如何实现动态Zuul网关路由转发
53、服务注册和发现是什么意思?Spring Cloud 如何实现?
54、 在微服务中,如何保护服务?
55、 什么是断路器
56、 Eureka和ZooKeeper都可以提供服务注册与发现的功能,请说说两个的区别
57、Spring Cloud的版本关系
58、Spring Cloud Bus
59、Spring Cloud Netflix(重点,这些组件用的最多)
60、 谈谈服务雪崩效应
61、Spring Cloud Task
62、 SpringCloud有几种调用接口方式
63、 SpringCloud由什么组成
64、负载平衡的意义什么?
65、 Spring Cloud和各子项目版本对应关系
66、 网关的作用是什么
67、 网关与过滤器有什么区别
68、 Ribbon是什么?
1、 SpringBoot微服务中如何实现 session 共享 ?
2、什么是 WebSockets?
3、 SpringBoot多数据源事务如何管理
4、如何重新加载 Spring Boot 上的更改,而无需重新启动服务器?
5、什么是 Apache Kafka?
6、 如何实现 Spring Boot 应用程序的安全性?
7、如何集成 Spring Boot 和 ActiveMQ?
8、 SpringBoot的自动配置原理是什么
9、 我们如何监视所有 Spring Boot 微服务?
10、 Spring Boot 中的监视器是什么?
11、如何激活某个环境的配置?
12、 Spring Boot 有哪几种读取配置的方式?
13、 SpringBoot与SpringCloud 区别
14、什么是yaml?
15、什么是 Spring Batch?
16、 Spring Boot 是否可以使用 XML 配置 ?
17、 SpringBoot多数据源拆分的思路
18、 为什么要用SpringBoot
19、 SpringBoot如何实现打包
20、如何实现 Spring Boot 应用程序的安全性?
21、如何使用 Spring Boot 实现异常处理?
22、SpringBoot启动方式?
23、 比较一下 Spring Security 和 Shiro 各自的优缺点 ?
24、 什么是 JavaConfig?
25、如何在自定义端口上运行 Spring Boot 应用程序?
26、SpringBoot支持配置文件的格式?
27、获得Bean装配报告信息访问哪个端点?
28、 您使用了哪些 starter maven 依赖项?
29、 如何使用 Spring Boot 实现全局异常处理?
30、SpringBoot自动配置原理?
31、 SpringBoot支持什么前端模板,
32、 YAML 配置的优势在哪里 ?
33、Spring Boot 打成的 jar 和普通的 jar 有什么区别 ?
34、什么是 CSRF 攻击?
35、针对请求访问的几个组合注解?
36、SpringBoot异常处理相关注解?
37、 如何重新加载 Spring Boot 上的更改,而无需重新启动服务器?Spring Boot项目如何热部署
38、 什么是 Spring Profiles?
39、我们如何监视所有 Spring Boot 微服务?
40、 Async异步调用方法
41、SpringBoot集成Mybatis?
42、 运行 Spring Boot 有哪几种方式?
43、SpringBoot启动类注解?它是由哪些注解组成?
44、 SpringBoot 实现热部署有哪几种方式?
45、SpringBoot需要独立的容器运行?
46、Spring Boot 中的监视器是什么?
47、如何在 Spring Boot 中禁用 Actuator 端点安全性?
48、SpringBoot热部署方式?
49、 保护 Spring Boot 应用有哪些方法?
50、SpringBoot读取配置相关注解有?
51、 什么是SpringBoot?
52、什么是 Spring Profiles?
53、 Spring Boot 支持哪些日志框架?推荐和默认的日志框架是哪个?
54、 Spring Boot 中如何解决跨域问题 ?
55、SpringBoot如何兼容Spring项目?
56、 你如何理解 Spring Boot 配置加载顺序?
57、 开启 Spring Boot 特性有哪几种方式?
58、 SpringBoot事物的使用
59、 Spring Boot 中如何实现定时任务 ?
60、 如何在 Spring Boot 启动的时候运行一些特定的代码?
61、开启SpringBoot特性的几种方式?
62、如何使用 Spring Boot 实现分页和排序?
63、 SpringBoot性能如何优化
64、编写测试用例的注解?
65、什么是 AOP?
66、什么是 JavaConfig?
67、 Spring Boot 需要独立的容器运行吗?
68、 什么是 YAML?
69、 SpringBoot的特征?
70、什么是 Swagger?你用 Spring Boot 实现了它吗?
71、SpringBoot配置监控?
72、SpringBoot配置途径?
73、不同的环境的配置文件?
74、您使用了哪些 starter maven 依赖项?
75、查看发布应用信息访问哪个端点?
76、 spring-boot-starter-parent 有什么用 ?
77、 Spring Boot 中的 starter 到底是什么 ?
78、什么是 YAML?
79、SpringBoot如何修改端口号?
80、关闭应用程序访问哪个端点?
81、什么是 FreeMarker 模板?
82、如何快速构建一个SpringBoot项目?
83、 SpringBoot Starter的工作原理
84、SpringBoot 中的starter?
85、 Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?
86、 SpringBoot的缺点
87、 Spring Boot 有哪些优点?
88、什么是SpringProfiles?
1、介绍一下 WebApplicationContext:
2、SpringMVC 工作原理?
3、如果你也用过 struts2.简单介绍下 springMVC 和 struts2 的区别有哪些?
4、如果想在拦截的方法里面得到从前台传入的参数,怎么得到?
5、 @RequestMapping 注解用在类上面有什么作用?
6、SpringMvc 中函数的返回值是什么?
7、Spring MVC用什么对象从后台向前台传递数据的?
8、如果前台有很多个参数传入,并且这些参数都是一个对象的,那么怎么样快速得到这个对象?
9、SpringMVC 流程?
10、Spring MVC的主要组件?
11、@ResponseBody注解的作用?
12、SpringMvc 里面拦截器是怎么写的
13、我想在拦截的方法里面得到从前台传入的参数,怎么得到?
14、当一个方法向 AJAX 返回特殊对象,譬如 Object,List 等,需要做什么处理?
15、@Controller注解的作用?
16、怎样在方法里面得到Request,或者Session?
17、SpringMvc 中有个类把视图和数据都合并的一起的,叫什么?
18、Spring MVC里面拦截器是怎么写的?
19、怎么样把 ModelMap 里面的数据放入 Session 里面?
20、如果在拦截请求中,我想拦截get方式提交的方法,怎么配置
21、如果在拦截请求中,我想拦截 get 方式提交的方法,怎么配置?
22、Spring MVC怎么样设定重定向和转发的?
23、Spring MVC的异常处理?
24、SpringMVC 怎么样设定重定向和转发的?
25、SpingMvc 中的控制器的注解一般用那个,有没有别的注解可以替代?
26、SpringMvc 怎么和 AJAX 相互调用的?
27、SpringMvc 用什么对象从后台向前台传递数据的?
28、怎么样把某个请求映射到特定的方法上面?
29、Spring MVC中函数的返回值是什么?
30、Spring MVC与Struts2区别:
31、如何解决POST请求中文乱码问题,GET的又如何处理呢?
32、@RequestMapping注解的作用?
33、SpringMvc 的控制器是不是单例模式,如果是,有什么问题,怎么解决?
34、@PathVariable和@RequestParam的区别:
35、什么是Spring MVC?简单介绍下你对Spring MVC的理解?
36、什么是Spring MVC框架的控制器?
37、SpingMvc中的控制器的注解一般用哪个,有没有别的注解可以替代?
38、怎么样在方法里面得到 Request,或者 Session?
39、Spring MVC常用的注解有哪些?
40、讲下 SpringMvc 的执行流程
41、什么是DispatcherServlet?
42、请描述Spring MVC的工作流程?描述一下 DispatcherServlet 的工作流程?
43、Spring MVC的控制器是不是单例模式,如果是,有什么问题,怎么解决?
44、MVC是什么?MVC设计模式的好处有哪些
45、怎么样把ModelMap里面的数据放入Session里面?
46、Spring MVC怎么和AJAX相互调用的?
47、Spring MVC的优点
48、注解原理是什么?
49、如果前台有很多个参数传入,并且这些参数都是一个对象的,那么怎么样快速得到这个对象?
1、控制反转(IOC)有什么作用
2、在Spring框架中如何更有效地使用JDBC?
3、什么是bean装配?
4、如何用基于XML配置的方式配置Spring?
5、Spring的俩大核心概念
6、XMLBeanFactory
7、@RequestMapping注解有什么用?
8、Spring框架中的单例Beans是线程安全的么?
9、怎样开启注解装配?
10、如何给Spring容器提供配置元数据?Spring有几种配置方式
11、JDK动态代理和CGLIB动态代理的区别
12、SpringAOPandAspectJAOP有什么区别?AOP有哪些实现方式?
13、什么是织入。什么是织入应用的不同点?
14、Spring框架中都用到了哪些设计模式?
15、Spring通知有哪些类型?
16、springDAO有什么用?
17、什么是AOP
18、请举例解释@Autowired注解?
19、解释基于注解的切面实现
20、解释Spring框架中bean的生命周期
21、使用Spring有哪些方式?
22、哪些是重要的bean生命周期方法?你能重载它们吗?
23、Spring如何设计容器的,BeanFactory和ApplicationContext的关系详解
24、@Controller注解
25、什么是基于注解的容器配置?
26、Spring支持的事务管理类型,spring事务实现方式有哪些?
27、解释一下SpringAOP里面的几个名词
28、解释不同方式的自动装配,spring自动装配bean有哪些方式?
29、什么是SpringIOC容器?
30、@Qualifier注解
31、Spring框架中有哪些不同类型的事件
32、ApplicationContext通常的实现是什么?
33、请解释自动装配模式的区别?
34、@RequestMapping注解
35、依赖注入的基本原则
36、@Required注解
37、@Autowired注解有什么作用
38、有几种不同类型的自动代理?
39、Spring框架的事务管理有哪些优点?
40、Spring由哪些模块组成?
41、如何开启基于注解的自动装配?
42、一个Spring的应用看起来象什么?
43、如何用基于Java配置的方式配置Spring?
44、一个SpringBean定义包含什么?
45、BeanFactory–BeanFactory实现举例
46、在SpringAOP中,关注点和横切关注的区别是什么?在springaop中concern和cross-cuttingconcern的不同之处
47、Spring的IOC支持哪些功能
48、你更倾向用那种事务管理类型?
49、在SpringAOP中,关注点和横切关注的区别是什么?
50、请举例解释@Required注解?
51、什么是Springinnerbeans?
52、什么是Spring的依赖注入?
53、你怎样定义类的作用域?
54、Spring框架中的单例bean是线程安全的吗?
55、自动装配有哪些局限性?
56、什么是Spring的MVC框架?
57、BeanFactory和ApplicationContext有什么区别?
58、说一下Spring的事务传播行为
59、IOC容器对Bean的生命周期
60、有哪些不同类型的依赖注入实现方式?
61、你可以在Spring中注入一个null和一个空字符串吗?
62、FileSystemResource和ClassPathResource有何区别?
63、@Qualifier注解有什么作用
64、什么是spring?
65、解释AOP
66、有哪些不同类型的IOC(依赖注入)方式?
67、什么是切面Aspect?
68、什么是控制反转(IOC)?什么是依赖注入?
69、使用Spring通过什么方式访问Hibernate?使用Spring访问Hibernate的方法有哪些?
70、什么是Springbeans?
71、SpringBean的作用域之间有什么区别?
72、如何给Spring容器提供配置元数据?
73、Bean工厂和Applicationcontexts有什么区别?
74、如何通过HibernateDaoSupport将Spring和Hibernate结合起来?
75、Spring框架中有哪些不同类型的事件?
76、请解释SpringBean的生命周期?
77、Spring如何处理线程并发问题?
78、Spring有哪些应用场景
79、解释AOP模块
80、解释对象/关系映射集成模块
81、什么是Spring框架?Spring框架有哪些主要模块?
82、什么是bean的自动装配?
83、什么是Spring的内部bean?
84、什么是SpringMVC框架的控制器?
85、什么是代理?
86、IOC的优点是什么?
87、构造器依赖注入和Setter方法注入的区别
88、依赖注入有什么优势
89、Spring事务的实现方式和实现原理
90、Spring框架的设计目标,设计理念,和核心是什么
91、解释不同方式的自动装配
92、请解释SpringBean的自动装配?
93、JdbcTemplate
94、Aspect切面
95、DispatcherServlet
96、Spring在运行时通知对象
97、在Spring中如何注入一个java集合?
98、使用Spring框架的好处是什么?
99、Spring基于xml注入bean的几种方式
100、哪种依赖注入方式你建议使用,构造器注入,还是Setter方法注入?
101、springJDBCAPI中存在哪些类?
102、详细讲解一下核心容器(springcontext应用上下文)模块
103、@Autowired注解
104、连接点
105、请举例说明@Qualifier注解?
106、@Required注解有什么作用
107、解释Spring支持的几种bean的作用域
108、什么是引入?
109、切点
110、Spring支持的ORM
111、Spring只支持方法级别的连接点
112、使用Spring通过什么方式访问Hibernate?
113、开发中主要使用Spring的什么技术?
114、在Spring中如何配置Bean?
115、JdbcTemplate是什么
116、Spring配置文件包含了哪些信息
117、什么是基于Java的Spring注解配置?给一些注解的例子
118、简述AOP和IOC概念AOP
119、Spring对DAO的支持
120、Spring应用程序有哪些不同组件?
121、如何向SpringBean中注入一个Java
122、使用Spring框架能带来哪些好处?
123、解释基于XMLSchema方式的切面实现
124、请解释下Spring框架中的IoC?
125、@Autowired和@Resource之间的区别
126、Spring支持的事务管理类型
127、什么是目标对象?
128、@Component,@Controller,@Repository,@Service有何区别?
129、解释WEB模块
130、SpringIOC的实现机制
131、通知
132、请举例说明如何在Spring中注入一个JavaCollection?
133、WebApplicationContext
134、解释JDBC抽象和DAO模块
135、Spring有几种配置方式?
136、说一下spring的事务隔离?
137、什么是Spring的内部bean?什么是Springinnerbeans?
138、核心容器(应用上下文)模块
139、构造方法注入和设值注入有什么区别?
140、Spring配置文件
141、Spring的优缺点是什么?
142、怎样用注解的方式配置Spring?
143、使用@Autowired注解自动装配的过程是怎样的?
1、 消息的不均匀消费。
2、 ActiveMQ 服务器宕机怎么办?
3、什么是 ActiveMQ?
4、 持久化消息非常慢。
5、 死信队列。
6、 丢消息怎么办?
7、 ActiveMQ 中的消息重发时间间隔和重发次数吗?
1、Kafka 创建 Topic 时如何将分区放置到不同的 Broker 中
2、Kafka 新建的分区会在哪个目录下创建
3、Kafka 高效文件存储设计特点:
4、Kafka 的消费者如何消费数据
5、Kafka 判断一个节点是否还活着有那两个条件?
6、Kafa consumer 是否可以消费指定分区消息?
7、数据有序
8、kafaka 生产数据时数据的分组策略
9、producer 是否直接将数据发送到 broker 的 leader(主节点)?
10、消费者负载均衡策略
11、Kafka 消息是采用 Pull 模式,还是 Push 模式?
12、Kafka 与传统消息系统之间有三个关键区别
13、数据传输的事物定义有哪三种?
14、kafka 的 ack 机制
15、partition 的数据如何保存到硬盘
16、Kafka 的设计时什么样的呢?
17、Kafka 存储在硬盘上的消息格式是什么?
1、在单node系统和多node构成的cluster系统中声明queue、exchange,以及
2、能够在地理上分开的不同数据中心使用RabbitMQcluster么?
3、RabbitMQ中的cluster、mirroredqueue,以及warrens机制分别用于解决什么问题?
4、消息基于什么传输?
5、RabbitMQ基本概念
6、RabbitMQ概念里的channel、exchange和queue这些东东是逻辑概念,还是对应着进程实体?
7、如何保证消息不被重复消费?或者说,如何保证消息消费时的幂等性?
8、durable属性,是否能够成功从其他node上重新声明该queue?
9、解耦、异步、削峰是什么?。
10、消息怎么路由?
11、若cluster中拥有某个queue的ownernode失效了,且该queue被声明具有
12、cluster中node的失效会对consumer产生什么影响?
13、设计MQ思路
14、RAMnode和disknode的区别?
15、RabbitMQ的工作模式
16、如何防止出现blackholed问题?
17、如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,怎么办?
18、什么是RabbitMQ?
19、什么情况下producer不主动创建queue是安全的?
20、你说下RocketMQ的负载均衡是如何实现的?
21、RabbitMQ允许发送的message最大可达多大?
22、如何保证高可用的?RabbitMQ的集群
23、为什么不应该对所有的message都使用持久化机制?
24、如何保证RabbitMQ消息的顺序性?
25、为什么heavyRPC的使用场景下不建议采用disknode?
26、如何保证RabbitMQ消息的可靠传输?
27、向不存在的exchange发publish消息会发生什么?
28、消息队列有什么缺点
29、什么是元数据?元数据分为哪些类型?包括哪些内容?
30、vhost是什么?起什么作用?
31、为什么说保证message被可靠持久化的条件是queue和exchange具有durable属性,同时message具有persistent属性才行?
32、MQ有哪些常见问题?如何解决这些问题?
33、进行binding会有什么不同?
34、routing_key和binding_key的最大长度是多少?
35、RabbitMQ中的broker是指什么?cluster又是指什么?
36、RabbitMQ上的一个queue中存放的message是否有数量限制?
37、Kafka、ActiveMQ、RabbitMQ、RocketMQ有什么优缺点?
38、如何确保消息正确地发送至RabbitMQ?如何确保消息接收方消费了消息?
39、消息如何分发?
40、你们公司生产环境用的是什么消息中间件?
41、客户端连接到cluster中的任意node上是否都能正常工作?
42、什么情况下会出现blackholed问题?
43、rabbitmq的使用场景
44、MQ的优点
45、“deadletter”queue的用途?
46、ConsumerCancellationNotification机制用于什么场景?
1、机器中为什么会有leader?
2、Zookeeper分布式锁(文件系统、通知机制)
3、zookeeper负载均衡和nginx负载均衡区别
4、zk节点宕机如何处理?
5、四种类型的数据节点Znode
6、Zookeeper的java客户端都有哪些?
7、ZooKeeper提供了什么?
8、Zookeeper同步流程
9、客户端回调Watcher
10、zookeeper是如何保证事务的顺序一致性的?
11、说一下ZookeeperWatcher机制
12、ZookeeperWatcher机制–数据变更通知
13、Zookeeper有哪几种几种部署模式?
14、服务端处理Watcher的流程?
15、chubby是什么,和zookeeper比你怎么看?
16、服务器有哪些角色?
17、Zookeeper节点宕机如何处理?
18、Zookeeper的典型应用场景
19、会话管理
20、数据同步
21、服务端处理Watcher实现
22、客户端注册Watcher实现
23、Zookeeper下Server工作状态有哪些?
24、ZAB和Paxos算法的联系与区别?
25、客户端回调Watcher流程?
26、ACL权限控制机制
27、Zookeeper和Dubbo的关系?
28、Zookeeper对节点的watch监听通知是永久的吗?为什么不是永久的?
29、说几个zookeeper常用的命令。
30、集群支持动态添加机器吗?
31、说说ZAB协议?
32、ZooKeeper是什么?
33、zk的命名服务(文件系统)
34、Zookeeper下Server工作状态
35、ZooKeeper和dubbo的区别?
36、Zookeeper都有哪些功能?
37、ZAB协议?
38、集群最少要几台机器,集群规则是怎样的?集群中有3台服务器,其中一个节点宕机,这个时候Zookeeper还可以使用吗?
39、Zookeeper集群管理(文件系统、通知机制)
40、Zookeeper通知机制
41、说一下Zookeeper的通知机制?
42、zk的配置管理(文件系统、通知机制)
43、zookeeper是如何选取主leader的?
44、分布式集群中为什么会有Master主节点?
45、ZookeeperWatcher机制--数据变更通知
46、zookeeperwatch机制
47、Chroot特性
48、Zookeeper工作原理
49、分布式集群中为什么会有Master?
50、集群最少要几台机器,集群规则是怎样的?
51、什么是Chroot?
52、Zookeeper怎么保证主从节点的状态同步?
53、服务器角色
54、分布式通知和协调
55、Zookeeper数据复制
56、说说ACL权限控制机制
57、Zookeeper队列管理(文件系统、通知机制)
58、Znode有哪些类型
59、获取分布式锁的流程
60、Zookeeper文件系统
61、四种类型的znode
62、Zookeeper的典型应用场景?
63、Zookeeper做了什么?
64、客户端注册Watcher的流程?
以上就是小编给大家分享的干货,关注公众号:麒麟改bug获取答案解析,希望能帮助到正在准备面试的朋友们,顺顺利利找到自己心仪的工作,fighting!!!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。