这里有一份面筋请查收(四)

java 同时被 2 个专栏收录
134 篇文章 4 订阅
16 篇文章 23 订阅

欢迎支持笔者新作:《深入理解Kafka:核心设计与实践原理》和《RabbitMQ实战指南》,同时欢迎关注笔者的微信公众号:朱小厮的博客。


欢迎跳转到本文的原文链接:https://honeypps.com/talk/interview-4/

这里我连续介绍三家公司的面试,一家是只有一面,还有两家是面完一面就没去了,没去主要是当时一周面了6家而且是在不同的城市,就选择性的挑了这两家没去,是在是太累了,6月17日那天嗓子都面哑了。


###第一家(2016-06-13 14:00)
这是一家本地电商企业,简称S, 企业规模还真是特别大,面的是互联网金融的职位。总共面试就一面,1个多小时,大概的过程就是被蹂躏。。Java基础好像没怎么问,大体上问了一些分布式架构的相关问题。
比如:Kafka, ActiveMQ, RabbitMQ之间的区别以及各自的使用场景。
比如:LVS和Nigix的区别及使用场景
比如:Redis和Memcached
比如:Zookeeper和Keepalived
大体就是抓着问到你不会为止,反正是被蹂躏了。。
过了一周后被通知说面试过了,期间一直以为挂了。而且给的薪水其实是蛮好的了。真是无法理解。。
这其实是真正的第一家面完了的。
技术上没什么通用性,就当谈笑风声了。
最后没去主要是因为比我的期望少了一点点,只要不达标,立马要拒掉,否则想着留一个保底,后面的面试就没那么的有战斗力了。置之死地而后生。


###第二家(2016-06-07 10:44)
这是一家大型国企,相信看我博客的小伙伴就算没用过他的产品也听过它,如果没听过,只能表示你住在深山里的嚒。。这里简称C。这家公司面完一面(电面)就没选择去,主要有两点:1. 大型国企最重要的是管理,约好10:00没来电,后来去催才来的,所以管理上有偏差;2. 他招的不是纯Java的,需要Js,python都用的,博主在目前的公司中就C,C++,JS,Java都写,比较厌烦这种“不专一”的行为。
回忆一下面试题,大概有以下一些:
1.负载均衡方式?
http重定向,DNS域名解析负载均衡,反向代理负载均衡,LVS-NAT, LVS-TUN, LVS-DR.详细可以参考《LVS:三种负载均衡方式比较+另三种负载均衡方式》。
2.AIO? Tomcat中有没有AIO?
博主说Tomcat中有BIO,NIO但是真没见过AIO。面试官说tomcat中有。后来查看了一下资料,Tomcai中有三种模式BIO,NIO,Apr,你指的AIO是Apr嚒。。。囧。
3.问了一个js的问题:写个var变量它挂在那个对象上?
好久没写js了,写的时候也是用框架Dojo写(这个知道的人很少,一般用Jquery的多),想了一会儿说:document,然后又被问了个问题document的父对象是什么? 母鸡啊~
4.数据库优化策略。
凡事数据库相关的一概懵逼。虽然博主用过DB2, Oracle, MySql, SQLServer甚至还用过Access,但是不足以应付面试。短期强化也没意义,一般被问到就说母鸡啊~
5.Tomcat原理。
基本上简历上写了什么东西,都被问了一边原理。这个Tomcat的还真没看过。。懵逼态。


