如果需要获取到这个(java面试知识点整理)文档的话,关注转发+评论,然后后台私信【java】即可免费获取文中资料

1.一面

前不久阿里来了一个面试的居然拿到了Offer,约好了晚上19:00,结果等到了19:30电话才过来,面试官连连说抱歉,说刚刚在开一个比较紧急的会议,然后闲聊了几句,电面氛围也没之前那么紧张了,然后让自我介绍一下进入正题。

巴拉巴拉介绍了一下个人经历,和最近做的事情,面试官对我最近做的一个跨境项目在比较感兴趣,让我详细说一下这个架构设计:其实跟主流的系统架构差不多,在上海有8台机器组成主要集群,在香港有4台机器作为从集群,然后用了亚马逊的S3对境外做CDN加速。

1.系统怎么做负载均衡的?Nginx做前置,所有的写操作走上海的主机群,境外的读操作走香港的从集群,境内的读操作走上海的主集群;用户按照用户ID切分,数据库用Mysql,也依据用户ID做了分库分表,然后同步到香港从集群。

2.如果境外的用户写操作访问上海节点网络不通畅怎么办?(比如修改密码,上传资料等)首先以目前的情况,访问速度是可以接受;后面如果情况恶化的话,我想到的2个方案,可以再买一条境外专线,回流到境内节点,这个方案相对比较简单,改动量小,但是费用上可能不可控,另外一种是境外再部署一套主集群,那可能就出现双写同步的问题,相对比较复杂,改动量大。其他方案,暂时也想不出来了,(其实刚刚说的方案其实在公司里面也跟同事他们讨论过,哈哈)然后跟面试官交流了下,技术方案还是得到一定认可的。我也顺势反问了下,有没有更好的技术方案。面试官说他们是天猫进出口技术团队,目前正在筹备境外单元化部署的方案,单元化感觉有点复杂,挑战也很大(什么中间件,数据库的一些 有些我也没听没明白,恩恩就行了~),不过听着很带感。还问了一些高可用,防单点的问题,这块没有自己之前没有好好思考过,答的有点含糊,面试官也没再深问下去。最后问了一些基础知识?数据库的隔离级别,数据库的锁(行锁,表锁,乐观悲观),索引的原理和使用(B+树,最左原则),怎么做DB的调优(explain,看索引类型,然后改SQL,尽量提升索引使用效果);java问了一下HashMap的数据结构,是不是线程安全,这个没看过源码,原理也了解一般

2.二面

自我介绍一番,基本把之前的话再说一遍,话都说熟了。。。后面考察了下JVM的东西,内存模型(线程,堆栈,volatile的用法),GC的工作原理,感觉自己答的一般,yong GC 用2个Survivor 和 Eden,当对象满足晋升条件的话,进入老年代,这个晋升条件可能包含对象是否过大,或者留存时间是否过长;另外当老年代大小持久,或者晋升比率陡增的时候(好像叫什么悲观策略,有个JVM 配置的)会触发Full GC。问了下热部署OSGI,消息队列,不太了解,就直接说了不会免得被怼。最后,问了下自己项目用ORM框架,对Hibernate和Mybatis的理解,平时应用比较多,说到ORM特点的话,也没多少感悟,就泛泛而谈了一下;如果让我设计一个ORM框架,我会怎么设计?额,一开始听到有点懵逼,然后想了下Hibernate平时使用的方式,从解析配置开始,绑定对象和表之间的映射,接着运行时的CRUD的处理,还有事务啊,缓存啊之类的优化。

3.三面

那天晚上在开黑玩游戏,玩到一般接到电话,只能坑队友了。老样子,简单介绍一下,这次面试官层级应该高了点,聊了下自己现在的事情,怎么从技术出发解决业务问题,技术机构支撑对今后业务的发展有没有前瞻性,我自己也随便说了下自己的理解,感觉也还行,毕竟之前面试也说过类似的话题。然后讲了下天猫平台的现有技术体系,问我平台和自营供应链之间的优劣,因为之前面过京东,网易考拉,所以把从他们那边得知的自营特性大致讲了下,甚至还YY了下如果我是京东怎么去对抗天猫,我是天猫的怎么去对抗京东(因为我觉得本质是抓住对方的缺点,学习对方的优点,利用自身的优势去打,比如京东物流有优势,天猫流量多平台大资源广)总体感觉还不错,面试官之后好像还有会,就说可以了差不多了。

4.HR面

周末早上,接到HR电话,一开始感觉有点紧张,素闻阿里HR有一票否决权,到了这个阶段可不能掉链子,但是聊开了也就放松了,问下现在的工作状态,为什么想离职?自己的职业规划,对加入阿里天猫有什么期待。个人感觉是考察面试者的职业素养,跟技术能力没有什么关系,反过来想想也挺好,这样进入阿里天猫的人也都是一帮可共事,有素养的人。最后HR问了下我手上的Offer,我说了京东,网易,后面的还没拿到offer就不说了。

发Offer

