高频面试题(含笔试高频算法整理)基本总结回顾24

news2025/3/16 10:05:57

 干货分享,感谢您的阅读!

暂存篇---后续会删除,完整版和持续更新见高频面试题基本总结回顾(含笔试高频算法整理)

备注:引用请标注出处,同时存在的问题请在相关博客留言,感谢!

一、基本面试流程回顾

总体上面试都是以自我介绍+项目介绍+项目细节/难点提问+基础知识点考核+算法题这个流程下来的。

  • 自我介绍+项目介绍+项目细节/难点提问-------这个主要看个人的经历了,每个人都不一样
  • 基础知识点考核---------还是可以去增强自己的,也是这次的主要的一些总结思路
  • 算法题-----------一般都是LeetCode高频题或者剑指offer高频题,这个得在找工作之前的好好的练习。

二、基本高频算法题展示

基本高频算法考题总结如下,如有错误请告知,谢谢:

归属内容对应总结链接笔试定义代表题目展示

数学思维相关考题

数学思维高频考题

Letcode高频考题众数、快乐数、丑数、回文数、平方根、超级次方、二进制中1的个数等
字符串相关考题

字符串高频考题

Letcode高频考题最长公共子串、最长回文子串、最长无重复字符子串、最小覆盖子串、字符串相乘、中文数字表达转实际数字格式等
数组相关考题数组高频考题Letcode高频考题

找到数组 A 元素组成的小于 n的最大整数、两数之和、三数之和、搜索旋转排序数组、只出现一次的数字、最大子序列、最长连续递增序列、最长公共前缀等

散列相关考题散列高频考题Letcode高频考题

重复字符的最长子串、字母异位词分组、LRU缓存机制、重复元素、同构字符串等

栈相关考题栈高频考题Letcode高频考题

有效的括号、最小栈、用栈实现队列、用队列实现栈、逆波兰表达式求值、用数组实现一个栈、基本数学运算表达式求值等

队列相关考题队列高频考题Letcode高频考题

用队列实现栈、使用栈实现队列、设计循环队列、滑动窗口最大值、队列的最大值、用数组实现一个队列等

链表相关考题链表高频考题Letcode高频考题反转链表、链表中环的检测、链表中环的入口点、删除链表中倒数第K个节点、两个链表的第一个公共节点、链表的中间节点、合并两个有序链表、删除链表中的重复元素等
树相关考题树高频考题Letcode高频考题

二叉树的最大深度、对称二叉树、二叉树的最近公共祖先、二叉树的直径、二叉树的层平均值、二叉树的镜像、二叉树的最大宽度、平衡二叉树等

排序相关考题排序算法高频考题Letcode高频考题

冒泡排序、鸡尾酒排序、插入排序、选择排序、快速排序、归并排序、堆排序、Top K 问题分析、使用堆排序思想实现优先级队列、计数排序、桶排序、基数排序等

剑指offer考题剑指offer所有高频考题剑指offer考题汇总分析剑指offer全部高频题罗列。 23
动态规划考题动态规划高频考题Letcode高频考题最大子序和、最长上升子序列、最长公共子序列、最大子数组乘积、编辑距离、单词拆分、爬楼梯、股票买卖问题、最佳买卖股票时机含冷冻期等
图论考题图论高频考题(国内一般不考)进阶分析考题岛屿数量、网络延迟时间、单源最短路径、负权最短路径问题、具有最小生成树的连通图的最小代价、找到最终的安全状态等
大厂新考题聚焦新版综合编程能力面试考查汇总大厂新考重点考查综合能力和理解能力等

三、基本面试题总结回顾

(一)Java高频面试题整理

相关答案参考:https://blog.csdn.net/xiaofeng10330111/article/details/53034130备注:针对基本问题做一些基本的总结,不是详细解答!1.HashMap和ConcurrentHashMap区别(必考)2. ConcurrentHashMap的数据结构(必考)3.高并发HashMap的环是如何产生的4.HashMap1.7与HashMap1.8的区别,从数据结构上、Hash值的计算上、链表数据的插入方法、内部Entry类的实现上分析?5.Hash1.7是基于数组...https://blog.csdn.net/xiaofeng10330111/article/details/53034130

考察方向分类:Java基础高频知识考点

1.基本类型和包装类区别

2.实例方法和静态方法有什么不一样?

3.Java指向的是引用还是地址?怎么理解?(高频考点)

4.Object类内的方法(高频考点)

5.hashCode方法的作用?

6.Java中一个字符占多少个字节,扩展再问int、 long、double占多少字节?

7.Boolean占几个字节?

8.Exception和Error

9.==和equals的区别?

10.String str="hello world"和String str=new String("hello world")的区别?(高频考点)

11.StringBuffer和StringBuilder的区别是什么?性能对比?如何鉴定线程安全?(高频考点)

12.StringBuffer 和 StringBuilder 底层怎么实现的?(高频考点)

13.switch支持哪些数据类型?支持long么?(高频考点)

14.创建一个类的实例都有哪些办法?(高频考点)

15.final、finnally、finalize的区别是什么?

16.Jdk1.8/Jdk1.7都分别新增了哪些特性?其他版本呢?(高频考点)

17.简单说下Lambda表达式,其解决了什么,相比java7的处理优化了什么?

18.有人说“Lambda能让Java程序慢30倍”,你怎么看?

19.SpI和API区别是什么?SpI底层实现是什么?

20.深克隆和浅克隆?(考频不多)

21.伪共享机制简述分析

22.假设引用了一个第三方的jar 有个类和我自己写的代码类一样,那么在类加载机制过程中是如何处理的?(高频考点)

