Skip to content
← 全部专题
互联网大厂面试题 3000 道
TOPIC COLLECTION

互联网大厂面试题 3000 道

包括 Java 集合、JVM、多线程、并发编程、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat、Python、HTML、CSS、Vue、React、JavaScript、Android 大数据、阿里巴巴等大厂面试题等、等技术栈!

31 篇文章
ARTICLES

专题文章

01

JVM 高级最新面试题及答案整理

一、Java内存模型 1. 我们开发人员编写的Java代码是怎么让电脑认识的 首先先了解电脑是二进制的系统,他只认识 01010101 比如我们经常要编写 HelloWord.java 电脑是怎么认识运行的 HelloWord.java是我们程序员编写的,我们人可以认识,但是电脑不认识 Java文件编译的过程…

→
02

JVM 初级最新面试题及答案整理

对象在哪块内存分配? 数组和对象在堆内存分配;某些对象没有逃逸出方法,可能被优化为在栈上分配 谈谈 JVM 中的常量池 JDK 1.8 开始 字符串常量池:存放在堆中,包括 String 对象执行 intern() 方法后存的地方、双引号直接引用的字符串 运行时常量池:存放在方法区,属于元空间,是类加载后的一…

→
03

NetWork 最新面试题及答案整理

1. 什么是网络编程 网络编程的本质是多台计算机之间的数据交换。数据传递本身没有多大的难度,不就是把一个设备中的数据发送给其他设备,然后接受另外一个设备反馈的数据。现在的网络编程基本上都是基于请求/响应方式的,也就是一个设备发送请求数据给另外一个,然后接收另一个设备的反馈。在网络编程中,发起连接程序,也就是发…

→
04

Java 并发编程最新面试题及答案整理

一、基础知识 1. 为什么要使用并发编程 提升多核CPU的利用率:一般来说一台主机上的会有多个CPU核心,我们可以创建多个线程,理论上讲操作系统可以将多个线程分配给不同的CPU去执行,每个CPU执行一个线程,这样就提高了CPU的使用效率,如果使用单线程就只能有一个CPU核心被使用。 比如当我们在网上购物时,为…

→
05

Java 最新面试题及答案整理

