当前位置: 首页 > news >正文

西安网站建设最新案例长沙做旅游网站多少钱

西安网站建设最新案例,长沙做旅游网站多少钱,dz网站建设视频教程,wordpress如何应用插件上周在拉勾上收到一个蚂蚁金服的大哥要我的简历#xff0c;当时很惊讶#xff0c;居然有蚂蚁金服的找到我#xff0c;然后想都没想就给了。受宠若惊呀#xff0c;我知道自己的水平跟阿里的差距有多远#xff0c;以前一直没用勇气去投#xff0c;连试试都不敢。这次居然主… 上周在拉勾上收到一个蚂蚁金服的大哥要我的简历当时很惊讶居然有蚂蚁金服的找到我然后想都没想就给了。受宠若惊呀我知道自己的水平跟阿里的差距有多远以前一直没用勇气去投连试试都不敢。这次居然主动找过来了当时就再想难道阿里这么缺人么还是只是为了完成某些KPI当然了我这种想法比较幼稚。没想到的是第二天居然收到了阿里巴巴的面试邀请邮件里面说到会在10个工作日内进行第一次面试。不管怎么样吧既然面试来了就试试吧。能面一次这种级别的技术公司看看自己真实的差距也是三生有幸了。从离职的这段时间也补了补JVM基础的数据结构算法什么的还有一些高频的Java 基础问题。周一晚上 825 接到了蚂蚁大哥来的电话果然跟传说中的一样还在上班。当时很意外没想到是电话面试因为邮件中没提到后面回想貌似一面基本上都是电话面试有些朋友二面也是电面。进入正题下面是整个内容。顺序有些不一致我按照模块来整理的。自我介绍自我介绍就先介绍 多大了、毕业多久了、做了什么些东西、最近做的什么内容擅长的部分呀 等等。这里说一下自我介绍的内容如实说就好不要太过于夸大自我介绍的内容建议大家提前准备好不要说的时候想到哪儿说到哪儿。线程部分1、多线程的实现方式有哪些这个题目在一面的时候基本上都会碰到吧继承 Thread 类、实现Runnable 接口最后调用 的是 start() 方法来启动线程。这里还有个知识点是 start() 跟 run() 方法的区别和联系。直接调用 start() 方法此时线程处于一个就绪可运行的状态但是并没有真正的运行。而是得到CPU 的时间片后开始执行 run() 方法run() 方法里面的是我们的线程体。我们直接 运行 run() 方法它其实就是一个普通的方法调用在主线程中执行是不会开启多线程的。2、描述一些线程死锁的情况这个问题在平常项目基本上没怎么接触到但是我有过部分了解。回答的是 两个线程在持有自己的锁的时候还要去持有对方持有的锁时由于别人的锁已经被对方持有造成彼此等待对方释放锁的情况。回答得比较片面还有一些类型的死锁问题没有答出来后面直接交底了面试官说没关系的。建议大家在准备这个问题的时候能说出来产生死锁的条件、现象、解决办法等。然后配上一些实例说明在面试过程中面试官就提到说根据我们平常遇到死锁问题的场景实例来说。大家可以搜一下下面这两个死锁场景问题1、三个人 三根筷子每个人需要拿到身边的两根筷子才能开始吃饭2、银行转账问题线程 A 从 X 账户向 Y 账户转账线程 B 从账户 Y 向账户 X 转账那么就会发生死锁。3、项目中有没有用过线程池 怎么用的 回答了我们项目里面有些接口需要组装多个服务的数据进行封装然后返回。这里面我们会使用多线程去并行拉取数据减少接口响应时间。面试官说“ok那么你有没有看过线程池里面的源码呢 有哪几种线程池 ”源码这里我迟疑了一下我说不太熟然后我说了几种类型的线程池 newSingleThreadExecutor、newFixedThreadPool、newCachedThreadPool 但是还漏了一种 newScheduledThreadPool 没想起来。4、线程池的原理是什么样子底层方法的参数分别是什么意思回答这个问题的时候当时我卡住了。我知道这几个底层都是对 调用的 ThreadPoolExecutor 但是我死活没有想起来名字这时候面试官提醒了一下然后说没关系的。接着就问“那你知道他的参数都有哪些吗 都分别代表什么意思吗 ”我回答的是 有个 线程的个数 和 线程存活的时间其他的没说上来。然后面试官说“没关系的”。补充一下线程池底层都是通过 ThreadPoolExecutor 来实现的。public ThreadPoolExecutor( int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit,BlockingQueueRunnable workQueue, ThreadFactory threadFactory, RejectedExecutionHandler handler) 几个参数的意思分别为corePoolSize 线程池里最小线程数maximumPoolSize线程池里最大线程数量超过最大线程时候会使用 RejectedExecutionHandlerkeepAliveTime线程最大的存活时间超过这个时间就会被回收unit线程最大的存活时间的单位workQueue缓存需要执行的异步任务的队列threadFactory新建线程工厂handler拒绝策略表示当workQueue已满且池中的线程数达到maximumPoolSize时线程池拒绝添加新任务时采取的策略。DiscardPolicy抛弃当前任务DiscardOldestPolicy扔掉最旧的CallerRunsPolicy由向线程池提交任务的线程来执行该任务AbortPolicy抛出 RejectedExecutionException 异常。问到这里我回答的确实太有限面试官就没有再细问了还是说“没关系的”。如果你这里答出来了那么我认为你还需要掌握的是这几种线程池在哪些情况下使用什么类型的以及要注意什么问题很大可能面试官会继续深挖。这里就不给出答案了我相信你自己去搜一下体会会更深刻些。MyBatis 部分5、mybatis 的 $ 与 # 的区别回答他们两都可以来传递参数不过 # 可以方式 sql 注入而 $ 就是字符串拼接的方式处理可能会有sql 注入的问题。上面还有一个关键的点没有答出来那就是 #{} 在预处理时会把参数部分用一个占位符 ? 代替 变成了如下的 sql 语句select * from user where name ?; 而 ${} 则只是简单的字符串拼接在动态解析阶段就直接拼接成了 最终的sql 语句select * from user where name zhouq; 6、$ 跟 # 的使用场景 这个问题我没有怎么理解得到然后回答的就是 $ 在拼接表名的时候用其他时候传递参数值的时候用 #。7、mybatis 的 dao 接口跟 xml 文件里面的sql 是如何建立关系的这里问到的时候比较蒙圈然后回答的是mybatis 会先解析这些xml 文件xml 文件里面有命名空间 namespace这里可以跟dao 建立关系然后 xml 中的每段 sql 会有一个id 跟 dao 中的接口进行关联。。。然后面试官说: 如果 我有两个这个xml 文件 都跟这个dao 建立关系了那不是就是冲突了,然后我认怂了。我上面的回答太笼统肯定是有问题的建议你好好去了解一下mybatis 的原理。mybatis 到这里就没了。数据库先问的是你平常使用得做多的是什么数据库当然了mysql 。8、mysql 锁机制 面试官问的是你了解mysql 的锁机制么我就只答出来一个行锁。然后其他的没想起就认了其他的忘记了。建议你去了解了解还有表锁、页面锁 等等。9、排它锁  共享锁你了解吗 这个地方我想了一会说平时了解得不多。实时上平常我们的小业务系统基本上没有用到这些可能有用到的地方也没有去在意吧。接着面试官说了下面这个场景题然后让出解决方案。10、场景问题在A线程处理一条数据比如扣款或者是更新状态时候其他的线程比如 B 需要对它进行阻塞不能够再对这条数据进行操作包括查询也不行得等A 线程处理完成以后B才能进行处理。A 跟 B 是同样的业务代码产生的非不同的业务。要使用数据库的锁来实现怎么实现 问这个问题的时候面试官很耐心的解释了这个场景然后问我有没有想起点什么来其实就是想考察上面的关于数据库锁的问题。11、mysql 索引是怎么实现的回答的是 B 树接着面试官继续问“能否大致描述一下 B 树的大致结构 ”。这块内容没怎么了解直接认怂了。缓存相关这块内容是我项目上写得有使用了多级缓存的方案然后面试官就这一块问了下面的这些关于使用缓存可能会遇到的问题。12、缓存击穿、缓存穿透 、缓存雪崩 13、热点数据失效怎么解决这两个问题以前好好了解过但是没整理成自己的东西面试的时候也说得云里雾里。14、先删缓存还是先更新数据库为什么这里我说的是先删缓存然后再更新数据库但这是错误的这里有非常大的问题。想想这样一个场景如果一个线程 A 先把缓存删除了,然后去更新数据库那么在它删了缓存还没有更新到数据库的这个中间时间线程B进来了发现缓存没有就去读库这时候还是读取还是旧的数据然后又更新到缓存去了。此时A 才把新数据写到数据库。此时就产生了一个典型的问题就是“双写不一致”。关于这块问题的讨论《缓存更新的套路》-陈皓老师kafka15、kafka 的架构包含了哪些角色这个问题我开始不知道怎么回答就说了个 Broker然后面试官提醒了一下“不是我们平常还有生产者消费呀什么的吗 ”额我说还有生产者、消费者、主题呀等等。这过程中面试官还提到说平常我们在搭建的时候要配置写什么东西呀等等按照官网的介绍说也行。这里还有其他的比如Partition、消费者组、还有一个主要的 就是 zk 了。这里建议大家好好的把 kafka 里面的这些概念、属于、架构图好好自己画一下。不然真是关键时候真说不出来但是他一提你又明白。这样子肯定是不行的面试是你说不是面试官说。16、kafka 的最小工作单元这个问题问得也是蒙圈其实就是说我们在写代码的时候要用kafka的时候。我们需要使用那些最基础的组件比如生产者、消费者、主题、偏移量 等等。这个问题如果你们遇到最好向面试官问清楚。17、kafka 消息重复消费的问题幂等怎么做的刚开始面试官说你知道kafka 消息重复的问题吗有没遇到。我回答的是会存在消息重复消费的问题。我们在消费数据这端做了幂等处理来解决。然后面试官继续才问的是幂等怎么来做的 我说通过设置数据版本号还有数据库唯一索引等等。面试官“ok”。这个问题如果你能告诉面试官产生重复消费的情况比如说投递的时候重复了消费的时候由于 offset 没处理好等等问题导致的话我想可能会更好。18、kafka ack 机制集群中的ack 是怎么实现的这里我只回答上了 ack 机制是啥但是实现原理没有回答上来。Redis19、Redis 中有哪些数据结构平常使用得最多的是 String , 还有 List 、Hash、Set、ZSet 。没有再问其他的内容。但是像Redis 为什么这么快这种问题我认为你应该要去了解其他小伙伴经常遇到。也就是多路复用是个什么玩意儿源码20、这里面试官问 你平常有没有看过一些源码框架的也行JDK 的也行。然后我说看了 HashMap 的源码,然后就巴拉巴拉的说了一哈大体的 put、get 流程 它的结构是什么样子的。这过程中还问到了 怎么判断两个对象是否相等也就是 和 equals 的知识点。其他的就没再继续问了。到这里整个电面过程结束了说10个工作日内会给我答复此次面试情况。整个过程大概持续了40分钟的样子。我知道凉凉。总结上面的模块虽然顺序有变化但是每个大块里面的问题都是按照顺序来的基本上都是由浅入深、循序渐进的来问。像数据库锁、线程池、缓存问题 这些内容几乎都是那种连环炮的形式直到摸到你的底。通过这次面试亲身体会到了差距。不过更有方向了。告诫大家一点东西平常多积累输出输出或者教会别人是最好的学习方式光看不练几天就忘。先深后广深入学习而不是只停留在使用API 的层面一块一块系统的深入了解再去搞其他的。建立知识体系把自己学习的内容形成博客也好什么导图也罢记得把这些零散的内容整理成自己的知识。别抱有侥幸心理别裸面如果自己有整理的还是多看一下多准备准备。大厂的面试会挖到你最深的部分不要觉得只背一些面试题就是 ok的题是背不完的。临时抱佛脚基本上过不了关。如果你是靠背面试题进去的那么你厉害佩服。隔一段时间就去面试吧不要学我待一家公司三年多中途都没有出去面过出去面面才知道哪些是需要去补充的。有些问题可能答案这些不是太全面需要你自己去动手。希望这篇文章对你有帮助哪怕只有一个点都是值得的。如果其中有一些点你不了解那么你是时候要去补充了。别在自己的舒适区待太久不然出不来。出来混迟早是要还的最后为大家准备一篇「Java最常见200面试题全解析」助力大家找到合适的工作这份面试题包含的模块有Java、Jvm 最常见面试题解析Spring、Spring MVC、MyBatis、Hibernate 面试题解析MySQL、Redis 面试题解析RabbitMQ、Kafka、Zookeeper 面试解析微服务 Spring Boot、Spring Cloud 面试解析。扫描下面二维码付费阅读【End】关注下方二维码订阅更多精彩内容。转发朋友圈是对我最大的支持。
http://www.sadfv.cn/news/249551/