23.Java提供了哪些IO方式? NIO如何实现多路复用?

24.谈谈接口和抽象类有什么区别?

考察方向分类:Java集合框架高频知识考点(高频考点集中地)

1.HashMap相关put操作,get操作等流程?(高频考点)

2.Hash为啥要扩容

3.HashMap如果我想要让自己的Object作为K应该怎么办?

4.Hashmap 线程不安全的原因(高频考点)

 5.HashMap1.7与HashMap1.8的区别,从数据结构上、Hash值的计算上、链表数据的插入方法、内部Entry类的实现上分析?

6.HashSet和HashMap区别

7.Hash1.7是基于数组和链表实现的,为什么不用双链表?HashMap1.8中引入红黑树的原因是?为什么要用红黑树而不是平衡二叉树?(高频考点)

8.HashMap、HashTable、ConcurrentHashMap的原理与区别?

9.HashMap和ConcurrentHashMap区别(高频考点)

10. ConcurrentHashMap的数据结构(高频考点)

11.高并发HashMap的环是如何产生的(高频考点)

12.哪些集合是线程安全的?

13.Collections.SynchronizedCollection方法实现原理是什么?

14.Array和ArrayList有什么区别?使用时注意事项有哪些?

15.常用的集合类有哪些?比如List如何排序(最好说下底层上的实现)?(高频考点)

16.ArrayList和LinkedList内部的实现大致是怎样的?他们之间的区别和各自适应的场景是什么?

考察方向分类:多线程与并发编程高频知识考点(高频考点集中地)

1.进程和线程的区别,进程间如何通讯,线程间如何通讯?

2.Java中线程之间如何通信

3.并发和并行的区别

4.Java线程的状态?细说一下BLOCKED和WAITING有什么区别?(高频考点)

5.Java实现多线程的方式有哪些?(高频考点)

6.Java处理多线程的方式有哪些?

7.Java程序中启动一个线程是用run()还是start()?

8.Thread的start方法调用两次会怎么样?Thread是如何保证start方法调用只有一次生效?(高频考点)

9.什么是守护线程?有什么用?

10.两个线程如何串行执行?

11.可以运行时kill掉一个线程吗?

12.Synchronized的实现原理(高频考点)

13.volatile与synchronized的区别是什么?volatile作用(高频考点)

14.synchronized和Lock的区别(高频考点)

15.Atomic类如何保证原子性(CAS操作)(高频考点)

16.AtomicInteger、AtomicBoolean这些类之所以在高并发时高效,共同的原因是?

17.CAS?CAS 有什么缺陷,如何解决?(高频考点)

18.Java不可重入锁与可重入锁的区别如何理解?

19.无锁 VS 偏向锁 VS 轻量级锁 VS 重量级锁,解释锁升级?(高频考点)

20.乐观锁 VS 悲观锁?公平锁 VS 非公平锁?独享锁 VS 共享锁?

21.自旋锁 VS 适应性自旋锁,简单介绍

22.死锁发生的原因

23.用java 代码实现一个死锁用例,说说怎么解决死锁问题?回到用例代码下,如何解决死锁问题呢?(高频考点)

24.请实现让10个任务同时并发启动?

25.AQS理论的数据结构是什么样的?(高频考点)

26.ReentrantLock底层公平锁和非公平锁的原理(高频考点)

27.多线程中sleep与wait的区别是什么?

28.notify和notifyAll区别?

29.除了用Object.wait和Object.notifyAll来实现线程间的交互外,你还会常用哪些来实现?

30.ThreadLocal的原理和实现(高频考点)

31.ThreadLocal为什么要使用弱引用和内存泄露问题(高频考点)

32.ThreadLocal怎么解决内存泄露的问题?(高频考点)

33.为什么要使用线程池?

34.线程池的线程数量确定?状态分析?关闭方式?

35.如何控制线程池线程的优先级

36.核心线程池ThreadPoolExecutor的参数/常见线程池的创建参数是什么样的?(高频考点)

37.new ThreadPoolExecutor(10,100,10,TimeUnit.MILLISECONDS,new LinkedBlockingQueue(10));一个这样创建的线程池,当已经有10个任务在运行时,第11个任务提交到此线程池执行的时候会发生什么,为什么?

38.实现一个自定义的ThreadFactory的作用通常是?

39.常见的线程池创建和参数分析?(高频考点)

40.ThreadPoolExecutor的工作流程(高频考点)

41.ScheduledThreadPoolExecutor中的使用的是什么队列?内部如何实现任务排序的?

42.线程池的运行逻辑,FixedThreadPool、CachedThreadPool的原理(高频考点)

43.用Executors.newCachedThreadPool创建的线程池,在运行的过程中有可能产生的风险是?

44.阻塞队列ArrayBlockingQueue、LinkedBlockingQueue分析(高频考点)

45.请合理的使用Queue来实现一个高并发的生产/消费的场景,给些核心的代码片段。

46.线程池关闭原理

47.JUC下的常见类的使用,take、poll的区别,put、offer的区别?

48.Future原理,其局限性是什么?并说说CompletableFuture核心原理?

49.你是否了解fork/join(基本思想)?在工作中是如何使用的?说说他们的优势是什么?(高频考点)

50.Java线程池的调优经验有哪些?(线程池的合理配置)(高频考点)

51.一个请求中,计算操作需要50ms,db操作需要100ms,对于一台8核的机器来说,如果要求cpu利用率达到100%,如何设置线程数?(高频考点)

