回馈牛客!各大公司java面试整理对应问题博客整理!互联网求职经验学习交流

回馈牛客!各大公司java面试整理对应问题博客整理!

阿里

分库分表

数据库中间件

MyCAT是一个强大的数据库中间件,不仅仅可以用作读写分离,以及分表分库、容灾管理,而且可以用于多租户应用开发、云平台基础设施

高并发请求处理

高流量限流

多线程

concurrentHashMap

CAS

乐观锁

mysqllimit分页如何保证可靠性

二面7月26日(22分钟):

如果RPC的注册中心挂了怎么办?

RPC两端如何进行负载均衡?

MQ推拉模式,优缺点

ActiveMQ是一个消息中间件,对于消费者而言有两种方式从消息中间件获取消息:

Push方式:由消息中间件主动地将消息推送给消费者;

MySQL数据库索引那些?

组合索引怎么用?

在对表需要进行查询或者排序***作时,可以对表中某个或者某几个字段添加索引,对一个字段添加索引就是单个索引,对多个字段添加索引时就是组合索引。从前往后依次使用生效,如果中间某个索引没有使用,那么断点前面的索引部分起作用,断点后面的索引没有起作用;

京东

一面:

1、HashMap、concurrentHashMap底层原理把知道的都说一遍

2、线程池把知道的都说出来

3、线程同步(synchronized、volatile、ReenreantLock、ThreadLocal)

4、设计模式把知道的说一遍

二面:

1、Java基本数据类型

整型byte(1字节)short(2个字节)int(4个字节)long(8个字节)

浮点型float(4个字节)double(8个字节)

逻辑性boolean(八分之一个字节)

字符型char(2个字节,一个字符能存储下一个中文汉字)

byte->short,char->int->long

float->doubleint->floatlong->double小可转大,大转小会失去精度。

2、arrayList、linkedList底层原理以及其区别,各自的使用场景

4、HashMap有哪些缺点、是不是线程安全的、扩容

5、红黑树、b树、b+树底层原理

6、索引采用b+树和HashMap的区别,使用场景,数据库为什么用b+树做索引,而不用HashMap

7、数据库隔离级别以及各种隔离级别有可能会产生什么问题

腾讯

1.问项目,真的是细,细的有些我自己都忘了(千万要知道项目的细节)

3.说一下线程池这一块?(讲了线程池的几个参数以及几个线程池的细分)

4.Java提供了几个类加载器?分别是?怎么对类进行加载的?

5.hashCode知道是干什么的吗?如果要你重写,需要注意哪些点?

SUN官方的文档中规定"如果重定义equals方法,就必须重定义hashCode方法,以便用户可以将对象插入到散列(哈希)表中"

在集合框架中的HashSet,HashTable和HashMap都使用哈希表的形式存储数据,而hashCode计算出来的哈希码便是它们的身份证。哈希码的存在便可以:

快速定位对象,提高哈希表集合的性能。

只有当哈希表中对象的索引即hashCode和对象的属性即equals同时相等时,才能够判断两个对象相等。

从上面可以看出,哈希码主要是为哈希表服务的,其实如果不需要使用哈希表,也可以不重写hashCode。但是SUN公司应该是出于对程序扩展性的考虑(万一以后需要将对象放入哈希表集合中),才会规定重写equals的同时需要重写hashCode,以避免后续开发不必要的麻烦。

hashCode方法可以这样理解:它返回的就是根据对象的内存地址换算出的一个值。这样一来,当集合要添加新的元素时,先调用这个元素的hashCode方法,就一下子能定位到它应该放置的物理位置上。如果这个位置上没有元素,它就可以直接存储在这个位置上,不用再进行任何比较了;如果这个位置上已经有元素了,就调用它的equals方法与新元素进行比较,相同的话就不存了,不相同就散列其它的地址。这样一来实际调用equals方法的次数就大大降低了,几乎只需要一两次。

重写equals时需要注意满足java语言规范对于equals的要求:

Java语言规范要求equals需要具有如下的特性:

自反性:对于任何非空引用x,x.equals()应该返回true。

