Ⅰ 阿里巴巴招聘java软件工程学生面试题都考哪些方面
JVM原理,优化
并发编程
设计模式
数据库操作
bbo服务治理
中间件
具体问题如下:
JVM内存分代版,
Java 8的内存分代改进权
深入分析了Classloader,双亲委派机制
JVM的编译优化
对Java内存模型的理解,以及其在并发中的应用
指令重排序,内存栅栏等
HashMap的并发问题
了解LinkedHashMap的应用吗
在工作中遇到过哪些设计模式,是如何应用的
Ⅱ bbo配置问题 Duplicate spring bean id 求帮助
你的speakInterface这个bean id在全局有重名了,最简单的办法就是当前的这个bean改一个ID应该就可以内了吧。
建议你容把consumer的test代码放到另一个项目里面,不要和provider放在同一个项目里面试一下。
Ⅲ 大家有什么java面试的有关的书籍推荐
书的话我不知道,不过应该是没有的,面试知识点可以自己去网上找一找,有很多面试过的人分享的面试题。而且面试难易看公司和应聘岗位的,有的公司水平低或者岗位专业性要求不高,面试就容易,有的公司水平高专业要求高,那就面试难。我贴一下我找的一些面试知识点。
3.1.1 Java基础
此时一般会问到一些Java的基础知识,比如
l synchronized static修饰类和方法有什么区别
l HashMap的原理,底层数据结构,rehash的过程,指针碰撞问题
l HashMap的线程安全问题,为什么会产生这样的线程安全问题
l ConcurrentHashMap的数据结构,底层原理,put和get是否线程安全
l Java IO的一些内容,包括NIO,BIO等
3.1.2 Java高级特性
此时问到的问题一般包含JVM,多线程的一些内容,这块建议大家多看看源码,大致如下:
l Java线程池的构造方法,里面参数的含义,以及原理
l volatile和ThreadLocal解决了什么问题
l CAS在Java中的具体实现
l Java虚拟机的构成,以及一个Java对象的生命周期,还有堆栈和方法区中存储的内容
l JVM的GC过程,包括一些实际问题的分析,比如说明一个现象,让你分析可能是什么原因会导致这样的问题,应该如何对JVM参数进行调优
l synchronized和Lock的区别,以及底层实现原理
l Full GC和Minor GC触发的条件
l GC Roots的选择
l jmap,jstat,jstack等的使用场景,MAT等
l ClassLoader的加载过程
l CountDownLatch、CyclicBarrier和Semaphore等
l Java 8 的新特性等
3.1.3 数据库
这里的数据库包含两种,一种一般是MySQL,另外是NoSql数据库,包括Redis、MongoDB等。一般会问的问题有:
l inner join和left join等的区别
l SQL调优,explain,profile等
l InnoDB和Myisam的区别
l ACID
l 数据库的事务隔离级别,以及他们分别能解决什么问题
l Redis的几种数据结构
l Redis是单线程还是多线程
l Redis的持久化
l 悲观锁和乐观锁的含义
l 最左前缀索引,索引的数据结构,聚簇索引等(这块还没搞明白)
3.1.4 框架
3.1.4.1 Spring
因为spring是我们常用的框架,所以这块的内容会问的比较多,也会比较细。
l Spring的两大特性(IoC和AOP)
l Spring的bean的生命周期
l Spring是如何解决Bean的循环引用问题的
l AOP的两种实现方式,以及两者的区别(这里其实使用了动态代理,具体动态代理分为两种,一种是JDK的动态代理,主要使用的是JDK的反射,还有一种是CGLib,两者区别可以自己搜索,文章比较多)
l AOP一般的使用场景
l Spring的事务原理
3.1.4.2 MyBatis
这块问到的比较简单些:
l $和#的区别
l MyBatis和Hibernate的区别
l 源码,一般问的比较少
3.1.4.3 Dubbo
因为平时自己用到了Dubbo,所以这块会有问到:
l RPC的原理
l Dubbo是如何完成远程调用的
l Dubbo如何进行调优
l Dubbo的通信协议
l Dubbo是如何实现负载均衡的
3.1.4.4 ZooKeeper
l ZK的使用场景
l ZK的选举机制
l ZK的节点类型
l 一致性Hash原理
3.1.5 数据结构和算法
这块的内容是基础,如果面试官怀疑你的能力,一般一会问到这部分内容,比如树的遍历、快速排序等。
3.1.6 linux
一般会问一些命令的使用,然后会举一个实际的场景,让你用命令去排查问题,这块自己不是很熟,需要尽快加强。
3.1.7 综合题
这块的题目,面试官一般会问的比较深入。比如如何设计一个抢购系统,String转Integer等,这部分需要考验的就是一个人的临场应变能力,以及在平时工作中系统设计能力的积累,以及考虑问题是否周到等。也有可能会对你简历上面写的系统的设计进行详细的询问,所以在你写简历的时候,千万不能把自己不熟悉的内容写上去,而且自己又讲不清,这样一般会被直接pass掉。
当然也会问一些常用的maven的命令,设计模式的题目(这部分问的比较多的就是单例模式)。
Ⅳ 阿里巴巴的招聘流程,技术岗位一般几轮面试
阿里巴巴招聘技术岗位的流程:
依次进行三轮面试:初面、复面、以及hr面。
每通过一轮即可进回入下一轮,三轮全答过即为通过。
(4)bbo面试扩展阅读
面试技巧
招聘中的“经典七问”
招聘过程中常要问到的问题极其释义总结如下:
以往工作中您的职责是什么?――如果描述不清,可见即使有相关工作经验,其系统性全面性也值得怀疑。
请讲一下您以往的工作经历。――考察应聘者的语言组织及表达能力,以及描述的条理化。
您以往的工作经历中最得意最成功的一件事是什么?您的长处是什么?――从应聘者的回答中,可了解他是注重个人成功还是注重团队协作。
您感觉还有哪方面的知识、技能或能力需要提升?――“提升”一词比较委婉,一方面考察其态度是否坦诚,另一方面,也为日后的员工培训增强针对性。
对于新的工作岗位您有什么设想?如何开展工作?――这涉及到员工的职业生涯设计,更有关员工工作的稳定性。
您离职的原因是什么?――这是必须要问的问题,涉及员工和组织的融合性。
您对薪金待遇和福利有什么要求?――这个问题的重要性更是不必多言。
Ⅳ JAVA类似阿里bbo的框架还有哪些
我去年参加了淘宝和阿里B2B的面试:
面试基本都是基础知识,包括javaSE的还有数据库、数据结构回、
操作系统、答网络等等。 我的特点是很喜欢动手,有什么想法,马上实践,这个该我带来不少好处。 基础很好的话,甚至其他的知识不好,公司也可能姑且接..
Ⅵ java面试,1-3年经验
看公司需求吧,比如说大数据公司数据库方面的问题比较多,主流框架一般都会问到专,ssh,ssm之类的,比如mvc的工作属流程,struts的了解/最主要的还是看你简历上面自己的能力描述,比如熟悉Java、用过哪些服务器、熟练运用哪些数据库、熟悉哪些开源框架等等
Ⅶ java程序员面试前要不要自学bbo
那要看你面试什么公司了,有些小公司不要求分布式高并发的,你就不用去学
如果回你要去的答公司他们做的项目是流量很大的,自然会对这些有一定要求,但也不一定是bbo,可能是用其他的技术
根据你自己能力和需求来学吧
Ⅷ Java开发也有2年了,也接触过一些新技术,比如bbo和rabbitmq,在项目中也用过也配置
你可以网络,比如为什么要用缓存memcache,或者redis,那是为了让用户有好的体验,提升性能,你这我没听过也没用过,用了自然会知道的吧
Ⅸ bbo和zookeeper面试题
zookeeper只是起注册和负载均衡的作用,服务端将服务在zookeeper上注册,zookeeper会将服务端的注册信息告诉消费回端,答然后消费端就可以直接找到服务端进行服务调用了。请求是不会经过zookeeper的