52.如果系统中不同的请求对应的cpu时间和io时间都不同,那怎么设置线程数量?(高频考点)

53.线程池核心数20,最大600,阻塞队列200,当QPS200(注意是qps)的时候,请求是调第三方阻塞超时,请问怎么提高它的吞吐量(注意不能加机器)?(高频考点)

54.当前线程池是200,线程单次处理请求20ms,那么理论上单节点的qps 是多少呢?

55.多线程对Long数据进行加和会存在什么问题?如何解决?

56.Netty 的线程机制是什么样的?

考察方向分类:其他扩展高频知识考点

1.LRU算法是怎么实现的?大致说明下(高频考点)

2.后台服务出现明显“变慢”,谈谈你的诊断思路?(高频考点)

3.你了解Java应用开发中的注入攻击吗?

4.在Java程序运行阶段,可以用什么命令行工具来查看当前Java程序的一些启动参数值,例如Heap Size等。

5.用什么命令行工具可以查看运行的Java程序的GC状况,请具体写出命令行格式。(高频考点)

6.用什么工具,可以在Java程序运行的情况下跟踪某个方法的执行时间,请求参数信息等,并请解释下工具实现的原理。

7.当一个Java程序接收请求,很长时间都没响应的话,通常你会怎么去排查这种问题?

8.NIO(New I/O)用到的组件有哪些?

9.Netty对比Java NIO做了什么优化?(必考)

(二)JVM相关面试问题整理

相关答案参考:https://blog.csdn.net/xiaofeng10330111/article/details/86516867对JVM重点知识点进行整理,同时这些主要的总结可用于高频面试题https://blog.csdn.net/xiaofeng10330111/article/details/86516867

1.分析JVM运行时数据区域(必考)

2.简单介绍一下Java内存模型(必考)

3.简述内存分配与回收策略

4.垃圾回收机制(必考)

5.强、软、弱、虚引用的区分?

6.Java 堆永久代的回收(该部分归属java7,大概率不会问了)

7.垃圾回收算法(必考)

8.Minor GC和Full GC触发条件

9.Minor GC 和 Full GC 有什么不一样吗?

10.简述GC中Stop the world(STW),并说出安全点

11.各垃圾回收器的特点及区别,怎么做选择?

13.G1和CMS的比较

14.CMS垃圾回收器存在的问题及解决方案(必考)

15.讲讲CMS垃圾回收器?讲讲G1垃圾回收器?(必考)

16.简述ZGC垃圾回收器(必考)

17.双亲委派模型

18.谈谈双亲委派模型的"破坏"

19.JDBC和双亲委派模型关系分析

20.JVM锁优化和锁膨胀过程(必考)

21.JVM中GC Root的选择标准是什么?相关JVM的调优参数有哪些?在工作中怎么调优的?

22.JVM性能监控有哪些?

23.一个4核8G的服务器,初步设置JVM参数,如何分配?(必考)

24.ClassLoader如何工作的?

25.对象的创建过程是什么样的?

26.Java管理内存、内存泄漏和泄漏的原因?(必考)

27.OOM说一下?怎么排查?哪些会导致OOM?(必考)

28.JVM虚拟机老年代什么情况下会发生gc,给你一个场景,一台4核8G的服务器,每隔两个小时就要出现一次老年代gc,现在有日志,怎么分析是哪里出了问题?

29.判定一个对象不可达要回收,举个实际例子来说明。有没有从代码层面去直接分析一下?

(三)MySQL相关面试问题整理

相关答案在这里逐步增加:MySQL相关问题整理(可用作高频面试题和查缺补漏)备注:针对基本问题做一些基本的总结,不是详细解答!1.事务的基本要素2.事务隔离级别(必考)3.如何解决事务的并发问题(脏读,幻读)(必考)4.MVCC多版本并发控制(必考)5.为什么选择B+树作为索引结构(必考)6.索引B+树的叶子节点都可以存哪些东西(必考)7.查询在什么时候不走(预期中的)索引(必考)8.sql如何优化9.explain是如何解析sql的...https://blog.csdn.net/xiaofeng10330111/article/details/105361002

1.现有一个IP地址,你觉得在数据库中以何种方式进行存储最好?性能分析对比字符串存储 vs 整数存储?为什么数据库通常推荐将IPv4地址存储为32位整数而不是字符串的原因

2.事务的基本要素(高频考点)

3.事务隔离级别(高频考点)

4.如何解决事务的并发问题(脏读、不可重复读和幻读)(高频考点)

5.脏读的表现和具体解决并发问题(必考)

6.不可重复读的表现和具体解决并发问题(高频考点)

7.幻读的表现和具体解决并发问题(高频考点)

8.简述MVCC多版本并发控制(高频考点)

9.从CRUD角度说一下InnoDB的MVCC实现机制

10.为什么选择B+树作为索引结构(高频考点)

11.为什么平衡二叉树(或红黑树)不适合作为索引?

12.总是谈及索引,那索引的目的是什么?

13.简单谈谈MYSQL Innodb索引的数据结构,并简述B+树的查找过程(高频考点)

14.说说索引使用注意事项与数据类型选择,或则说说MySQL常见索引

15.谈谈索引优化的思路(高频考点)

16.聚簇索引与非聚簇索引的区别?(高频考点)

17.InnoDB一棵B+树可以存放多少行数据?可否对InnoDB存储引擎B+树的树高进行推导

18.MyisAM索引与InnoDB索引相比较

19.查询在什么时候不走(预期中的)索引(高频考点)

20.SQL如何优化,给出思路(说出部分即可,一下也只是一些思路)