对称性:对于任何引用x和y,当且仅当y.equals(x)返回true,x.equals(y)也应该返回true。

传递性:对于任何引用x、y和z,如果x.equals(y)返回true,y.equals(z)也应返回同样的结果。

一致性:如果x和y引用的对象没有发生变化,反复调用x.equals(y)应该返回同样的结果。

对于任意非空引用x,x.equals(null)应该返回false。

1.equals与hashCode的定义必须一致,两个对象equals为true,就必须有相同的hashCode。反之,如果两个对象的hashcode相同,equals不一定相同。2.当重写equals方法时,一定要同时把hashcode方法一并重写,因为要保证在实现hash表的扩展性

如果不被重写(原生)的hashCode和equals是什么样的?

不被重写(原生)的hashCode值是根据内存地址换算出来的一个值。

不被重写(原生)的equals方法是严格判断一个对象是否相等的方法(object1==object2)。

为什么需要重写equals和hashCode方法?

在我们的业务系统中判断对象时有时候需要的不是一种严格意义上的相等,而是一种业务上的对象相等。在这种情况下,原生的equals方法就不能满足我们的需求了

所以这个时候我们需要重写equals方法,来满足我们的业务系统上的需求。那么为什么在重写equals方法的时候需要重写hashCode方法呢?

我们先来看一下Object.hashCode的通用约定(摘自《EffectiveJava》第45页)

在一个应用程序执行期间,如果一个对象的equals方法做比较所用到的信息没有被修改的话,那么,对该对象调用hashCode方法多次,它必须始终如一地返回同一个整数。在同一个应用程序的多次执行过程中,这个整数可以不同,即这个应用程序这次执行返回的整数与下一次执行返回的整数可以不一致。

如果两个对象根据equals(Object)方法是相等的,那么调用这两个对象中任一个对象的hashCode方法必须产生同样的整数结果。

如果两个对象根据equals(Object)方法是不相等的,那么调用这两个对象中任一个对象的hashCode方法,不要求必须产生不同的整数结果。然而,程序员应该意识到这样的事实,对于不相等的对象产生截然不同的整数结果,有可能提高散列表(hashtable)的性能。

如果只重写了equals方法而没有重写hashCode方法的话,则会违反约定的第二条:相等的对象必须具有相等的散列码(hashCode)

同时对于HashSet和HashMap这些基于散列值(hash)实现的类。HashMap的底层处理机制是以数组的方法保存放入的数据的(Node[]table),其中的关键是数组下标的处理。数组的下标是根据传入的元素hashCode方法的返回值再和特定的值异或决定的。如果该数组位置上已经有放入的值了,且传入的键值相等则不处理,若不相等则覆盖原来的值,如果数组位置没有条目,则插入,并加入到相应的链表中。检查键是否存在也是根据hashCode值来确定的。所以如果不重写hashCode的话,可能导致HashSet、HashMap不能正常的运作、

5.ClassNotFoundException知道吗?遇到场景是什么?怎么解决的?

常见的场景就是:

1调用class的forName方法时,找不到指定的类

2ClassLoader中的findSystemClass()方法时,找不到指定的类

3ClassLoader中的loadClass()方法时,找不到指定的类

二、造成异常的常见原因:

1.所需要的支持类库放错了地方,并没有放在类路径(CLASSPATH环境变量)里面。

2.使用了重复的类库,且版本不一致。导致低版本的被优先使用。

3.类名错了,一般是使用Class.forName的时候,手工指定了类名的情况。

4.没有导入纯JAVA驱动包。

6.NoSuchMethodException遇到过吗?

腾讯音乐(一面,50分钟)后台开发方向

1.讲讲priority_queue的底层数据结构实现过程和原理。

2.讲讲hash的原理,解决哈希冲突的方法。

3.Hash和搜索二叉树的优缺点。

4.一个8g的数据文件,怎样找出积分排名前100的用户(数据内容是一列ID,一列积分,积分是流动的)。

5.如何监听tcp丢包问题。(细节知识点)。

6.TCP和UDP的细节知识点(建立和断开的状态转移)。

7.单链表找倒数第n个节点,说所有你能想到的方法。

