记录一下某外资的面试,阿里P8大佬整理

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注大数据)
img

正文

标题18、tansaction的注解,传播机制有哪些

标题19、关于数据库。Redies和mysql的事务机制的区别

标题20、怎么设定最大和最小连接数

标题21、关于索引

## 标题22、消息中间件有用到什么kafka和rabbitMQ。消息丢失、消息重复怎么解决

Kafka 在消息处理的顺序性方面有一些机制,但并不保证消息的严格有序性。以下是 Kafka 处理消息顺序性的一些特点:

1、分区内有序性: 在每个分区内,消息是有序存储的。Kafka 保证对于每个分区,消息的写入和消费是按照消息的顺序进行的。这意味着对于同一个分区的消息,它们将按照发送的顺序被消费。这样保证了在单个分区内的消息顺序性。

2、分区间无序性: 在多个分区之间,消息的顺序性不能得到保证。不同分区的消息在 Kafka 集群中是并行处理的,而且 Kafka 也不会跨分区地维护全局有序性。因此,对于多个分区的消息,它们在消费者端接收的顺序可能与发送顺序不一致。

3、消息复制: Kafka 支持多副本复制,每个分区可以有多个副本存储在不同的 Broker 上。在进行消息复制时,Kafka 会保证消息的副本在各个 Broker 上的复制顺序与领导者(Leader)分区中的消息顺序保持一致,从而确保数据的一致性。

1.kafka rabbitmq如何保证消息不丢失

2.如何保证幂等

数据库

1.sql的优化

2.索引

索引B+树的实现

3.连接数

max_connections

4.explains里面的参数都有啥

在这里插入图片描述

自动装配原理

自动装配

beanidfiny

在这里插入图片描述

事务的传播机制

事务

单体服务到微服务架构的升级

io流中的设计模式

arraylist的扩容机制

在 Java 中,ArrayList 是基于数组实现的动态数组,当向 ArrayList 中添加元素时,如果当前数组已经满了,就需要进行扩容操作。ArrayList 的扩容机制如下:

初始容量:当创建一个 ArrayList 时,如果没有指定初始容量,则会使用默认的初始容量(一般为 10)。

扩容策略:当添加一个元素时,ArrayList 会先检查当前数组是否已满,如果已满则会进行扩容。ArrayList 会创建一个新的数组,一般是当前容量的 1.5 倍(JDK 8 及之前版本)或者当前容量的 1.5 倍加上 1(JDK 9 及之后的版本)。

数据复制:接着,ArrayList 会将原数组中的元素全部复制到新数组中。

替换引用:最后,新元素被添加到了扩容后的数组中。

这样就完成了 ArrayList 的扩容操作。由于扩容涉及到数据的复制,因此在大量添加元素时可能会导致性能损耗,建议在知道大概元素数量的情况下,通过构造函数指定初始容量以减少扩容次数。

hashmap碰撞的话

拉链法 --使用头插法

hashmap的底层实现

设计模式

jvm调优 默认的垃圾回收器 和G1区别 G1的特点

G1是弱化了分代的思想,使用了分区的region的概念。

非阻塞流的netty使用过么

异步线程
1、项目启动类上添加@EnableAsync注解,表示开启支持异步任务;
2、创建配置线程池,使用@Configuration和@Bean注解交由Spring容器管理;
3、使用@Async注解标记异步任务;

如何实现鉴权的

用户登录成功后,服务器生成一个包含用户信息的JWT Token,并返回给客户端。
客户端在每次请求时将JWT Token包含在请求头中,服务器端验证Token的有效性并提取用户信息。

一个线程A 等待一个线程B结束再进行 如何设置

使用count
在这里插入图片描述

io流都有哪些

io流主要是字节流 字符流 缓冲流 文件流
以前我常搞混了这几种 记录一下
常见的IO模型主要有五种,分别是同步阻塞IO(Blocking IO)、同步非阻塞IO(Non-blocking IO)、IO多路复用(IO Multiplexing)、信号驱动IO(Signal Driven IO)和异步IO(Asynchronous IO)。

io使用到的设计模式有哪些

io用到的装饰器模式

装饰器模式是给对象本体加功能 而不产生新额对象
代理模式是给根据对象生成一个新的代理对象

Spring中的请求如何到controller上

用户发送请求至前端控制器DispatcherServlet。

  • DispatcherServlet收到请求调用HandlerMapping处理器映射器。
  • 处理器映射器找到具体的处理器(controller或者handle)(可以根据xml配置、注解进行查找),生成 - 处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。
  • DispatcherServlet调用HandlerAdapter处理器适配器。
  • HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。
  • Controller执行完成返回ModelAndView。
  • HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
[外链图片转存中…(img-up0ven8Q-1713207130015)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值