21.SQL执行顺序是什么样的?(高频考点)

22.explain是如何解析sql的

23.order by原理

24.InnoDB的行锁/表锁(高频考点)

25.说说行锁算法(记录锁+间隙锁+下一键锁)(高频考点)

26.myisam和innodb的区别,什么时候选择myisam

27.binlog\redolog\undolog都是什么,起什么作用?(高频考点)

28.数据库的乐观锁与悲观锁的区别是什么?乐观锁常用的两种实现方式是什么?

29.当前读和快照读

30.一条sql的执行过程?

31.数据库什么时候决定分库分表?怎么考虑的?

32.mysql 底层查询b+树流程(高频考点)

33.设置主键的时候为啥是按1递增的?有啥好处?

34.MySQL主从同步实现方式?有什么问题?如何解决?

35.什么是覆盖索引?如果查询主键id下覆盖索引还生效吗?(高频考点)

36.使用explain 查看数据已经使用了索引,但还是查询很慢,可能的原因是?

37.对于sql如下select a from T where b=23 and c>4 order by d,其如何建立索引可以使查询高效,如何验证?分析下(高频考点)

38.1000万的db数据分页怎么处理?

39.DB搜索引擎的组成是什么?原理是什么?

基本SQL练习

1.查询平均成绩大于等于85的所有学生信息

2.有两张表:订单表有订单号和产品id,产品表有产品id 和产品名称,设计SQL实现返回产品名称和每一项产品的总订单数

3.查询每个部门的员工数量和平均工资

4.查询每个部门的最高工资和最低工资

5.查询每个部门的员工数量和工资中位数

6.查询每个商品类别的销售数量和销售总额

7.查询每个商品类别的销售数量和销售总额,并按照销售总额从高到低排序

8.查询每个商品类别的销售数量和销售总额,并只显示销售总额排名前3的商品类别

(四)Redis相关面试问题整理

相关答案在这里逐步增加:Redis相关问题整理(可用作高频面试题和查缺补漏)_张彦峰ZYF的博客-CSDN博客备注:针对基本问题做一些基本的总结,不是详细解答!1.Redis在项目中的主要作用是是什么?怎么用的?(应用场景)2.Redis支持的数据类型(必考)3.zset跳表的数据结构(必考)4.Redis的数据过期策略(必考)5.Redis的LRU过期策略的具体实现6.如何解决Redis缓存雪崩,缓存穿透问题7.Redis的持久化机制(必考)8.Redis的管道pipel...https://blog.csdn.net/xiaofeng10330111/article/details/105360939

1.单线程的Redis为什么快?

2.Redis支持的数据类型(必考)

3.Redis和memcached的区别

4.Redis在项目中的主要作用是是什么?怎么用的?(必考)

5.Redis实现分布式锁的思路方案(必考)

6.分析基于Redis的限流器实现

7.Redis和DB数据一致性处理(必考)

8.Redis的数据过期策略分析(必考)

9.Redis的LRU过期策略的具体实现(必考)

10.分析Redis缓存雪崩问题以及解决方案(必考)

11.分析Redis缓存穿透问题和解决方案(必考)

12.Redis的持久化机制分析(必考)

13.分析下Redis的管道pipeline

14.Redis集群容错机制是什么样的?(必考)

15.Redis集群中某个master节点挂了,后面流程怎么判断?(必考)

16.高并发情况下,对于Redis的更新操作有哪些注意事项?

17.高并发下,先更新数据库,再删除缓存,存在啥问题,如何解决呢?

18.高并发情况下,先删除缓存,再更新数据库,这样会有啥问题,解决方案是?

19.zset跳表的数据结构分析(必考)

20.展开说说你了解的跳表

21.Redis使用跳表不用B+树的原因?

22.跳跃表和B+树结构上有啥区别

23.Redis的缓存优化方向有哪些?你们怎么理解的?对热点键的注意事项设计什么?

24.跳表(Skip List)三大问题举例

25.Zset底层的数据结构分析,如何体现的高效?(必考)

26.Redis 6.0以后的线程模型

27.Redis集群模式,节点怎么通信的?满足了CAP那两点?

28.Redis分布式锁实现上有啥问题缺陷?怎么解决?

29.如果是DB实现分布式锁的话,主要思路是?有啥问题?怎么解决?

30.Redis 分布式锁的问题缺以及优化思路

31.Redis 热点key 的问题和优化处理

32.Redis中有一批key瞬间过期,为什么其它key的读写效率会降低?

33.Redis的zset底层什么时候是hash,什么时候是跳表?

34.Redis 数据结构有哪些,底层实现都是什么?

35.Redis 热key 是什么,有什么问题,怎么发现,怎么解决?

36.Redis 中底层是跳表结构,那么插入和查询一个数的流程如何?如果是单位查询,流程又是如何实现的?

(五)Spring相关面试问题整理

相关答案在这里逐步增加:Spring相关高频面试题整理_张彦峰ZYF的博客-CSDN博客备注:针对基本问题做一些基本的总结,不是详细解答!1.Spring Boot与以前的Spring有什么区别?2.Spring Boot启动加载过程是什么样的?3.Spring的IOC/AOP的实现(必考)4.动态代理的实现方式(必考)是否使用过GCLB,和JDK的区别是什么?5.Spring如何解决循环依赖(三级缓存)(必考)6.Spring的@Transactional如...https://blog.csdn.net/xiaofeng10330111/article/details/105361028

1.Spring Boot与以前的Spring有什么区别?

2.Spring Boot启动加载过程是什么样的?

