当前位置: 首页 > news >正文

Java中级面试题记录(三)

1.职业规划?

2.每家公司离职原因?

3.SpringCloud用到了哪些组件?

  • GateWay
  • Nacos
  • OpenFeign
  • Seata
  • Hystrix

4.PG和Mysql的区别?

在这里插入图片描述

5.两种数据库的存储区别?

在这里插入图片描述

6.MySQL索引了解的内容?

一口气搞定索引的所有知识

7.MySQL索引为什么采用B+树?

在这里插入图片描述

8.MySQL写多读少的时候采用哪种结构?

在这里插入图片描述

9.非关系型数据库用的多吗?

Redis用的多、MongoDb使用过但是使用不多

10.MongoDb存储的是什么结构?

MongoDB是一个基于文档的数据库,将数据存储为JSON格式的文档。每个文档都是一组键值对,类似于JSON对象。MongoDB文档类似于JSON的BSON格式,可以存储复杂的数据结构。MongoDB支持查询语言,语法类似于面向对象的查询语言,可以实现类似关系数据库单表查询的绝大部分功能,还支持对数据建立索引

11.MongoDb的存储引擎?

在这里插入图片描述

12.注册中心为什么使用Nacos?

因为Nacos比Eurka更好用

13.Feign你们有做单独的配置吗?

  • Feign中配置了httpclient连接池
  • Feign中配置GZIP压缩参数
  • Feign中配置了客户端的建立连接超时时间和读取资源超时时间等等
  • Feign中自定义了异常解码器
  • 修改了Feign中的日志级别
  • 调用Feign的Decoder、Encoder配置自定义转换器 支持Geometry的序列化和反序列化

14.@FeignClient中有个configuration属性有使用过吗?

@FeignClient中的configuration属性用于指定Feign客户端的配置类,这个配置类可以提供各种参数和方法,以提供给该客户端使用。我们项目中是使用配置文件统一进行客户端属性设置的!

15.Feign的使用中有没有遇到什么问题?

项目中同事引入Feign后自己重新定义了轮询的负载均衡策略,导致测试环境中Feign偶尔出现找不到服务异常,删除对应的负载均衡策略配置后就正常了。

16.你对XX-job的二次开发做了哪些操作?

已经从简历里面删除了,不太熟悉

17.分布式锁为什么使用Redisson?

  • 使用简单、只需要考虑加锁、解锁、不需要考虑锁的超时等问题
  • Redisson不仅仅可以当作分布式锁还可以用作其它功能

18.Redisson使用分布式锁的缺点?

在这里插入图片描述

19.Zookeeper挂了之后提供者和服务者是否还可以通信?

可以,因为有本地缓存

20.项目中线程池为什么采用ThreadPoolTaskExecut?为什么不适用jdk提供的?

原则上来说都是可以使用的,不过ThreadPoolTaskExecut线程池是由Spring提供的,是对jdk中的线程池的扩展,提供了更加丰富的API,还可以给线程池对应的线程设置统一前缀名称,因为项目中肯定是离不开Spring的,因此我们肯定优先使用Spring提供的线程池了。

21.线程池的参数配置需要注意什么?自己有没有测试过?实践出真知!

最大线程数配置:
IO密集型:CPU核数/(1-阻塞系数)
CPU密集型:CPU核数*2

22.生产中部署使用的是k8s吗?对k8s熟悉吗?

了解一些

23.消息中间件除了RabbitMQ还是用过其它的吗?

用过mosquitto 对接设备时用过

24.RabbitMQ的死信队列有使用过吗?

消费者在消费生产者生产的消息时发生了某些特殊情况,导致消息无法被正常消费,存放这些未被消费的消息的队列即为死信队列

25.项目过程中哪些技术栈比较熟悉,有心得?对相关技术的原理有没有做了解?

26.分布式的任务调度框架,是如何做到分布式调度的?

在这里插入图片描述

27.分布式的任务调度框架使用时需要注意的点、可能会遇到哪些问题?

在这里插入图片描述

28.ORM框架比较熟悉哪些?JPA有使用过吗?

Mybatis、Mybatis-Plus

29.Mybatis的一级缓存和二级缓存有了解过吗?

30.单表多条件的查询,用Mybatis有哪些方法来实现?