9.线程和进程的区别以及优缺点。

腾讯音乐(二面20分钟)

3.select上限?

1024个套接字(编译内核可以达到65536个)

5.三次握手过程?第三条丢了会怎样?有什么现象?

8.子进程和父进程怎么通信?

9.怎样判断是子进程?

12.Linux下如何查看端口号?

13.用过哪些linux命令?

腾讯(二面)

15.怎么把一颗二叉搜索树原地变成一个双向链表?

17.怎么判断一个无符号的整数是不是2的n次方?

19.timewait出现在什么时候?怎么查看那些进程处于timewait状态?

netstat-a|grepTIME_WAIT|wc-l

顺丰一面面经

2、hashmap底层实现?有哪些是线程安全的?当冲突的时候怎么解决?当hash值相同时,怎么进行比较?

3、concurrentHashMap怎么实现?

4、数据库索引有哪些?底层怎么实现的?数据库怎么优化?

6、OOM说一下?怎么排查?哪些会导致OOM

JVM初始分配的堆内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的堆内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;

空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、-Xmx相等以避免在每次GC后调整堆的大小。

7、volatile讲讲

8、多线程的锁?怎么优化的?偏向锁、轻量级锁、重量级锁?

9、哪些设计模式?装饰器、***讲讲?

10、redis集群会吗?

阿里:

mysql存储引擎

事务隔离级别

不可重复度和幻读,怎么避免,底层怎么实现(行锁表锁)

事务四个特性

i++和++i满足原子性么

类加载机制三种加载器(双亲委派)三种加载器怎么协同工作?加载过程?类初始化五种情况

Java容器层次结构

Object类的方法12

map怎么实现hashcode和equals,为什么重写equals必须重写hashcode(扯回HashMap的put***作。源码)

同步机制synchronized重入锁

对象锁是用来控制实例方法之间的同步,类锁是用来控制静态方法(或静态变量互斥体)之间的同步。

J.U.C体系结构(java.util.concurrent)

什么是SpringIOC和AOP的实现原理

Spring事务管理方式

SpringMVC是什么原理

什么是servlet生命周期一个项目model可以有多个servlet么

Servlet是一种独立于***作系统平台和网络传输协议的服务器端的Java应用程序。

设计模式项目中用过哪些工厂模式单例在项目中怎么应用懒汉饿汉(各写一个)

2.面向对象--举例理解

3.数据结构--设计实现KV结构,查找算法,树

4.网线断了tcp连接情况

5.java中static理解,final理解

6.主从同步。

7.treeSet,红黑树

8.JVM,GC垃圾回收机制,垃圾收集器。

9.threadLocal

京东:

4.一面整个过程中,面试官都在问我的项目

5.主要问了我三个项目,其中用的技术,分布式文件,分布式储存,工作流等

6.spring的源码

7.springMVC的整个流程

8.mybatis与Hibernate的区别

11.js的怎么实现面向对象

3.java与c++的区别,知道多少答多少

5.hashMap源码与currenthashmap源码,1.7与1.8的区别

7.hashmap在并发情况下,会出现什么问题

8.给了一个场景题,说怎么实现每隔一秒在控制台输出一句话

9.java多线程怎么实现的

11.java虚拟机的内存模式

12.怎么打破双亲委派模式

13.java虚拟机怎么识别是符合标准的class文件,魔数

每个Class文件的头4个字节被称为魔数,它的唯一作用是用于确定这个文件是否为一个能被java虚拟机所接收的Class类文件,即用于判定文件是否是符合规范的javaClass文件。虽然说后缀名“.class”可以表明文件是一个Class文件,但是文件后缀名是可以随意被改动的,基于安全的考虑,很多文件都通过魔数值来唯一确定文件类型,java的Class文件魔数是:0xCAFEBABE.

14.mysql的索引用过吧?

15.介绍一下索引?怎么使用索引的?

16.B树与B+树的底层

17.数据库怎么实现分库分表

18.消息中间件用过吗?主要的作用是什么?(项目)待解决

19.我看你简历上面写了前端,我们来问一下前端的知识