等了好几天,总算Offer来了,不过值得等,哈哈!,然后HR先说了来杭州工作,公司可以给到的生活上的福利,前期酒店住宿,一笔客观的搬家费,如果有家室还可以申请每月差旅往返异地,挺人性化的,最后谈到了薪资待遇,总体是很满意的,比京东,网易还是要爽一点的,各方面感觉没有什么理由拒绝,口头上也接了Offer。之后,团队的同事联系了我,是我后续入职之后负责我融入工作的”师兄“,希望我早点入职,可以正好赶上团队去清迈的Outing,哈哈!

小伙伴们有兴趣想了解更多相关学习资料请点赞收藏+评论转发+关注

新员工拿到了Offer阿里巴巴最新Java面试经验相关推荐

  1. Java基础2019最新Java面试经典题解析

    Java基础2019最新Java面试经典题解析 1简述JVM.JRE.JDK的区别 JVM:java虚拟机 ,加载.class并运行.class JRE:java运行环境除了包含JVM以外还包含了运行 ...

  2. 最新Java面试八股文,1000+面试题答案详解全面看完拿下大厂offer

    进大厂是大部分程序员的梦想,而进大厂的门槛也是比较高的,所以这里整理了一份阿里.美团.滴滴.头条等大厂面试大全,其中概括的知识点有:Java.MyBatis.ZooKeeper.Dubbo.Elast ...

  3. 最“全”新零售运维保障解决方案——阿里巴巴GOC技术实践经验独家曝光

    在过去半年中,作为新零售的典型代表--盒马鲜生飞速发展,比如: 2017年9月,盒马鲜生五城十店同开,"盒区房"成为新零售行业新名词: 2017年10月,盒马鲜生上线SOS服务,实 ...

  4. 【2022最新Java面试宝典】—— Java并发编程面试题(123道含答案)

    目录 一.基础知识 1. 为什么要使用并发编程 2. 多线程应用场景 3. 并发编程有什么缺点 4. 并发编程三个必要因素是什么? 5. Java 程序中怎么保证多线程的运行安全? 6. 并行和并发有 ...

  5. 最新Java面试实战

    数据库&事务 1.什么样的场景会产生数据库死锁,如何解决? 2.SQL如何优化 3.Oracle和mysql分页的实现原理 4.唯一索引能否插入空 5.数据库索引的算法原理 6.乐观锁,悲观锁 ...

  6. 【2022最新Java面试宝典】—— Java虚拟机(JVM)面试题(51道含答案)

    目录 一.Java内存模型 1. 我们开发人员编写的Java代码是怎么让电脑认识的 2. 为什么说java是跨平台语言 3. Jdk和Jre和JVM的区别 4. 说一下 JVM由那些部分组成,运行流程 ...

  7. 阿里巴巴2016校招面试经验

    参加了阿里巴巴2016内推面试,总结一下面经,校招内推分为三次技术面和一次HR面 今年阿里的内推面试还是相当的早的,六月低结束导师合作公司的实习,七月份开始准备的阿里面试,基本上算是裸面了,只能边面试 ...

  8. 【2022最新Java面试宝典】—— MyBatis面试题(37道含答案)

    目录 一.MyBatis简介 1. MyBatis是什么? 2. Mybatis优缺点 3. Hibernate 和 MyBatis 的区别 4. 为什么说Mybatis是半自动ORM映射工具?它与全 ...

  9. 最新Java面试300题:腾讯T4面试+美团+京东+拼多多(文末答案附赠)

    数据库原理 MYISAM与innodb搜索引擎原理MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址.其采用索引文件与数据文件,索引文件只存放索引,叶子节点存放数据 ...

最新文章

  1. 特定构造方法 如何让子类重写某些方法时提醒调用super
  2. 一张图探秘施耐德电气全生命周期服务的无限可能
  3. Jquery在线引用地址:
  4. golang goroutine的调度模型:MPG模式
  5. C# 语法练习(4): 类型转换
  6. linux 根目录突然增大
  7. 解决Yii2邮件发送问题(结果返回成功,但接收不到邮件)
  8. 挑战NPC(洛谷-P4258)
  9. 京瓷 打印 打印机 账户_UV打印机买回来成废铁?不是选择不对,而是你想太多了……...
  10. 《JavaScript高级程序设计(第2版)》
  11. EDIUS 8中的快捷键该如何自定义
  12. 软件测试面试中90%会遇到的问题:“你会搭建测试环境吗?”
  13. 【01】国内外git托管平台(总结by魔芋)
  14. 质因子分解 Python
  15. jquery实现div的隐藏和显示和点击空白显示隐藏
  16. 【心电监测】理论1-相关医学知识
  17. 砌下落梅如雪乱——剑雪无名
  18. [源码和文档分享]基于java的葫芦娃大战妖精
  19. 深入了解电容(四):钽电容、聚合物有机半导体电容(POSCAP,ECAS)和薄膜电容
  20. 计算机内存rom与ram的区别

热门文章

  1. utf8与unicode转换
  2. SpringBoot集成TkMapper
  3. robust原理解析
  4. Windows7下查看CRUX 3.0虚拟机里面的linux ext2和ext3文件系统教程
  5. 排序(一)冒泡排序、冒泡改进——鸡尾酒排序、选择排序
  6. codeforce 3B. Lorry(贪心)
  7. UE4 插件开发流程与插件打包问题
  8. Apache Storm-2.0.0 Trident 新版
  9. Python中的模块(二)
  10. 基础篇:Linux 常用命令总结