看完吊打面试官!搞定kafka看这一篇就够了!图文详解!

前言

我们说 Kafka 是一个消息队列,其实更加确切的说:是 Broker 这个核心部件。为何这么说?你会发现我们可以通过控制台、 Java 代码、 C++ 代码、甚至是 Socket 向 Broker 写入消息,只要我们遵从了 Kafka 写入消息的协议,就可以将消息发送到 Kafka 队列中。

用专业一点的话术来说,Kafka 定义了一个应用层的网络协议,只要我们基于传输层构造出符合这个协议的数据,就是合法的 Kafka 消息。

image

所以说我们写入 Kafka 消息的只是一个生产者的客户端,他的形式多种多样,有 Java ,Python,C++ 等多种实现,那么我们每次发消息难道还需要自己去实现这套发送消息的协议么?显然 Kafka 官方已经考虑到这个问题了,为了给我们提供 开箱即用 的消息队列,官方已经帮我们写好了各种语言的优质生产者实现,例如我们今天要讨论的 Java 版本的实现。

个人基本情况:

首先介绍一下自己的个人基本情况,某专科学校毕业,计算机技术与应用专业,有过2年的工作经验,毕业以后一直想要进入一线互联网大厂工作,但无奈学历受限,屡屡被挡在门外。后来接触到一个朋友,了解到“霸面”,所以鼓起勇气去尝试了,挑战了一下蚂蚁金服,没想到经过4轮面试之后,居然拿到了offer,现特分享一下自己的面试真题,希望能够给你有所帮助。

专科程序员“霸面”蚂蚁金服,4轮面试,竟拿下offer(Java方向)

一面真题

  • 项目介绍
  • 项目中如何保证数据一致性的
  • 项目中存在的问题
  • JVM内存
  • 程序计算器的作用
  • gc 算法,垃圾收集器
  • Spring事务,事务的实现机制,如何保证事务的?
  • 悲观锁、乐观锁
  • HashMap
  • 红黑树,B+树
  • 死锁,如何防止死锁?

二面真题

二面之前做了一些题,做完题之后,二面围绕题目展开。

  • 分布式事务的保证,具体的解决方案
  • 接口的幂等性
  • 如果向某个账户转账,在高并发的环境下,设计的接口有什么问题?
  • 如何解决上述问题?
  • 如果账户表很大,具有亿万级别,如何提高查询效率?
  • 分库分表具体操作
  • MySQL主从
  • MySQL如何保证主从的数据一致性
  • 数据库的容灾

三面真题

主要是项目介绍

项目一(支付营销系统):

  • 介绍、架构、具体流程,如何压测?性能优化?机器扩容标准、线程池大小
  • 平时用到的集合
  • Hashmap
  • Treeset的实现
  • 分布式事务
  • 秒杀系统

项目二(分布式调度系统):

  • 项目具体情况、架构、设计思路
  • Kafka消息可靠性保证
  • 其他中间件
  • 平时看什么书

四面(HR面)

  • 自我介绍?
  • 之前的工作给你带来了什么?
  • 之前在工作者承担什么样的角色?
  • 为什么想来蚂蚁金服?
  • 自己有什么优势?
  • 未来的职业规划是怎么样的?
  • 期待薪资多少?
  • 还有什么想问的?

面试准备+复习资料分享:

为了应付面试也刷了很多的面试题与资料,现在就分享给有需要的读者朋友,资料我只截取出来一部分哦,有需要的可以来找我获取哈

获取方式:点击蓝色字体即可免费获取

秋招|美团java一面二面HR面面经,分享攒攒人品

s://docs.qq.com/doc/DSmxTbFJ1cmN1R2dB)**

[外链图片转存中…(img-ltNR6kZC-1618482429290)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值