20,js的数据类型有哪些?5个

21.dom对象与js对象、jQuery的区别

22,jQuery对象和js对象之间的互相转换

23.js中事件触发的流程,怎么阻止冒泡

window.event.cancelBubble=truee.stopPropagation()

24.怎么预防用户的多次点击事件

1.防止重复点击可以添加标记,第一次点击后变为false,每次点击判断这个标记是true才执行

2.如果是按钮防止重复点击,可以再按钮点击后,给按钮添加disabled属性,按钮就再也点击不了

25.你用过哪些服务器tomcatnginx

26.tomcat和nginx的配置文件,你怎么配置的。

·分布式事务2pc

·Java内存模型

·堆和栈

·concurrenthashmap在1.8和1.7里面有什么区别

·线程有自己的空间吗,如果有,有多大

·线程池

·Fork/Join跟线程池有什么区别

·讲一下迪杰斯特拉算法的流程(小甲鱼)

·讲一下弗洛伊德算法的流程

1.java的线程安全queue需要注意的点

2.加锁需要注意什么锁优化的思路和方法

3java无锁原理

5.数据库索引了解原理么?

答:从b+树说b+和b比的优势,又提到了innodb和myisam之间聚簇索引和非聚簇索引之间的区别,优缺点,实际上还可以扯扯hash,联合索引,前缀匹配啥的

答:spring,springboot,springcloud,mybatis

问:spring了解些啥?

答:ioc,aop的原理,顺便说了下ioc的好处

问:大量日志去重怎么弄

答:

问:大量整数排序

答:问了是int,觉得直接用bitmap就完了

二面面经:

3.死锁的原因,如何避免

4.现代***作系统有完全解决死锁问题吗bukeyi

5.如何找出服务器负载过高的原因

(1)找出文件中出现次数TOPK的字符串优先级队列最小堆

(3)判断一个字符串集合是否能连接成环,首尾字符相同则认为可以相连,如abc,cde,ea

三面面经:

3.常见的GC算法

4.OOM出现在什么时候

2.针对日访问量上亿做出一些优化

3.内存管理方式(待解决)

7.常见的设计模式及应用场景

百度智能云数据库部门

1数据库的事务,四个性质说一下,分别有什么用,怎么实现的。。

2讲到了redo和undo日志,问我分别有什么用。

3数据库的隔离性如何保证,使用悲观锁和乐观锁有何区别。MVCC的设计目的是什么,怎么使用版本号判断数据的可见性。

4问了一道算法,1到N的所有数字,按照字典序打印,使用dfs遍历树的每个分支。

5多线程并发的同步实现,有两个方法,每个方法里有a部分代码和b部分代码,我要让两个线程分别执行两个方法,并且让他们运行完a部分代码再一起向下执行,如何实现。

8问我栈中需要压入哪些数据。方法参数,返回值,以及返回地址。

2服务器如何负载均衡,有哪些算法,哪个比较好,一致性哈希原理,怎么避免DDOS攻击请求打到少数机器。

3.TCP连接中的三次握手和四次挥手,四次挥手的最后一个ack的作用是什么,为什么要timewait,为什么是2msl。

4数据库的备份和恢复怎么实现的,主从复制怎么做的,什么时候会出现数据不一致,如何解决。

8Linux查看cpu占用率高的进程

用top命令找到最占CPU的进程

9查看占用某端口的进程

1、lsof-i:端口号

2、netstat–tunlp|grep端口号

查看某进程监听的端口

1、先查看进程pid

ps-ef|grep进程名

2、通过pid查看占用端口

netstat-nap|grep进程pid

10如何查询日志文件中的所有ip,正则表达式

三面(8.3号更新):(linux待解决)

Linux,说一下Linux排查问题常用的命令,ps,top,netstat,free,du等等

P516du命令也是查看使用空间的,但是与df命令不同的是Linuxdu命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。

3Linux的内存管理算法,页面置换算法,lru和fifo,lru有什么缺点。

4Linux的文件系统了解么,讲了一下inode节点,文件和目录的原理。

shell了解么