###第三家(2016-06-16 20:30)
对于这家没有什么印象,猎头介绍的,简称为Z好了,面试还是中规中矩的。当时刚面完一家公司I刚回到宾馆就接到电话,嗓子很疼,就心想着快点结束吧,也没怎么记住面了什么,大致是如下这些:
1.Redis和数据库之间的数据一致性问题解决方案。
博主说了一种方法,大致是这样的:将某个库上的某个key要发生的写操作,记录在缓存中,并设置“经验主从同步时间”的缓存超时时间为500ms,这时间是指数据库主备同步的时间不会超过500ms,但是也有可能发生超过500ms的现象,当然可以设置的更久一点,只会偶尔发生最终一致性问题,大多数时候可以保证强一致性。由于一般数据库是读写分离的,写的时候将写的操作在数据库中执行并存入缓存设置超时时间500ms,当读的时候,先查缓存Redis,如果有相关记录则从Redis中返回,如果没有则说明已经同步到负责读的数据库中了,可以直接从读数据库中读取数据,这样也能做到读写数据库的分离。
有关数据一致性问题可以参考《浅析数据一致性》。
2.简述下生产消费者模式,发布订阅模式。略
3.SpringBean的加载过程。
这个上一篇博文中也有描述,这里再说一下自己的理解。其实这个是蛮长的一段,主要有一下一些步骤(博主个人理解,仅供参考):xml解析之后存入一个BeanDefinition之中,然后主要是对其进行操作;先在singletionObjects(是一个ConcurrentHashMap的对象)判断有没有Bean的实例,有就处理下返回,没有就继续;检测一下循坏依赖之类的;下面要进入主题了,如果是单例(Spring Bean默认是单例)的话,就创建实例并存入singletonObjects中,如果不是则创建不保存(当然这里也有一个非常复杂的过程,这里就不论述了);实例创建完之后就开始属性注入(autowiredByType, autowiredByName);初始化Bean(激活Aware方法:BeanNameAware, BeanFactoryAware, ApplicationContextAware等;BeanPostProcessor接口;激活自定义init方法:init-method, InitializingBean接口;);这里就可以使用Bean了;使用完之后就是销毁了(destory-method, DisposableBean接口)。有关Spring的一些知识点可以参考《Spring知识点提炼》。
主要是根据简历来问一些问题。


更多链接请关注:
这里有一份面筋请查收(一)
这里有一份面筋请查收(二)
这里有一份面筋请查收(三)
这里有一份面筋请查收(四)
这里有一份面筋请查收(五)
这里有一份面筋请查收(六)
这里有一份面筋请查收(七)
这里有一份面筋请查收(八)

参考资料:

  1. LVS:三种负载均衡方式比较+另三种负载均衡方式
  2. 浅析数据一致性
  3. Spring知识点提炼

欢迎跳转到本文的原文链接:https://honeypps.com/talk/interview-4/

