其他互联网大厂面试题

1:阿里巴巴Java面试题

2:阿里云Java面试题-实习生岗

3:腾讯Java面试题-高级

4:字节跳动Java面试题

5:字节跳动Java面试题-大数据方向

6:百度Java面试题

7:蚂蚁金服Java面试题-中级

8:蚂蚁金服Java面试题-高级

9:京东Java面试题-中级

10:拼多多Java面试题-电商部

11:商汤科技Java面试题

12:中软国际Java面试题-初级

13:唯品会Java面试题

14:携程Java面试题-高级

15:软通动力Java面试题


下载链接全部大厂面试题及答案PDF

1. 从简历项⽬中选⼀个项⽬,说说你在其中遇到了什么重⼤挑战?以及你的解决问题的思路?

2. ⼀段代码要执⾏多个redis命令,不加锁的情况下如何保证原⼦性?

使⽤lua脚本: https://segmentfault.com/a/1190000009811453

3. 谈谈数据结构,⽐如⼆叉树、红⿊树?

理解这篇: https://juejin.im/post/5a27c6946fb9a04509096248

4. 说说B-tree 、 B+tree的区别和使⽤场景?

B-tree:

B-tree 利⽤了磁盘块的特性进⾏构建的树。每个磁盘块⼀个节点,每个节点包含了很关键字。把树的节点关键字增多后树的 层级⽐原来的⼆叉树少了,减少数据查找的次数和复杂度。

B-tree巧妙利⽤了磁盘预读原理,将⼀个节点的⼤⼩设为等于⼀个⻚(每⻚为4K),这样每个节点只需要⼀次I/O就可以完 全载⼊。

B-tree 的数据可以存在任何节点中。

B+tree:

B+tree 是 B-tree 的变种, B+tree 数据只存储在叶⼦节点中。这样在B树的基础上每个节点存储的关键字数更多,树的层级 更少所以查询数据更快,所有指关键字指针都存在叶⼦节点,所以每次查找的次数都相同所以查询速度更稳定;

5.mysql哪个版本哪个存储引擎的索引使⽤的B+tree,为什么不使⽤红⿊树?

需要先理解B+tree 、红⿊树的实现原理。 B+tree带有顺序访问指针,是红⿊树不具备的。

6. 说说⼏种常⻅的消息中间件的区别?

特性 ActiveMQ RabbitMQ RocketMQ kafka
开发语言 Java erlang Java scala
单击吞吐量 万级 万级 10万级 10万级
时效性 ms级 us级 ms级 ms级以内
可⽤性 ⾼(主从架构) ⾼(主从架构) ⾮常⾼(分布式架构) ⾮常⾼(分布式架构)
功能特性 成熟的产品,在很多公司 得到应⽤;有较多的⽂ 档;各种协议⽀持较好 基于erlang开发,所以并发能⼒很强,性能极其好,延时很低;管理界⾯较 丰富 MQ功能⽐较完备,扩展 性佳 只⽀持主要的MQ功能, 像⼀些消息查询,消息回 溯等功能没有提供,毕竟 是为⼤数据准备的,在⼤ 数据领域应⽤⼴。
  1. 中⼩型公司⾸选RabbitMQ:管理界⾯简单,⾼并发。

  2. ⼤型公司可以选择RocketMQ:更⾼并发,可对rocketmq进⾏定制化开发。

  3. ⽇志采集功能,⾸选kafka,专为⼤数据准备。

7. rabbitmq如何保证消息的可靠性?

1、保证消息不丢失(三步)
1.1、开启事务(不推荐)
1.2、开启confirm(推荐)
1.3、开启RabbitMQ持久化(交换机、队列、消息)
1.4、关闭RabbitMQ自动ack(改成手动)

2、保证消息不重复消费
2.1、幂等性(每个消息用一个唯一标识来区分,消费前先判断标识有没有被消费过,若已消费过,则直接ACK)

3、RabbitMQ如何保证消息的顺序性
将消息放入同一个交换机,交给同一个队列,这个队列只有一个消费者,消费者只允许同时开启一个线程