5进程通信方式有哪些,问我分别怎么使用,管道有哪些类型,各有什么优缺点。

8JVM内存模型

9gc算法,分代回收。

10设计模式了解么,说了7种,问我分别怎么用,实际应用过吗

11MySQL的引擎讲一下,有什么区别,使用场景

12查询最新的10条数据,

select*fromtableorderbyupdate_timedesclimit10

13MySQL的unionall和union有什么区别,

14MySQL有哪几种join方式,底层原理是什么

15Redis数据结构和基本原理,

Redis的持久化怎么做,aof和rdb,有什么区别,有什么优缺点。

Redis使用哨兵部署会有什么问题

23用队列计算一个树的高度,我说用层次遍历记录节点高度。

24一个黑名单集合,数据量很大,快速查询一个值是否在集合里,怎么设计,布隆过滤器。

27分布式数据库了解么

百度智能云账号和消息部门

2讲一下AOP吧

3动态***和静态***有什么区别

4TCP和IP报文是否会分片,分别在什么情况下会分片。TCP分包之后是否还会进行ip分片

6写一个斐波那契数列递归式,要求改进

7讲一下Linux的内存结构,JVM

两者的内存如何映射,是什么关系,

3OSI七层模型,问了每层的作用,问了wifi属于哪一层。

4线程间的同步用什么方式,

5.使用hashmap时重写哪两个方法,为什么要重写,什么场景下重写。

hashcode用来提高效率的,为速度而散列。因为散列的Set和Map是基于hashcode方法来查找对象的,所以你在使用这些类的时候一定要覆盖hashcode方法,而非散列的Set和Map,例如TreeSet,TreeMap等,不需要重写hashcode和equals,通过传入比较器。

6Spring中的ioc和aop。ioc的注解有哪些。

autowired和resource有什么区别,

作用域有哪些。

autowired如何配置两个类中的一个

@Autowired是根据类型进行自动装配的。如果当Spring上下文中存在不止一个UserDao类型的bean时,就会抛出BeanCreationException异常;如果Spring上下文中不存在UserDao类型的bean,也会抛出BeanCreationException异常。我们可以使用@Qualifier配合@Autowired来解决这些问题

8Java内存泄漏、内存溢出

百度智能云

一面

5事务隔离级别有哪些,默认是什么级别。Mysql(可重复读)

8僵尸进程和孤儿进程是什么,分别有什么危害。

trycatch异常处理的jvm底层是什么?

java8新特性

二面:

8、jdk1.8concurrenthashmap的新的特性,有没有看过源码

10,问了redis扩容,失效key清理策略等

3,设计一个算法,实现两个10g大文件在10m的内存中将两个大文件中重复的放进第三个文件

老虎证券面试题目:

1、osi七层结构,每层结构都是干什么的?

2、ping使用了什么协议,icmp,控制报文协议

3、icmp怎么实现ping的

最左前缀匹配原则,非常重要的原则,mysql会一直向右匹配直到遇到范围查询(>、<、between、like)就停止匹配,比如a=1andb=2andc>3andd=4如果建立(a,b,c,d)顺序的索引,d是用不到索引的,如果建立(a,b,d,c)的索引则都可以用到,a,b,d的顺序可以任意调整。

·=和in可以乱序,比如a=1andb=2andc=3建立(a,b,c)索引可以任意顺序,mysql的查询优化器会帮你优化成索引可以识别的形式

阿里菜鸟物流一面(14分钟):

4、分布式锁是怎么实现的

覆盖索引

5.实时查看运行日志了

tail-faa.log

6、怎么查看系统磁盘大小?(du-h,df-h)

7、怎么查看文件的固定关键字(catA.txt|grepkey)

9.AQS,问AQS实现原理。问AQS在闭锁,重入锁中的应用。

虚拟机怎么实现动态绑定

spring生命周期

1.SOA的理解

5.zookeeper的原理

6.zookeeper怎么通信

8.zookeeper***了解吗?7怎么监听

9.dubbo的原理

12.初始化bean干什么你知道吗?IOC容器初始化

13.获取容器的引用,ApplicationContextAware

14.activeMQ了解吗?怎么用