3.Spring的IOC/AOP的实现(必考)

4.动态代理的实现方式(必考)是否使用过CGLiB,和JDK的区别是什么?

5.何时使用JDK还是CGLiB?如何强制使用CGLIB实现AOP?

6.Spring在选择用JDK还是CGLiB的依据是什么?CGlib比JDK快?

7.Spring如何解决循环依赖(三级缓存)(必考)

8.Spring中解决循环依赖为什么要用三级缓存,二级为什么不行呢?

9.spring能解决那些循环依赖、不能解决那些循环依赖,为什么?

10.Spring注入bean的方式有哪些(列举下你使用过的注入Bean的方式)?

11.Spring的后置处理器分析

12.BeanFactory和ApplicationContext的联系和区别

13.说说你对spring事务的理解?

14.Spring的@Transactional如何实现的(必考)

15.Spring的事务传播级别

16.Spring的事务隔离级别

17.Spring的事务失效场景分析

18.Spring的事务失效原因分析(必考)

19.Spring Cloud Zuul网关的调优策略有哪些?怎么实现其高可用?Zuul和Gataway,你们项目中是怎么选择的?项目中对Zuul网关层的要求是什么样的?

20.Spring Cloud Eureka和Nacos对比?怎么做选择?Eureka中高可用是怎么做的?进行的调优有哪些?原理是什么?

21.Spring Cloud 中常用的注解有哪些?怎么用的?

22.Spring Cloud中的组件有哪些?具体说说?微服务架构中用到的关键技术有哪些?

23.Spring Cloud Config配置架构是什么样的?可视化怎么做的?设计的业务有哪些?

(五)网络协议与编程IO相关面试问题整理

相关答案在这里逐步增加:HTTP相关高频题整理_张彦峰ZYF的博客-CSDN博客备注:针对基本问题做一些基本的总结,不是详细解答!1.HTTP有哪些方法?返回状态码?2.三次握手过程?第三条丢了会怎样?有什么现象?3.HTTP报头格式?如何解析HTTP报头?4.TCP连接中的三次握手和四次挥手,四次挥手的最后一个ack的作用是什么,为什么要time wait,为什么是2msl?...https://blog.csdn.net/xiaofeng10330111/article/details/105361059

1.TCP三次握手过程?第三条丢了会怎样?有什么现象?(高频考点)

2.TCP连接中的四次挥手?四次挥手的最后一个ack的作用是什么?为什么要time wait,为什么是2msl?(高频考点)

3.HTTP有哪些方法?返回状态码?

HTTP方法与描述:

HTTP状态码与描述:

4.GET方法与POST方法的区别

5.HTTP报头格式是什么样的?实际中如何解析HTTP报头呢?

6.URI和URL的区别

URI(统一资源标识符)

URL(统一资源定位符)

区别:

7.浏览器发生302跳转背后的逻辑?(高频考点)

8.简单说一下HTTP协议的交互流程?(高频考点)

9.HTTP和HTTPS的差异?(高频考点)

10.SSL/TLS的交互流程?

11.Rest和Http什么关系? 大家都说Rest很轻量,你对Rest风格如何理解?(高频考点)

12.TCP的滑动窗口协议有什么用?讲讲原理。(高频考点)

13.说一下HTTP的断点续传?解决方法是?

14.说说http协议的多线程下载原理以及实现步骤?有啥优势?

15.什么是长连接和短链接?举例说明(高频考点)

长连接(Keep-Alive)

短连接

16.cookie和session解决什么问题,相同点和不同点?(高频考点)

17.了解session集群解决方案,通用解决方案?(高频考点)

18.HTTP的安全校验主要有几种?可以说说?(高频考点)

19.epoll、select、poll原理

20.基于BIO实现的Server端,当建立了100个连接时,会有多少个线程?如果基于NIO,又会是多少个线程? 为什么?

21.通常来说基于NIO实现的Server端,会用多少个线程去处理IO事件,为什么?

(六)设计模式相关面试问题整理

1.MyBatis设计模式应用分析MyBatis设计模式应用分析_张彦峰ZYF的博客-CSDN博客对MyBatis中应用的一些设计模式的整体分析,主要从三方面进行展开分析:创建型设计模式+结构型设计模式+行为型设计模式,每一种都提炼源码进行对应的分析详解https://zyfcodes.blog.csdn.net/article/details/85330132

2.单例模式使用分析单例模式的使用总结_单例模式使用_张彦峰ZYF的博客-CSDN博客单例模式是指确保一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。实现方式介绍分析:饿汉式单例模式+懒汉式单例模式(双重检查锁)+静态内部类实现单例模式+注册式单例模式https://zyfcodes.blog.csdn.net/article/details/105652399

3.代理模式使用分析代理模式的使用总结_张彦峰ZYF的博客-CSDN博客目录一、代理模式二、静态代理(一)静态代理(二)静态代理简单实现三、动态代理(一)动态代理(二)动态代理简单实现四、动态代理原理分析五、InvocationHandler接口和Proxy类详解六、JDK动态代理和CGLIB动态代理代码示例比较与总结(一)定义创建用户管理接口(二)用户管理实现类,实现用户管理接口(被代理的实现类)(三)采用JDK代...https://zyfcodes.blog.csdn.net/article/details/105633821