4、RabbitMQ消息重试机制
消费者在消费消息的时候,如果消费者业务逻辑出现程序异常,这时候应该如何处理?
答案:使用消息重试机制(SpringBoot默认3次消息重试机制)

如何合适选择重试机制
消费者取到消息后,调用第三方接口,接口无法访问,需要使用重试机制
消费者取到消息后,抛出数据转换异常,不需要重试机制,需要发布者进行解决。

5、SpringBoot消息重试机制
@EnableRetry注解:表示启用重试机制(value表示哪些异常需要触发重试,maxAttempts设置最大重试次数,delay表示重试的延迟时间,multiplier表示上一次延时时间是这一次的倍数)
eg、@Retryable(value = Exception.class, maxAttempts = 3, backoff = @Backoff(delay = 2000, multiplier = 1.5))

@Recover注解:当重试次数达到设置的最大次数的时候,程序还是执行异常,调用的回调函数。

8. springcloud服务发现原理?

a. 每30s发送⼼跳检测重新进⾏租约,如果客户端不能多次更新租约,它将在90s内从服务器注册中⼼移除。

a. 注册信息和更新会被复制到其他Eureka节点,来⾃任何区域的客户端可以查找到注册中⼼信息, 每30s发⽣⼀次复制来定位他 们的服务,并进⾏远程调⽤。

b. 客户端还可以缓存⼀些服务实例信息,所以即使Eureka全挂掉,客户端也是可以定位到服务地址的。

9. 介绍下springcloud各个组件? springcloud的注册中⼼除了eureka还可以⽤什么?

springcloud由以下⼏个核⼼组件构成:

Eureka:各个服务启动时, Eureka Client都会将服务注册到Eureka Server,并且Eureka Client还可以反过来从Eureka Server拉 取注册表,从⽽知道其他服务在哪⾥

Ribbon:服务间发起请求的时候,基于Ribbon做负载均衡,从⼀个服务的多台机器中选择⼀台

Feign:基于Feign的动态代理机制,根据注解和选择的机器,拼接请求URL地址,发起请求

Hystrix:发起请求是通过Hystrix的线程池来⾛的,不同的服务⾛不同的线程池,实现了不同服务调⽤的隔离,避免了服务雪崩 的问题

Zuul:如果前端、移动端要调⽤后端系统,统⼀从Zuul⽹关进⼊,由Zuul⽹关转发请求给对应的服务
注册中⼼还可以⽤zookeeper。

10. 微服务有⼏种限流⽅式?

11. 限流的情况下,服务隔离还有没有必要?

12. dubbo有⼏种负载均衡?负载均衡是在服务端还是客户端?

13. 如何实现redis分布式锁?需要注意什么问题?

14. 说说你看过的源码?其中⽤到了什么设计模式或者设计亮点?

15. 如何实现aop?项⽬中哪些地⽅⽤到了 aop?

16. 后置处理器的作⽤?

17. spring bean作⽤域,什么时候使⽤request作⽤域。

18. 说说下⾯这道题的结果?

下载链接博主已将以上这些大厂面试题整理成了一个面试手册,是PDF版的

