想搞清楚ZooKeepe?和阿里大佬的技术面谈,一文说清!

2023-11-10 22:40

本文主要是介绍想搞清楚ZooKeepe?和阿里大佬的技术面谈,一文说清!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

现如今的互联网应用大都是采用 分布式系统架构 设计的,所以 消息队列 已经逐渐成为企业的应用系统 内部通信 的核心手段,

它具有 低耦合可靠投递广播流量控制最终一致性 等一系列功能。

当前使用较多的 消息队列 有 RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ、MetaMQ 等,而部分数据库 如 Redis、MySQL 以及 phxsql ,如果硬搞的话,其实也可实现消息队列的功能。

可能有人觉得,各种开源的 MQ 已经足够使用了,为什么需要用 Redis 实现 MQ 呢?

  • 有些简单的业务场景,可能不需要重量级的 MQ 组件(相比 Redis 来说,Kafka 和 RabbitMQ 都算是重量级的消息队列)

那你有考虑过用 Redis 做消息队列吗?

这一章,我会结合消息队列的特点和 Redis 做消息队列的使用方式,以及实际项目中的使用,来和大家探讨下 Redis 消息队列的方案。

蚂蚁金服一面:

下午杭州的电话,问有没有空,果断有空,虽然感觉略显紧张,有点懵逼。

面试的题目:

  1. HashMap和Hashtable的区别
  2. 实现一个保证迭代顺序的HashMap
  3. 说一说排序算法,稳定性,复杂度
  4. 说一说GC
  5. 可以保证的实习时长
  6. 职业规划

整体来说,一面的基础性问题比较多,所以博主基本都答出来了,准备过还是有些用处的。所以一面完了感觉还不错,接着第二天下午就二面了。

Java程序员秋招三面蚂蚁金服,我总结了所有面试题,也不过如此

蚂蚁金服二面

二面是我最慌的面试,因为二面是最关键的,是最大的主管面试,所以非常关键,整体来说,二面的节奏非常快,和一面完全不同,面试官很希望我言简意赅的说完答案,所以面的不算很好,当时完了又以为GG了,好在最后还是幸运的过了,面试问题如下:

  1. 自我介绍。
  2. JVM如何加载一个类的过程,双亲委派模型中有哪些方法?
  3. HashMap如何实现的?
  4. HashMap和Concurrent HashMap区别, Concurrent HashMap 线程安全吗, Concurrent HashMap如何保证 线程安全?
  5. HashMap和HashTable 区别,HashTable线程安全吗?
  6. 进程间通信有哪几种方式?
  7. JVM分为哪些区,每一个区干吗的?
  8. JVM如何GC,新生代,老年代,持久代,都存储哪些东西?
  9. GC用的引用可达性分析算法中,哪些对象可作为GC Roots对象?
  10. 快速排序,过程,复杂度?
  11. 什么是二叉平衡树,如何插入节点,删除节点,说出关键步骤。
  12. TCP如何保证可靠传输?三次握手过程?
  13. TCP和UDP区别?
  14. 滑动窗口算法?
  15. Linux下如何进行进程调度的?
  16. Linux下你常用的命令有哪些?
  17. 操作系统什么情况下会死锁?
  18. 常用的hash算法有哪些?
  19. 什么是一致性哈希?
  20. 如何理解分布式锁?
  21. 数据库中的范式有哪些?
  22. 数据库中的索引的结构?什么情况下适合建索引?
  23. Java中的NIO,BIO,AIO分别是什么?
  24. 用什么工具调试程序?JConsole,用过吗?
  25. 现在JVM中有一个线程挂起了,如何用工具查出原因?
  26. 线程同步与阻塞的关系?同步一定阻塞吗?阻塞一定同步吗?
  27. 同步和异步有什么区别?
  28. 线程池用过吗?
  29. 如何创建单例模式?说了双重检查,他说不是线程安全的。如何高效的创建一个线程安全的单例?
  30. concurrent包下面,都用过什么?
  31. 常用的数据库有哪些?redis用过吗?
  32. 了解hadoop吗?说说hadoop的组件有哪些?hdfs,hive,hbase,zookeeper。说下mapreduce编程模型。
  33. 你知道的开源协议有哪些?
  34. 你知道的开源软件有哪些?
  35. 你最近在看的书有哪些?
  36. 你有什么问题要问我吗?
  37. 了解哪些设计模式?说说都用过哪些设计模式
  38. 如何判断一个单链表是否有环?
  39. 操作系统如何进行分页调度?
  40. 匿名内部类是什么?如何访问在其外面定义的变量?

二面面试官问的很急,我答的也快,所以有两个问题答的不好,但是面试官让我觉得有一种肃然起敬的感觉,因为他说话比较快,但是都能说到点子上,最关键的说的话非常让人容易接受。

二面过了,当天晚上我就接到了三面的电话(阿里的效率真的让我瞠目结舌)

Java程序员秋招三面蚂蚁金服,我总结了所有面试题,也不过如此

蚂蚁金服三面