4.装饰器模式使用分析装饰器模式的使用总结_装饰器模式实际运用_张彦峰ZYF的博客-CSDN博客一、装饰器模式的概念及怎么用?1.基本概念和功能:装饰器模式能够实现从一个对象的外部来给对象添加功能,有非常灵活的扩展性,可以在对原来的代码毫无修改的前提下,为对象添加新功能。除此之外,装饰器模式还能够实现对象的动态组合,借此我们可以很灵活地给动态组合的对象,匹配所需要的功能。2.举例分析:假设现在有这样一个需求,让你设计一个装修功能,用户可以动态选择不同的装修功能来装饰自己的房子...https://zyfcodes.blog.csdn.net/article/details/105608235

5.模板模式使用分析模版模式的应用实际举例_模板模式应用场景实例_张彦峰ZYF的博客-CSDN博客模版模式应该是工作中最常用的设计模式之一,直白的讲就是如果的一些处理方式是有一定的模版流程处理的,那么在应用中使用该模式在合适不过了。对于其基本的业务应用,我简单写了以下三个基本的通用模版(业务失败重试机制、业务前置检查流程模版、Thrift远程调用处理模版)来展示,有问题的可以留言纠正,谢谢!https://zyfcodes.blog.csdn.net/article/details/123619576

6.工厂模式和策略模式的综合使用分析工厂模式和策略模式的综合使用_工厂模式和策略模式结合_张彦峰ZYF的博客-CSDN博客一、简单的工厂模式了解与使用二、简单的策略模式了解与使用三、工厂模式和策略模式的综合使用https://zyfcodes.blog.csdn.net/article/details/106943391

7.状态模式的使用分析状态模式的使用总结_张彦峰ZYF的博客-CSDN博客状态模式基本介绍与应用分析介绍,同时对于Spring-statemachine状态机框架给出了应用,最后介绍在外卖营销业务中的具体案例分析https://zyfcodes.blog.csdn.net/article/details/106080007

8.责任链模式(以及变种管道模式)使用分析责任链模式(以及变种管道模式)的应用案例_管道模式和责任链模式_张彦峰ZYF的博客-CSDN博客责任链在实际开发中的应用还是比较多的,特别是在营销订购系统、审核流转换处理、任务流程处理系统等系统中,其实我们在开发中往往主要应用的主要无非是以下三个场景(起码以我的平时开发的角度来看):一是无需太关心责任链中各处理流的顺序的简单使用;二是需要关注处理顺序,按责任链条延续处理,每个处理节点均可对请求进行节点的处理, 或将其传递给链上的下个处理节点;三是在处理中和纯的责任链模式在链上只会有一个处理器用于处理业务数据存在差异,需要进行管道模式采用多个处理器都会处理业务数据。针对以上场景进行业务举例和代码书写https://zyfcodes.blog.csdn.net/article/details/123956717

(七)消息中间件相关面试问题整理

相关答案在这里逐步增加:消息中间件相关高频面题整理_张彦峰ZYF的博客-CSDN博客备注:针对基本问题做一些基本的总结,不是详细解答!1.用过哪些MQ,怎么用的,和其他mq比较有什么优缺点,MQ的连接是线程安全的吗?2.MQ系统的数据如何保证不丢失?...https://blog.csdn.net/xiaofeng10330111/article/details/105361083

1.用过哪些MQ,怎么用的,和其他mq比较有什么优缺点,MQ的连接是线程安全的吗?

2.消息中间件的组成有哪些?

3.消息中间件模式分类有哪些?(必考)

4.分析消息中间件的普遍优势(必考)

5.消息中间件常用协议分析

6.消息队列应用场景分析(必考)

7.Kafka数据如何保证不丢失?(必考)

8.Kafka如何保证消息按顺序执行?(必考)

9.Kafka如何保证消息不重复消费?(必考)

10.Kafka如何保证消息队列的高可用?(必考)

11.Kafka 如何保证可靠性?(必考)

12.Kafka的文件存储机制

13.Kafka消息是采用Pull模式,还是Push模式?(必考)

14.Kafka是如何实现高吞吐率的?

15.Kafka判断一个节点还活着的两个条件?

16.Kafka采用的拉取模式还是推送模式?两者有啥区别?

17.如果流量突增导致MQ积压过高,该如何处理?

18. Kafka 什么情况下数据丢失?

19.Netty和kafka都是用了零拷贝,那么零拷贝究竟是怎么实现的?底层原理是?

20.导致MQ积压的原因有哪些?怎么应对?

(八)业务系统及其他相关面试问题整理

相关答案在这里逐步增加:业务系统及其他相关面试问题整理备注:针对基本问题做一些基本的总结,不是详细解答!1.遇到线上相关问题怎么排查?2.高并发系统的限流如何实现?3.高并发秒杀系统的设计?4.负载均衡如何设计?5.假如双十一等一些促销有高并发访问量要来访问我们的数据,怎么样做到可靠的服务?6.一个黑名单集合,数据量很大,快速查询一个值是否在集合里,怎么设计,布隆过滤器。7.常见的设计模式及应用场景。...https://blog.csdn.net/xiaofeng10330111/article/details/105361100

1.遇到线上相关问题怎么排查?

2.高并发系统的限流如何实现?

3.高并发秒杀系统的设计?

4.秒杀并发情况下库存为负数问题分析

5.实现一套负载均衡架构,如何思考设计?考虑哪些主要内容呢?

6.假如双十一等一些促销有高并发访问量要来访问我们的数据,怎么样做到可靠的服务?

7.一个黑名单集合,数据量很大,快速查询一个值是否在集合里,怎么设计?

8.一个网站有 20 亿 url 存在一个黑名单中,这个黑名单要怎么存?若此时随便输入一个 url,你如何快速判断该 url 是否在这个黑名单中?并且需在给定内存空间(比如:500M)内快速判断出。