15.activeMQ消息丢失?

16.搭过activeMQ、zookeeper

18.Redis存对象知道吗

19.Redis的list

5.内存占满了怎么办啊

Linux里用的哪些命令,修改权限的命令,7代表什么意思,如果不用数字还可以用什么

14.接口抽象类(Java8中的default)

20.Swap了解吗

SQL语句中,from,join,where,having,orderby,groupby,limit之间的执行顺序是怎样的?

synchronized在方法上是对象锁还是类锁

mysql索引底层实现,为什么不用红黑树

如何优化页面请求速度

2从浏览器输入网址到出现网页发生了什么

6描述异常类的体系

7描述集合类的体系

10多线程的优点,单核CPU是如何调度多线程的,为什么单核CPU调度多线程也能有比较高的效率

二面

1.cookie和session的区别。然后又问session在服务器端具体是怎样的实现的,当session中的数据量过大的时候,主要对服务器的哪些方面造成影响?CPU?内存?网络?

3Javascript中的双等号和三等号的区别

11.数据库用到的***作,索引(B+树,B+树与B树区别),增加节点,删除节点,B+树原理

6)nio与bio的区别。

7)nio的实现

8)虚拟机,什么时候会进行FullGC。

9)什么时候需要打破双亲委派模型。

10)一个类的静态块会被执行两次吗?为什么。

11)动态***的实现。

12)cglib无法增强的类,final修饰的类。

13)spring容器的启动过程。

14)数据库隔离级别中可重读读的实现。

15)什么情况下索引会失效。

幻读:间隙锁

2)使用过concurrent包下的哪些类,使用场景等等。

concurrenthashmap1.8

4)ReentrantLock的实现原理。

5)FutureTask的实现原理。

7)线程池有哪些RejectedExecutionHandler,分别对应的使用场景

画出***模式与适配器模式的uml类图。(待解决)

9)手写djikstra算法

Mysql知识点

10亿数字找最大100个数,不考虑内存问题

3、存在大量closed_wait有什么危害

CLOSE_WAIT状态不会自己消失,除非对应的应用进程死掉,不会消失就意味着一直占用服务器资源,端口总数又只有65535,因此这里的服务器作为连接的发起者就会造成大量端口被占用,一旦占用完就导致后面的请求都发不出去

5、如何设计一个线程安全的hashmap

7、mysql写数据的时候,需要先将数据写到buffer里,再写到磁盘里,万一MySQL这时候突然挂了,怎么办?redoundocheckPoint

Nginx服务器(待解决)

16、背包算法

4、osi模型,每一层做了什么事情,有什么协议

上传文件不用刷新页面的方案

9、组合索引?B+树如何存储的?

11、跳台阶=递归非递归,两种解法

12、生日概率问题

一面,

1:为什么缓存更新策略是先更新数据库后删除缓存

2:两个线程打印1.2.3.4打印到100怎么实现

3spring的aop的实现方式,aspectj和jdk动态***,cglib动态***,讲了下实现的原理(重要)

二面,

2.假如双十一等一些促销有高并发访问量要来访问我们的数据,怎么样做到可靠的服务

1.jvm虚拟机老年代什么情况下会发生gc,给你一个场景,一台4核8G的服务器,每隔两个小时就要出现一次老年代gc,现在有日志,怎么分析是哪里出了问题

三面,7.20:

1消息队列的生产者消费者中消费者没有收到消息怎么办,

2下单过程中是下订单减库存还是付款减库存,分析一下两者的优劣

3高并发场景的限流,你怎么来确定限流限多少,

蚂蚁金服:

2缓存是怎么使用的,里面存哪些东西,为什么要存这些东西,哪些高并发场景不能使用缓存;

6自己设计一个数据库连接池怎么设计;

7怎么用原生的JDBC访问数据库;

8阻塞队列不用java提供的自己怎么实现

9拥塞窗口讲一讲,为什么要用慢启动算法;

1CPU使用率100%怎么分析解决;

补码反码,

第二批

京东一面(1个小时):