最近有很多粉丝问我,有什么方法能够快速提升自己,通过阿里、腾讯、字节跳动、京东等互联网大厂的面试,我觉得短时间提升自己最快的手段就是背面试题,最近总结了Java常用的面试题,分享给大家,希望大家都能圆梦大厂,加油,我命由我不由天。 JDK 和 JRE 有什么区别? JDK(Java Development K…

→
06

Java 多线程 最新面试题及答案整理

1. 多线程有什么用? 发挥多核CPU 的优势随着工业的进步,现在的笔记本、台式机乃至商用的应用服务器至少也都是双核的,4 核、8 核甚至 16 核的也都不少见,如果是单线程的程序,那么在双核CPU上就浪费了 50%, 在 4 核 CPU 上就浪费了 75%。单核 CPU 上所谓的”多线程”那是假的多线程,同…

→
07

Java 异常面试题及答案整理,最新面试题

一、Java异常架构与异常关键字 1. Java异常简介 Java异常是Java提供的一种识别及响应错误的一致性机制。Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性。在有效使用异常的情况下,异常能清晰的回答what, where, why这3个问题:异常类型…

→
08

Zookeeper 面试题及答案整理,最新面试题

目录 1. ZooKeeper 是什么? ZooKeeper 是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户。 分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载…

→
09

Java 集合最新面试题及答案整理

一、集合容器概述 1. 什么是集合 集合就是一个放数据的容器,准确的说是放数据对象引用的容器 集合类存放的都是对象的引用,而不是对象的本身 集合类型主要有3种:set(集)、list(列表)和map(映射)。 2. 集合的特点 集合的特点主要有如下两点: 集合用于存储对象的容器,对象是用来封装数据,对象多了也…

→
10

Tomcat 最新面试题及答案整理

1. Tomcat的缺省端口是多少,怎么修改? 2. tomcat 有哪几种Connector 运行模式(优化)? 3. Tomcat有几种部署方式? 4. tomcat容器是如何创建servlet类实例?用到了什么原理? 当容器启动时,会读取在webapps目录下所有的web应用中的web.xml文件,然后…

→
11

RabbitMQ 最新面试题及答案整理

1. 什么是MQ MQ就是消息队列。是软件和软件进行通信的中间件产品 2. MQ的优点 异步处理 – 相比于传统的串行、并行方式,提高了系统吞吐量。 应用解耦 – 系统间通过消息通信,不用关心其他系统的处理。 流量削锋 – 可以通过消息队列长度控制请求量;可以缓解短时间内的高并发请求。 日志处理 – 解决大量…

→
12

RocketMQ 最新面试题及答案整理

说说你们公司线上生产环境用的是什么消息中间件? 见【2、多个mq如何选型?】 多个mq如何选型? MQ 描述 :-: :-: RabbitMQ erlang开发,对消息堆积的支持并不好,当大量消息积压的时候,会导致 RabbitMQ 的性能急剧下降。每秒钟可以处理几万到十几万条消息。 RocketMQ jav…

→
13

Kafka 最新面试题及答案整理

什么是消息中间件? 消息中间件是基于队列与消息传递技术,在网络环境中为应用系统提供同步或异步、可靠的消息传输的支撑性软件系统。 消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。 kafka …

→
14

Memcache 最新面试题及答案整理

1. Memcached是什么,有什么作用? Memcached是一个开源的,高性能的内存绶存软件,从名称上看Mem就是内存的意思,而Cache就是缓存的意思。Memcached的作用:通过在事先规划好的内存空间中临时绶存数据库中的各类数据,以达到减少业务对数据库的直接高并发访问,从而达到提升数据库的访问性能…

→
15

MongoDB 最新面试题及答案整理

1. 什么是MongoDB? MongoDB是一种非关系型数据库,被广泛用于大型数据存储和分布式系统的构建。MongoDB支持的数据模型比传统的关系型数据库更加灵活,支持动态查询和索引,也支持BSON格式的数据存储,这种格式可以支持读取和写入大量的数据。 2. MongoDB的优势是什么? MongoDB的优…

→
16

Oracle 最新面试题及答案整理

解释冷备份和热备份的不同点以及各自的优点 冷备份 发生在数据库已经正常关闭的情况下,将关键性文件拷贝到另外位置的一种说法。适用于所有模式的数据库。 优点 是非常快速的备份方法(只需拷贝文件) 容易归档(简单拷贝即可) 容易恢复到某个时间点上(只需将文件再拷贝回去) 能与归档方法相结合,作数据库“最新状态”的恢…

→
17

Hadoop 最新面试题及答案整理

Hadoop 中常问的就三块,第一:分布式存储(HDFS);第二:分布式计算框架(MapReduce);第三:资源调度框架(YARN)。 请说下HDFS读写流程; HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的…

→
18

MySQL 最新面试题及答案整理

MySQL 中有哪几种锁? 1、 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低; 2、 行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高; 3、 页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并;发度…

→
19

Linux 最新面试题及答案整理

一、Linux 概述 1. 什么是Linux Linux是一套免费使用和自由传播的类似Unix操作系统,一般的WEB项目都是部署都是放在Linux操作系统上面。 Linux是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持…

→
20

Nginx 最新面试题及答案整理

1. 什么是Nginx? Nginx是一个 轻量级/高性能的反向代理Web服务器,他实现非常高效的反向代理、负载平衡,他可以处理2-3万并发连接数,官方监测能支持5万并发,现在中国使用nginx网站用户有很多,例如:新浪、网易、 腾讯等。 2. 为什么要用Nginx? 跨平台、配置简单、方向代理、高并发连接:…

→
21

NIO 最新面试题及答案整理

1. 什么是IO Java中I/O是以流为基础进行数据的输入输出的,所有数据被串行化(所谓串行化就是数据要按顺序进行输入输出)写入输出流。简单来说就是java通过io流方式和外部设备进行交互。 在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作,网络上的数据传输流,字…

→
22

Netty 最新面试题及答案整理

1. Netty 最流行的 NIO 框架,由 JBOSS 提供的,整合了FTP,SMTP,HTTP协议 1、 API简单; 2、 成熟稳定; 3、 社区活跃·; 4、 经过大规模验证(互联网、大数据、网络游戏、电信通信); Elasticsearch、Hadoop 子项目 avro项目、阿里开源框架 Dubb…

→
23

Git 最新面试题及答案整理

一、配置操作 1. 全局配置 2. 当前仓库配置 查看 global 配置 4. 查看当前仓库配置 5. 删除 global 配置 6. 删除当前仓库配置 二、本地操作 1. 查看变更情况 2. 将当前目录及其子目录下所有变更都加入到暂存区 3. 将仓库内所有变更都加入到暂存区 4. 将指定文件添加到暂存区 …

→
24

Dubbo 最新面试题及答案整理

一、基础知识 1. 为什么要用 Dubbo? 随着服务化的进一步发展,服务越来越多,服务之间的调用和依赖关系也越来越复杂,诞生了面向服务的架构体系(SOA),也因此衍生出了一系列相应的技术,如对服务提供、服务调用、连接处理、通信协议、序列化方式、服务发现、服务路由、日志输出等行为进行封装的服务框架。就这样为分…

→
25

ElasticSearch 最新面试题及答案整理

1. elasticsearch 了解多少,说说你们公司 es 的集群架构,索引数据大小,分片有多少,以及一些调优手段 。 面试官:想了解应聘者之前公司接触的 ES 使用场景、规模,有没有做过比较大规模的索引设计、规划、调优。 解答:如实结合自己的实践场景回答即可。 比如:ES 集群架构 13 个节点,索引根…

→
26

Spring Cloud 最新面试题及答案整理

Spring Cloud 1. 什么是微服务架构 微服务架构就是将单体的应用程序分成多个应用程序,这多个应用程序就成为微服务,每个微服务 运行在自己的进程中,并使用轻量级的机制通信。这些服务围绕业务能力来划分,并通过自动化部 署机制来独立部署。这些服务可以使用不同的编程语言,不同数据库,以保证最低限度的集中式…

→
27

Spring Boot 最新面试题及答案整理

1. 什么是 Spring Boot? Spring Boot 是 Spring 开源组织下的子项目,是 Spring 组件一站式解决方案,主要是简化了使用 Spring 的难度,简省了繁重的配置,提供了各种启动器,使开发者能快速上手。 2. 为什么要用SpringBoot 快速开发,快速整合,配置简化、内嵌…

→
28

Spring MVC 最新面试题及答案整理

1. 概述 1 什么是Spring MVC?简单介绍下你对Spring MVC的理解? Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把模型-视图-控制器分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人…

→
29

Spring 最新面试题及答案整

一、Spring概述 1. 什么是spring? Spring是一个轻量级Java开发框架,最早有Rod Johnson创建,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题。它是一个分层的JavaSE/JavaEE full-stack(一站式)轻量级开源框架,为开发Java应用程序提供全面的基…

→
30

Java 基础最新面试题及答案整理

一、Java概述 1. 何为编程 编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。 为了使计算机能够理解人的意图,人类就必须要将需解决的问题的思路、方法、和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算…

→
31

Java 设计模式最新面试题及答案整理

什么是设计模式 设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计 模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。 为什么要学习设计模式 看懂源代码:如果你不懂设计模式去看Jdk、Spring、SpringMVC、IO等等等等的源码,你会很迷 …

→