9.设计题:钱包领券的架构设计。

10.春节红包的架构设计和容量设计

11.设计一个多级分类的表,然后组装数据返给前端

12.业务设计一个订单下单的流程,需要考虑哪些问题和使用哪些技术?如果有状态流转的话如何保证其有序性?

13.设计题:设计一种聊天模式,在该模式下用户A给用户B发送消息,在B没有回复消息前,A最多可以发送三条消息。实现思路是?具体实现是?

14.定时任务部署在多个服务器会重复执行,一般任务执行一次即可,如何设计保证可用性分析?

15.负载均衡的意义是?如何实现负载均衡呢?有哪些算法呢?4层负载均衡和7层负载均衡的区别是?

16.系统服务的幂等性实现分析?

17.怎么表达滑动窗口限流?

18.查询接口调优,不能用缓存,要求实时性,怎么调优?

19.现在用户要查询一张表,当流控降级时,兜底方案应该是怎么样的?

20.用户下订单,订单按什么字段分表?分表之后,如果想按照某个时间段查询指定时间段内的所有用户的订单怎么办?

21.给定一个内存区域用来停车,车可能有货车、轿车等,如何高效分配和设计?有哪些最优思考点?反思到程序的内存分配上,如何高效分配和管理内存呢?

22.给一个接口,入参是账户信息,出参是账户余额,问怎么设计接口?

23.学生选课系统做表设计分析,只聚焦在学生选课这个场景,最好说出表之间的关系分析

24.微博、微信朋友圈、头条的资讯推荐、快手抖音的视频推荐等,比如一条朋友圈状态、一条微博、一条咨询或一条短视频等发布,对应用户可以实时看到呢?

25.什么是读扩散与写扩散?有啥优缺点?

26.实现微信二维码扫码PC登录设计?

27.微信客户端之间怎么保持的连接?服务器怎么知道其在不在线?

28.连接池设计分析,从技术难点和实现上分析

29.熔断器设计思路,具体说明实现难点和注意事项

30.如何设计一个订单系统?

31.数据库设计题:要求设计一个合理的数据库模型,考虑数据库结构、索引设计、数据分片、读写分离、数据同步等问题。

32.分布式系统设计题:要求设计一个分布式系统,包括分布式任务调度、分布式锁、分布式ID生成等。

33.缓存设计题:要求设计一个高效的缓存系统,考虑缓存策略、缓存一致性、缓存穿透、缓存雪崩等问题。

34.基础架构设计题:要求设计一个稳定高效的基础架构,如负载均衡、高可用集群、服务发现与治理等。

35.微服务架构设计题:要求设计一个微服务架构,包括服务拆分、服务注册与发现、服务调用等。

36.数据结构与算法设计题:要求设计一个高效的算法,如排序算法、查找算法、图算法等。

37.项目中限流怎么做的?漏桶和令牌桶原理,使用的什么数据结构?并发下队列是否有性能问题?

38.Rpc和消息队列的优缺点,使用场景

39.如何设计rpc框架?你认为其相比其他框架的优点是什么?

40.一般讨论一个系统或服务的技术难点主要从哪些方面分析?

41.做一个商品敏感词系统所面临的技术难点和解决方案有哪些呢?

42.在设计一个接口的时候,我们重点关注的点有哪些?

43.服务器的请求转发了解吗?具体讲讲

44.微博评论数可能不准确,如何解决这个问题,因为一般都千人千面的那个人看到的都不一样

45.布隆过滤器为啥会误判,举例说明?

46.cpu 飘高的原因分析?生产环境中如何应对?

dc37fbff0043c56ec701ed8bf661d4a7.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2315966.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第八节:红黑树(初阶)

【本节要点】 红黑树概念红黑树性质红黑树结点定义红黑树结构红黑树插入操作的分析 一、红黑树的概念与性质 1.1 红黑树的概念 红黑树 ,是一种 二叉搜索树 ,但 在每个结点上增加一个存储位表示结点的颜色,可以是 Red和 Black 。 通过对 任何…

Webpack vs Rollup vs Parcel:构建工具深度对比

文章目录 1. 核心特性对比1.1 功能定位1.2 技术架构对比 2. 配置与使用2.1 Webpack 配置示例2.2 Rollup 配置示例2.3 Parcel 使用示例 3. 性能对比3.1 构建速度3.2 输出质量 4. 生态系统4.1 插件生态4.2 学习曲线 5. 适用场景分析5.1 Webpack 适用场景5.2 Rollup 适用场景5.3 P…

Centos7使用docker搭建redis集群

前置准备: Centos7安装docker就不多说了… 本次目的是搭建3主3从(当然你也可以按需扩展)准备三台服务器,假定IP分别为:192.168.75.128、192.168.75.129、192.168.75.130安装 redis: #拉取redis docker p…

数字孪生像魔镜,映照出无限可能的未来

在当今科技飞速发展的时代,数字孪生作为一项极具潜力的前沿技术,正逐渐崭露头角,成为众多领域关注的焦点。它犹如一面神奇的魔镜,以数字化的方式精准映照出现实世界中的各种实体与系统,为我们开启了一扇通往无限可能未…

前端知识点---原型-原型链(javascript)

文章目录 原型原型链:实际应用面试题回答 原型 原型:每个函数都有prototype属性 称之为原型 因为这个属性的值是个对象,也称为原型对象 只有函数才有prototype属性 作用: 1.存放一些属性和方法 2.在Javascript中实现继承 const arr new Array(1, 2, 3, 4) con…

数据类设计_图片类设计之6_混合图形类设计(前端架构)