9快速排序和堆排序对比,快排怎么优化(三向切分,主要用于具有大量重复数据的情况,可以大大提高效)

10jdbc***作数据库流程,如果加入事务,流程又是怎么样

5CAP的理解分布式详解

8.共享内存是如何实现的,如何保证同步问题

4.进程调度方式

网易一面:

2、A、B、C并发执行完,D、E、F并发执行实现方式

4、CountDownLatch、LinkedHashMap、AQS实现原理

9、Condition和sychronized实现Condition两种方式有什么区别

Condition的强大之处在于它可以为多个线程间建立不同的Condition

15、Redis集群方式

17、Redis备份

24、MySQL日志文件

mysql默认存储引擎?MyISAM、InnoDB、MEMORY的区别

AQS详细原理

lock公平锁和非公平底层怎么实现的?

怎么实现一个线程安全的计数器?用AQS

原子类AtomicInteger实现原理是什么?

9月6号二面

dubbo的生产者如何发布服务,注册服务,消费者如何调用服务?

dubbo的集群容错机制以及负载均衡?

Redis有哪些数据结构?底层的编码有哪些?有序链表采用了哪些不同的编码?

ScheduledThreadPoolExecutor中的使用的是什么队列?内部如何实现任务排序的?

谈一谈ArrayList?如何添加元素的?删除元素后会自动缩小空间吗?

11.100的阶乘后面有几个0?24

SpringMVC参数绑定实现原理

200G数据,每一行一个字符串,CPU8G,排序(分治法、归并)

200G数字,每一行一个数字去除重复并排序(位图)

mysql的having和内连查询

1僵尸进程

2日志或者字符文件处理命令

最短路径的两种算法(jianboke)

图有哪些存储结构

设计模式了解吗?策略模式?责任链模式?

缓存一致性

四面

出现死锁怎么排查?

如果查看堆内存信息?Jstatjmap

出现OOM怎么排查问题?

美团一面:

1.进程间共享内存的方式有哪些?(8种)

2.linux下如何查看网络端口状态(netstat),如何查看内存使用情况(top);

15.说说mybatis配置了xml过后是如何完成数据库***作的?底层实现

3.数据库范式

7.单例模式的用处,是否所有的共享对象都用单例模式

15哪些情况会触发fullgc,fullgc是否包括younggc和majorgc,如果只包括这两个,为什么要特地做fullgc,我回答的是fullgc还会回收方法区和堆外内存。

19服务注册中心实现什么功能,消费者的本地缓存如果失效了怎么办

12、幻读的避免是如何实现的?间隙锁

5.java的线程和***作系统的线程什么关系

7.hash冲突的解决方式,如何判断各个方式的优劣

大量的CLOSE_WAIT会怎么样?

1.占用系统内存

2.如果连接数满了就不能对相应的对段端口创建连接了

某种情况下对方关闭了socket链接,但是我方忙与读或者写,没有关闭连接。

对称加密与非对称加密区别。

SpringBoot和SpringCloud的理解

SpringCloud架构

我们从整体来看一下SpringCloud主要的组件,以及它的访间流程

1、外部或者内部的非SpringCloud目都统一通过API网关(Zuul)来访可内部服务.