三面已经是交叉面试了,基本都围绕我的项目展开,我经过前面几次的面试之后,这个时候已经拥有了很高的面试经验值了,所以三面的时候我一点不慌了,回答问题非常稳重,三面的问题如下:

  1. 自我介绍,做过什么项目。
  2. java虚拟机的区域如何划分,每一个区的动能,这一块自由发挥。
  3. 双亲委派模型中,从顶层到底层,都是哪些类加载器,分别加载哪些类?
  4. 有没有可能父类加载器和子类加载器,加载同一个类?如果加载同一个类,该使用哪一个类?
  5. HashMap的结构,get(),put()是如何实现的?HashMap有哪些问题?
  6. ConcurrentHashMap的get(),put(),又是如何实现的?ConcurrentHashMap有哪些问题? ConcurrentHashMap的锁是读锁还是写锁?
  7. HashMap与HashTable的区别
  8. sleep()和wait()分别是哪个类的方法,有什么区别?synchronized底层如何实现的?用在代码块和方法上有什么区别?
  9. 什么是线程池?如果让你设计一个动态大小的线程池,如何设计,应该有哪些方法?
  10. 什么是死锁?JVM线程死锁,你该如何判断是因为什么?如果用VisualVM,dump线程信息出来,会有哪些信息?这一块问的很多…问的我懵了. 因为并没有实际操作过 = =
  11. 查看jvm虚拟机里面堆、线程的信息,你用过什么命令?我只用过图形界面VisualVM。。。
  12. 垃圾回收算法有哪些?CMS知道吗?如何工作的?
  13. 数据库中什么是事务?事务的隔离级别?事务的四个特性?什么是脏读,幻读,不可重复读?
  14. 数据库索引的结构有哪些?我说B树和B+树,他说只有这两个吗。我又说全文倒排索引。然后介绍B+树的结构。
  15. 数据库中的分页查询语句怎么写?
  16. 什么是一致性哈希?用来解决什么问题?
  17. Redis的存储结构,或者说如何工作的,与mysql的区别?有哪些数据类型?
  18. 项目中用到redis,为什么选用redis,了解其他NoSQL数据库吗?在你的项目中是如何运用redis的?key是什么,value是什么?
  19. 归并排序的过程?时间复杂度?空间复杂度?
  20. 你平常用什么排序?快速排序。说说在那些场景下适用,哪些场景下不适用。
  21. 你在项目中做什么?因为我用到Solr,他就问我Solr是如何工作的?

最后

这份《“java高分面试指南”-25分类227页1000+题50w+字解析》同样可分享给有需要的朋友,感兴趣的伙伴们可挑战一下自我,在不看答案解析的情况,测试测试自己的解题水平,这样也能达到事半功倍的效果!(好东西要大家一起看才香,下载请点击这里

image

image

q.com/doc/DSmxTbFJ1cmN1R2dB)**)

[外链图片转存中…(img-PJWTS63y-1618047486230)]

[外链图片转存中…(img-8w3oxg3L-1618047486233)]

这篇关于想搞清楚ZooKeepe?和阿里大佬的技术面谈,一文说清!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/385763

相关文章

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-

一文带你搞懂Python中__init__.py到底是什么

《一文带你搞懂Python中__init__.py到底是什么》朋友们,今天我们来聊聊Python里一个低调却至关重要的文件——__init__.py,有些人可能听说过它是“包的标志”,也有人觉得它“没... 目录先搞懂 python 模块(module)Python 包(package)是啥?那么 __in

一文详解如何在Python中从字符串中提取部分内容

《一文详解如何在Python中从字符串中提取部分内容》:本文主要介绍如何在Python中从字符串中提取部分内容的相关资料,包括使用正则表达式、Pyparsing库、AST(抽象语法树)、字符串操作... 目录前言解决方案方法一:使用正则表达式方法二:使用 Pyparsing方法三:使用 AST方法四:使用字

springboot整合阿里云百炼DeepSeek实现sse流式打印的操作方法

《springboot整合阿里云百炼DeepSeek实现sse流式打印的操作方法》:本文主要介绍springboot整合阿里云百炼DeepSeek实现sse流式打印,本文给大家介绍的非常详细,对大... 目录1.开通阿里云百炼,获取到key2.新建SpringBoot项目3.工具类4.启动类5.测试类6.测

电脑死机无反应怎么强制重启? 一文读懂方法及注意事项

《电脑死机无反应怎么强制重启?一文读懂方法及注意事项》在日常使用电脑的过程中,我们难免会遇到电脑无法正常启动的情况,本文将详细介绍几种常见的电脑强制开机方法,并探讨在强制开机后应注意的事项,以及如何... 在日常生活和工作中,我们经常会遇到电脑突然无反应的情况,这时候强制重启就成了解决问题的“救命稻草”。那

一文详解JavaScript中的fetch方法

《一文详解JavaScript中的fetch方法》fetch函数是一个用于在JavaScript中执行HTTP请求的现代API,它提供了一种更简洁、更强大的方式来处理网络请求,:本文主要介绍Jav... 目录前言什么是 fetch 方法基本语法简单的 GET 请求示例代码解释发送 POST 请求示例代码解释

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

一文详解SpringBoot响应压缩功能的配置与优化

《一文详解SpringBoot响应压缩功能的配置与优化》SpringBoot的响应压缩功能基于智能协商机制,需同时满足很多条件,本文主要为大家详细介绍了SpringBoot响应压缩功能的配置与优化,需... 目录一、核心工作机制1.1 自动协商触发条件1.2 压缩处理流程二、配置方案详解2.1 基础YAML