前言 学的东西多了,要想办法用出来.C和C是偏向底层的语言,直接与数据打交道.尝试做一些和数据方面相关的内容 引入 接续上一篇,讨论混合图形类设计 方法论-现在能做什么 这段属于聊天内容---有句话是这么说的:不要只埋头拉车,还要抬头看路。写代码也是…

2024年12月CCF-GESP编程能力等级认证C++编程一级真题解析

一级真题的难度: ‌ CCF-GESP编程能力等级认证C++编程一级真题的难度适中‌。这些真题主要考察的是C++编程的基础知识、基本语法以及简单的算法逻辑。从搜索结果中可以看到,真题内容包括了选择题、编程题等题型,涉及的内容如C++表达式的计算、基本输入输出语句的理解…

尤瓦尔·诺亚·赫拉利(Yuval Noah Harari)作品和思想深度报告

尤瓦尔诺亚赫拉利(Yuval Noah Harari)作品和思想深度报告 引言 尤瓦尔诺亚赫拉利(Yuval Noah Harari)是当今最具影响力的公众知识分子之一 ynharari.com 。作为一名历史学家和哲学家,他以宏大的视角和清晰生动的语言…

JConsole:JDK性能监控利器之JConsole的使用说明与案例实践

🪁🍁 希望本文能给您带来帮助,如果有任何问题,欢迎批评指正!🐅🐾🍁🐥 文章目录 一、背景二、JConsole的启动与连接2.1 JConsole的启动2.2 进程连接2.2.1 本地进程连接2.2…

Neural Architecture Search for Transformers:A Survey

摘要 基于 Transformer 的深度神经网络架构因其在自然语言处理 (NLP) 和计算机视觉 (CV) 领域的各种应用中的有效性而引起了极大的兴趣。这些模型是多种语言任务(例如情绪分析和文本摘要)的实际选择,取代了长短期记忆 (LSTM) 模型。视觉 Tr…

Browser Copilot 开源浏览器扩展,使用现有或定制的 AI 助手来完成日常 Web 应用程序任务。

一、软件介绍 文末提供源码和开源扩展程序下载 Browser Copilot 是一个开源浏览器扩展,允许您使用现有或定制的 AI 助手来帮助您完成日常 Web 应用程序任务。 目标是提供多功能的 UI 和简单的框架,以实现和使用越来越多的 copilots(AI 助手&…

基于PSO粒子群优化的XGBoost时间序列预测算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 XGBoost算法原理 4.2 XGBoost优化 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 2.算法运行软件版本 matlab2024b 3.部分核心程序 (完整版代码包含…

aws(学习笔记第三十三课) 深入使用cdk 练习aws athena

文章目录 aws(学习笔记第三十三课) 深入使用cdk学习内容:1. 使用aws athena1.1 什么是aws athena1.2 什么是aws glue1.2 为什么aws athena和aws glue一起使用 2. 开始练习aws athena2.1 代码链接2.2 整体架构2.3 代码解析2.3.1 创建测试数据的S3 bucket2.3.2 创建保…

基于RAGFlow本地部署DeepSpeek-R1大模型与知识库:从配置到应用的全流程解析

作者:后端小肥肠 🍊 有疑问可私信或评论区联系我。 🥑 创作不易未经允许严禁转载。 姊妹篇: DeepSpeek服务器繁忙?这几种替代方案帮你流畅使用!(附本地部署教程)-CSDN博客 10分钟上手…

SpringBoot 集成logback日志链路追踪

项目场景 有时候一个业务调用链场景,很长,调了各种各样的方法,看日志的时候,各个接口的日志穿插,确实让人头大。 为了解决这个痛点,就使用了 TraceId,根据 TraceId 关键字进入服务器查询日志中…

【Python办公】Excel通用匹配工具(双表互匹)

目录 专栏导读1、背景介绍2、库的安装3、核心代码4、完整代码总结专栏导读 🌸 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手 🏳️‍🌈 博客主页:请点击——> 一晌小贪欢的博客主页求关注 👍 该系列文章专栏:请点击——>Python办公自动化专…

【JAVA】七、基础知识“if+switch+循环结构”详细讲解~简单易懂!

目录 7、逻辑控制 7.1 分支结构 7.1.1 if 语句 语法格式1 语法格式2 语法格式3 7.1.2 switch语句 基本语法 执行流程 7.2 循环结构 7.2.1 while循环 语法格式 7.2.2 Break 7.2.3 Continue 7.2.4 for循环 语法格式 执行过程 7.2.5 do while循环 语法格式 7.3 …

【C++】每日一练(轮转数组)

本篇博客给大家带来的是用C语言来解答轮转数组! 🐟🐟文章专栏:每日一练 🚀🚀若有问题评论区下讨论,我会及时回答 ❤❤欢迎大家点赞、收藏、分享! 今日思想:不服输的少年啊…

Python(学习一)

做网站有成熟的框架像FLASK、DJANGO、TORNADO,写爬虫有好用到哭的REQUESTS,还有强大到没盆友的SCRAPY 随着NUMPY、SCIPY、MATLOTLIB等众多第三方模块的开发和完善,不仅支持py支持各种数学运算,还可以绘制高质量的2D和3D图像&…

Java中类和对象

类和对象 面向对象的认识类的定义和使用1 类的定义2 类的创建3 类的实例化 构造方法1 构造方法的概念2 构造方法的注意事项 this关键字 面向对象的认识 前言 何为面向对象何为面向过程呢?,C语言是最经典的面向过程的语言,但是C语言虽然可以解决一定的问…