腾讯Java面试题、笔试题(含答案)相关推荐

  1. ​大公司的Java笔试题汇总(含答案)​

    大公司的Java笔试题汇总(含答案) 1.下列哪一种叙述是正确的(D ) A. abstract修饰符可修饰字段.方法和类 B. 抽象方法的body部分必须用一对大括号{ }包住 C. 声明抽象方法, ...

  2. 剑指Offer——腾讯+360+搜狗校招笔试题+知识点总结

    剑指Offer--腾讯+360+搜狗校招笔试题+知识点总结 9.11晚7:00,腾讯笔试.选择题与编程.设计题单独计时. 栈是不是顺序存储的线性结构啊? 首先弄明白两个概念:存储结构和逻辑结构. 数据 ...

  3. JAVA面试、笔试题

    @[TOC]目录 JAVA面试.笔试题 @目录 一. CoreJava部分 7 1. java中有哪些基本类型? 7 2. java反射 7 3. 易错,理解题 7 4. Java有几种创建对象的方法 ...

  4. java面试、笔试题(0815版)

    java面试.笔试题(201 1. Java基础部分 4 1.一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 4 2.Java有没有goto? 4 3.说 ...

  5. 腾讯 2015秋招笔试题 编程题2:九宫格填数

    腾讯 2015秋招笔试题 编程2:九宫格填数 题目 2: 有下图的题解,请用 C/C++ 代码来列出满足下图 0-100 内的所有答案. 配合加减乘除,使得九宫格横竖都等于4. 智力冲浪 数字推理 请 ...

  6. java 用程序代码解释继承_关于初级java程序员笔试题

    关于初级java程序员笔试题 Sun 认证Java程序员考试内容涉及Java所有相关知识.编程概念及applet开发技巧.下面是小编整理的关于初级java程序员笔试题,欢迎大家参考! 第一题:判断题 ...

  7. 分享18道Java基础面试笔试题

    转载自 分享18道Java基础面试笔试题(面试实拍) 1.你最常上的两个技术站和最常使用的两个app分別进什么?主要解决你什么需求? 2.请简述http协议中get请求和post请求的区别. 3.请简 ...

  8. 2017年java笔试题_初级java程序员笔试题

    Java认证考试是业界唯一经Sun授权的Java认证,考试内容涉及所有Java相关知识.编程概念及applet开发技巧.下面是小编整理的关于java初级程序员面试题,欢迎大家参考! 一:判断题 1.J ...

  9. 东软java的笔试_东软java面向对象程序设计笔试题

    东软java面向对象程序设计笔试题 东软集团培训事业部 第 1 页 共 9 页 Java 面向对象程序设计 考试卷 班级: 姓名: 时间: 90 分钟 一.选择题(没有注明多选,则为单选) 1. 下列 ...

  10. 京东2019春招Java开发类笔试题

    京东2019春招Java开发类笔试题 1. (单选题) 在对问题的解空间树进行搜索的方法中,一个结点有多次机会成为活结点的是 ( B ) A. 动态规划 B. 回溯法 C. 分支限界法 D. 回溯法和 ...

最新文章

  1. tableau必知必会之轻松搞定 关系网 图表
  2. tensorflow笔记:多层LSTM代码分析
  3. springmvc导出excel并弹出下载框
  4. mysql 云主机名_mysql部署到云主机的笔记
  5. 一个iOS 框架介绍:MKNetworkKit
  6. HTML中文网页乱码问题
  7. 职场打怪,是不是升级越快越好?
  8. 使用WITH AS提高性能简化嵌套SQL
  9. FastDFS安装脚本
  10. python有趣小程序-Python全栈开发-有趣的小程序
  11. Spring Boot + MyBatis + MySQL 实现读写分离!
  12. C89:论常用的字符串函数
  13. C语言--输入一个数判断是否为素数(多种方法)
  14. linux下usb 驱动
  15. 徐静蕾代言“英纳格”的十大不合理
  16. Nerv实战 - 京东首页改版小结
  17. 干货:图像比赛的通用套路有哪些?Kaggle比赛金牌团队为你解答
  18. mysql安装版要选择_mysql 安装版
  19. js日历核心计算方法
  20. “我,35岁研发经理,月薪5W+,每年涨薪6-8K,特别焦虑” 评论区网友吵翻了

热门文章

  1. RoboWare Studio 安装教程与可能问题解决
  2. 微搭低代码中实现数据的联动选择
  3. 【前端】html页面的字体代码表及字体效果对比
  4. YUV格式详解【全】
  5. 支付系统源码商业版 完美可运营
  6. w ndows7旗舰版网卡驱动,windows7万能网卡驱动官方下载
  7. 9个顶级开发IoT项目的开源物联网平台
  8. 自制EDL工程线进坚果R1手机9008端口刷机记录
  9. 计算机组成原理-概述篇
  10. navicat的注册码