THE END
1.牛客网app下载手机版2024最新免费安装牛客,帮你的面试助威。 牛客网app,一般又称牛客app。 牛客在手,offer不愁。 全面的就业信息,优质的求职资源,精准高效的信息匹配,千万牛友分享的实时动态,一个陪伴每一位同学开启美好事业的求职学习APP。 【笔试】名企笔试真题+解析 笔试备战秘籍:刷真题!收录各行业知名公司招聘笔试原卷,考前刷真题,笔试不用愁https://m.liqucn.com/app-rn-522028-0
2.「牛客网怎么样」北京牛客科技有限公司牛客网招聘要求怎么样:牛客网都在招什么人? 牛客网招聘类别在校学生类最多占50%,其次是市场/公关/媒介类占50%。牛客网什么学历能进?本科最多占100%,工作经验牛客网有什么要求?不限经验最多占100%,牛客网工作地区在哪?北京最多占100%, 工商信息 https://www.jobui.com/company/11930605/
3.牛客网求职之前,先上牛客,就业找工作一站解决。互联网IT技术/产品/运营/硬件/汽车机械制造/金融/财务管理/审计/银行/市场营销/地产/快消/管培生等等专业技能学习/备考/求职神器,在线进行企业校招实习笔试面试真题模拟考试练习,全面提升求职竞争力,找到好工作,拿到好offer。_https://www.nowcoder.com/feed/main/detail/3262b931a7c14c8698e0062f4cf3fe15
4.牛客网是干什么的?网友(匿名用户)职场问答牛客网是一个面向it程序员的专业笔试、面试题库平台,其隶属于北京牛客科技有限公司,公司的所属行业是https://zq.zhaopin.com/question/7382855/
5.牛客网经典120道Java面试常见题(试题+答案)牛客网java笔试题牛客网提供了120道Java面试题,这里整理出重点的内容,而且对答案有疑惑,补充了解释内容,便于理解。 1. 什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? Java虚拟机是一个可以执行字节码(.class)的虚拟机进程。Java源文件(.java)被编译成能被Java虚拟机执行的字节码文件。 https://blog.csdn.net/weixin_45606067/article/details/110160685
6.牛客博客欢迎开通牛客博客,记录学习进程,分享你的知识!众望所归!牛客终于上线博客功能啦! 欢迎开通你的博客,记录你的学习进程,与牛友分享你的知识! 如何开通牛客博客? 1、进入“个人主页”,点击【开通博客】 2、定制你的博客专属域名,开通博客! 3、进_牛客网_牛客在手,offer不愁https://blog.nowcoder.net/
7.程序员平时喜欢干什么呢?51CTO博客4.牛客网— 面经和刷面试题:https://www.nowcoder.com 各个公司的面试题和面经分享,找工作前认真刷一刷,一定会有很大收获!拿到心仪的 offer! 5. Web 开发练习题:https://www.freecodecamp.org/ 这是国外发起的一个 Web 开发学习的网站,从简单到深入,一步一步带你学习 Web 开发。就像一本练习册,并且当你https://blog.51cto.com/u_15344421/7320507
8.视频面试干货HR如何透过屏幕抓住更多人才?牛客网是一家专注于技术类人才招聘的一站式平台,Moka与牛客网视频面试功能进行有效连接,可由Moka跳转至牛客网面试平台,对技术类岗位进行个性化的面试+在线笔试。视频面试时,支持面试官同时查看候选人简历、及笔试成绩,方便面试官根据面试者个人资料进行考察提问,针对技术型岗位,面试时可以进行代码考核,文件演示,以及填写https://m.hexun.com/stock/2022-03-30/205617452.html
9.DAY一、题干 牛客网链接 https://www.nowcoder.com/practice/da13e0cf321e4df9acd0fdf0a433cbb0?tpId=107&&tqId=33396&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking 二、题解 1.辗转相除法 辗转相除法可求出两数的最大公约数,再由公式最小公倍数 = 两数之积 / 最https://developer.aliyun.com/article/1518390
10.牛肉干店铺起名大全店铺取名牛肉干是内蒙古的特产,而且是源于蒙古铁骑的战粮,如果我们要想经营一家牛肉干的店铺,首先是需要给自己的店铺起个好名字,主要是体现店铺的特色和牛肉干进行关联,而且店铺的名字一定能够体现出牛肉干特征,让人一眼就能够明白这家店铺是卖什么的。 牛香源牛肉干店 https://www.chazidian.com/zl/qiming/130794/
11.甘拜下风!大佬就是牛,仅仅20天就拿到美团快手小米搜狐的offer刷题:LeetCode中文网 + 牛客网 + 微软小胖哥 的 codetop :https://codetop.cc,面试时大部分都是牛客网Coding。 简历:勿写错别字,项目描述要有条理,可以突出自己的工作重点,可以提前自我演练下,确保语言流畅,简历上的技能慎重写!写上一个技能就起码要能讲出个123来。 https://maimai.cn/article/detail?fid=1644521564&efid=hwKWJ5zO_bZ3X2coEKE06g