欢迎支持笔者新作:《深入理解Kafka:核心设计与实践原理》和《RabbitMQ实战指南》,同时欢迎关注笔者的微信公众号:朱小厮的博客。


  • 0
    点赞
  • 1
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
<p style="color:#666666;"> <span style="font-size:14px;">本门课程重实战,将基础知识拆解到项目里,让你在项目情境里学知识。</span> </p> <p style="color:#666666;"> <span style="font-size:14px;">这样的学习方式能让你保持兴趣、充满动力,时刻知道学的东西能用在哪、能怎么用。</span> </p> <p style="color:#666666;"> <span style="font-size:14px;">平时不明白的知识点,放在项目里去理解就恍然大悟了。</span> </p> <p style="color:#666666;"> <span></span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="color:#FF0000;font-size:14px;"><strong>一、融汇贯通</strong></span> </p> <p style="color:#666666;"> <span style="font-size:14px;">本视频采用了前后端分离的开发模式,前端使用Vue.js+Element UI实现了Web页面的呈现,后端使用Python 的Django框架实现了数据访问的接口,前端通过Axios访问后端接口获得数据。在学习完本章节后,真正理解前后端的各自承担的工作。</span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="color:#FF0000;font-size:14px;"><strong>二、贴近实战</strong></span> </p> <p style="color:#666666;"> <span style="font-size:14px;">本系列课程为练手项目实战:学生管理系统v4.0的开发,项目包含了如下几个内容:项目的总体介绍、基本功能的演示、Vuejs的初始化、Element UI的使用、在Django中实现针对数据的增删改查的接口、在Vuejs中实现前端增删改查的调用、实现文件的上传、实现表格的分页、实现导出数据到Excel、实现通过Excel导入数据、实现针对表格的批量化操作等等,所的功能都通过演示完成、贴近了实战</span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="color:#FF0000;font-size:14px;"><strong>三、课程亮点</strong></span> </p> <p style="color:#666666;"> <span style="font-size:14px;">在本案例中,最大的亮点在于前后端做了分离,真正理解前后端的各自承担的工作。前端如何和后端交互</span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="color:#FF0000;font-size:14px;"><strong>适合人群:</strong></span> </p> <p style="color:#666666;"> <span style="font-size:14px;">1、Python语言基础、web前端基础,想要深入学习Python Web框架的朋友;</span> </p> <p style="color:#666666;"> <span style="font-size:14px;">2、Django基础,但是想学习企业级项目实战的朋友;</span> </p> <p style="color:#666666;"> <span style="font-size:14px;">3、MySQL数据库基础的朋友</span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="font-size:14px;"><img alt="" src="https://img-bss.csdnimg.cn/202009070752197496.png" /><br /> </span> </p> <p style="color:#666666;"> <span style="font-size:14px;"><br /> </span> </p>
<div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;"> </span> <div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;"> </span> <div style="color:rgba(0,0,0,.75);"> <div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;">当前课程中商城项目的实战源码是我发布在 GitHub 上的开源项目 newbee-mall 新蜂商城,目前已 6300 多个 star,</span><span style="color:#4d4d4d;">本课程是一个 Spring Boot 技术栈的实战类课程,课程共分为 3 大部分,前面两个部分为基础环境准备和相关概念介绍,第三个部分是 Spring Boot 商城项目功能的讲解,让大家实际操作并实践上手一个大型的线上商城项目,并学习到一定的开发经验以及其中的开发技巧。<br /> 商城项目所涉及的功能结构图整理如下:<br /> </span> </div> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <p style="color:#4d4d4d;"> <img alt="modules" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3N0b3JlL25ld2JlZS1tYWxsLXMucG5n?x-oss-process=image/format,png" /> </p> </div> <p style="color:rgba(0,0,0,.75);"> <strong><span style="color:#e53333;">课程特色</span></strong> </p> <p style="color:rgba(0,0,0,.75);">   </p> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <ul> <li> 对新手开发者十分友好,无需复杂的操作步骤,仅需 2 秒就可以启动这个完整的商城项目 </li> <li> 最终的实战项目是一个企业级别的 Spring Boot 大型项目,对于各个阶段的 Java 开发者都是极佳的选择 </li> <li> 实践项目页面美观且实用,交互效果完美 </li> <li> 教程详细开发教程详细完整、文档资源齐全 </li> <li> 代码+讲解+演示网站全方位保证,向 Hello World 教程说拜拜 </li> <li> 技术栈新颖且知识点丰富,学习后可以提升大家对于知识的理解和掌握,可以进一步提升你的市场竞争力 </li> </ul> </div> <p style="color:rgba(0,0,0,.75);">   </p> <p style="color:rgba(0,0,0,.75);"> <span style="color:#e53333;">课程预览</span> </p> <p style="color:rgba(0,0,0,.75);">   </p> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <p style="color:#4d4d4d;"> 以下为商城项目的页面和功能展示,分别为: </p> </div> <div style="color:rgba(0,0,0,.75);"> <ul> <li> 商城首页 1<br /> <img alt="" src="https://img-bss.csdnimg.cn/202103050347585499.gif" /> </li> <li> 商城首页 2<br /> <img alt="" src="https://img-bss.csdn.net/202005181054413605.png" /> </li> <li>   </li> <li> 购物车<br /> <img alt="cart" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvY2FydC5wbmc?x-oss-process=image/format,png" /> </li> <li> 订单结算<br /> <img alt="settle" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3Qvc2V0dGxlLnBuZw?x-oss-process=image/format,png" /> </li> <li> 订单列表<br /> <img alt="orders" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3Qvb3JkZXJzLnBuZw?x-oss-process=image/format,png" /> </li> <li> 支付页面<br /> <img alt="" src="https://img-bss.csdn.net/201909280301493716.jpg" /> </li> <li> 后台管理系统登录页<br /> <img alt="login" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvbWFuYWdlLWxvZ2luLnBuZw?x-oss-process=image/format,png" /> </li> <li> 商品管理<br /> <img alt="goods" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvbWFuYWdlLWdvb2RzLnBuZw?x-oss-process=image/format,png" /> </li> <li> 商品编辑<br /> <img alt="" src="https://img-bss.csdnimg.cn/202103050348242799.png" /> </li> </ul> </div> </div> </div> </div>
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值