百度、瑞修得Java工程师社招面经分享
百度
面试过程:
1、java jvm的构成和组件
2、jvm如何优化
3、java 面向对象都有什么特点
4、设计数据库,1个名字空间,1个表,表里面的某一个ID是自增的,如何设计
5、如何实现多台缓存服务器数据的负载均衡
6、多线程的经验
7、如何给系统调优,例如系统提供服务,本来机器性能是可以跟上的,但是由于程序原因,本来可以并行10000个但是最后只能100个。
8、zk宕机,dubbo服务还能不能用?
答:能用,因为dubbo在连zk的时候会本地缓存一份接口数据和地址
9、hasecode的算法是怎么样的?
10、你以前工作中碰到过什么难题,请问你怎么解决的。
瑞修得
面试过程:
1、先问了些项目的具体情况,及有些并发问题的解决方案;
2、数据库分库分表;
3、Spring IOC 实现;
4、java classloader;
5、java的oop思想。(这只是一个思想,面相对象设计,例如java有三大特性:比如:封装,继承,多态和抽象。)
5、创建线程的方式;
答:有三种方式可以用来创建线程: 继承Thread类 实现Runnable接口 应用程序可以使用Executor框架来创建线程池
6、redis的key可以存什么样的类型。
答:二进制的序列,空值也行。
7、hashMap相关的知识,一致性hash;
8、冒泡和二分,数据排序,遍历
9、上传一个EXCEL后,EXCEL中的数据插入数据库需要比较长的时间,用户需要看到进度,怎么解决?
答:定时扫描已插入的条数,除以总条数得到比例,用异步返回给前端展示。
#面经##社招##百度##Java工程师#