相关文章:

  • 福州网站建设技术支持东莞网站建设策划
  • 免费网站建设制作h5网站开发框架
  • 怎样做才能让网站帮忙送东西公司网站包括哪些内容
  • 湖北建设信息网站 联系方式怎么做好seo推广
  • 企业网站的作用和目的网站开发期末作品代码和数据库运行好大全
  • 海淀做网站公司廊坊网站建设制作
  • win7家用电脑做网站服务器网站怎么建设原始站点
  • 空中客车网站建设需求做网站都需要什么资料
  • 河北涿州建设局网站特效素材免费下载网站
  • 上海创意网站建设编程平台
  • 给人做ppt的网站吗wordpress主题ux themes
  • 90设计网站怎么绑定手机号外贸网站建设哪里好
  • PHP搭建IDC网站行业网站渠道选择和内容运营
  • 公司搭建网站网络运维工程师的月薪有多少
  • 北京网站开发品牌摄影基地设计
  • 东营seo网站推广百度ocpc怎么优化
  • 怎么用服务器lp做网站做网站公司 上海
  • 电商购物网站开发网站维护运营优化公司
  • 电子商务网站设计物流方案linux系统服务器怎么做网站
  • 泸州网站开发模板网站建设哪家专业
  • 网站建设背景论文wordpress中用户注册
  • 网站建设的需求要素网站建设的公司工作室
  • 安徽网站建设制作网站目录编辑审核的注意事项
  • wordpress微信群机器人嘉兴优化网站公司哪家好
  • wordpress视屏播放器seo和sem的区别与联系
  • 做网站广告wordpress 文章新窗口
  • 网页设计和网站制作网站建设有什么注意
  • wordpress做的好的网站东莞网站SEO优化推广
  • 我市建设车辆违章查询网站 病句晋中建设集团有限公司网站
  • 网站这么做404页面网络推广方式有哪些