31.数据库除了MySQL还有用到其它的吗?

PG

32.MySQL数据库哪些场景下不适合建立索引?

  • 字段值区分不大
  • 频繁更新的字段
  • 查询条件用不到的字段
  • 表的数据量太小
  • 字段值无序的(比如UUID)

33.对GIS相关的值有做处理吗?

使用PG数据库中提供的函数计算坐标的距离

34.SpringCloud体系下面哪些组件在你们项目中有使用到呢?

  • GateWay
  • Nacos
  • OpenFeign
  • Seata
  • Hystrix

35.日志采集你们项目用到哪些框架呢?

36.项目中的日志框架是什么呢?log打印出来的日志有没有进行汇总呢?

log4j2

37.对条件注入有了解吗?对具体的原理有做了解吗?有使用过哪个注解吗?

38.jdk的作用域的修饰符分别有哪些?各自的范围是什么?protect的作用域的是什么?默认的作用域是什么?

  • private: 本类
  • public: 所有类
  • protect: 本类、同包类、其他包子类
  • 默认:本类、同包类

39.接口里面可以有方法的实现吗?

可以,可以有默认方法、java8之后还可以有私有方法

40.抽象工厂模式熟悉吗?

JAVA设计模式(五)——抽象工厂模式

41.项目中使用过设计模式吗?使用场景是什么?

策略模式

42.针对上面的场景,使用策略模式有哪些关键的点?如何根据不同的策略执行不同的流程?

43.在多线程内,线程和线程之间进行数据交换,有哪些方法?

  • 通过构造方法传递数据
  • 通过ITL
  • 通过变量和方法传递数据
  • 通过回调函数传递数据

Java多线程:向线程传递参数的三种方法

44.DDD有做过了解吗?

领域模型设计

45.你了解哪些通信协议?Https协议熟悉吗?

  • TCP
  • UDP
  • HTTP
  • HTTPS
  • MQTT

46.对于服务安全这一块,你了解哪些?

  • 防注入
  • 横向越权
  • 纵向越权
  • 越权访问

47.RestFul熟悉吗?说下你的理解?

什么是Restful风格?与传统的访问风格有什么不同?

48.docker的容器编排使用的是什么?

docker-compose

http://www.lryc.cn/news/157850.html

相关文章:

  • spring高级源码50讲-1-8(spring容器与bean)
  • 微服务06-Dockerfile自定义镜像+DockerCompose部署多个镜像
  • 2023高教社杯 国赛数学建模A题思路 - 定日镜场的优化设计
  • Qt +VTK+Cmake 编译和环境配置(第二篇,中级篇, 重新编译)
  • 图的学习,深度和广度遍历
  • ChatGPT驱动下,网站AI客服该如何进步和创新
  • Linux系统中实现便捷运维管理和远程访问的1Panel部署方法解析
  • 数学建模黄河水沙监测数据分析
  • Unity ProBuilder(自己创建斜面、拐角)
  • 以气象行业为例,浅谈在ToB/ToG行业中如何做好UI设计
  • shiny根据数据的长度设置多个色板
  • 2023高教社杯 国赛数学建模D题思路 - 圈养湖羊的空间利用率
  • 网络是如何进行通信
  • vue3 watch watchEffect
  • lintcode 1410 · 矩阵注水【BFS 中等 vip】
  • 软件架构设计(十) 架构评估(复审)-方法论
  • SQL注入案例
  • lv3 嵌入式开发-5 linux shell命令(进程管理、用户管理)
  • 学习Bootstrap 5的第六天
  • 攻防世界-WEB-NewsCenter
  • vue router 路由跳转获取不到参数
  • 将 Llama2 中文模型接入 FastGPT,再将 FastGPT 接入任意 GPT 套壳应用,真刺激!
  • Ubuntu之apt-get系列--apt-get安装软件的方法/教程
  • redux的理解
  • 【Java】Java 多线程的应用场景
  • Mysql--技术文档--索引-《索引为什么查找数据快?》-超底层详细说明索引
  • jmeter 接口快速创建
  • docker 笔记10:Docker轻量级可视化工具Portainer
  • 028:vue上传解析excel文件,列表中输出内容
  • 在VR全景中嵌入3D模型有哪些优势?