
面试
文章平均质量分 72
JavaEdge聊AI
关注并私信我,获取更多大厂求职经验。《编程严选网》创始人
展开
-
怎么做,才能在职场中晋升?
主动原则,主动做事的人,比等着别人安排的人更容易晋升。所以你应该定期或者不定期地主动找主管沟通,交流关于工作任务的想法和意愿,寻求机会;同时,你也要主动找同事沟通,了解更多工作相关信息成长原则,一边做事一边挖掘成长点、提升自己能力的人,比光顾着做事的人更容易晋升。所以如果你已经能得心应手地完成现在的任务,就应该主动跳出舒适区,尝试更高难度和更高复杂度的事情;同时,不管事情做好了还是没做好,你都应该多做复盘总结,找到可以提升优化的点价值原则,让能力为公司产出价值的人,比空有一身能力的人更容易晋升。原创 2023-02-21 22:10:01 · 750 阅读 · 0 评论 -
常见面试套路
面试套路原创 2022-10-20 00:05:22 · 738 阅读 · 0 评论 -
2022年最新版Spring专项面试突击
1、什么是 Spring 框架?Spring 框架有哪些主要模块?Spring 框架是一个为 Java 应用程序的开发提供了综合、广泛的基础性支持的 Java 平台。Spring 帮助开发者解决了开发中基础性的问题,使得开发人员可以专注于应用程序的开发。Spring 框架本身亦是按照设计模式精心打造,这使得我们可以在开发环境中安心的集成 Spring 框架,不必担心 Spring 是如何在后台进行工作的。Spring 框架至今已集成了 20 多个模块。这些模块主要被分如下图所示的核心容器、数据访原创 2022-02-01 16:17:48 · 570 阅读 · 0 评论 -
大厂Java面试题解(45)-设计一个高并发系统
1 为什么面试官爱问这种面试题?因为招聘中大家都有这个要求。技术强的人,在互联网公司肯定负责过高并发模块,那夺取offer太简单了。可惜大部分初级工程师甚至高并发代码都没想过怎么写!不是说只要用个redis缓存,用个mq异步削峰就搞定了!真实的要复杂很多倍。面试官问你如何设计一个高并发系统,其实多半是因为知道你没干过高并发。看你简历也没啥特别的,所以就问问你,如何设计。就是想考察你是否有技术储备。最好是招聘个真正有高并发经验的,但众所周知国内缺乏这种中高级开发。所以退而求其次,招个至少研究.原创 2020-07-24 23:07:24 · 3931 阅读 · 2 评论 -
Redis&ZooKeeper两种分布式锁实现的优劣
1 面试题一般实现分布式锁都有哪些方式?使用redis如何设计分布式锁?使用zk来设计分布式锁可以吗?这两种分布式锁的实现方式哪种效率比较高?2 考点分析一般先问问你zk,然后过渡到zk关联的一些问题,比如分布式锁。可能是全站最完整的Redis分布式锁架构演进Redis & ZooKeeper分布式锁实现的对比Redis分布式锁,需要自己不断去尝试获取锁,比较消耗性能ZooKeeper分布式锁,获取不到锁,注册个监听器即可,不需要不断主动尝试获取锁,性能开销较小另外一点就是.原创 2020-05-19 11:29:00 · 1923 阅读 · 0 评论 -
华为Java高级面试题:用两个线程,一个输出字母,一个输出数字,交替输出1A2B3C4D...26Z
HSDIS查看Java代码的汇编指令java -XX:+UnlockDiagnosticVMOptions -XX:+PrintAssemble使用 LockSupport.park()and unpark()原创 2020-04-05 20:58:25 · 6228 阅读 · 13 评论 -
Java大厂多线程面试题详解
1 大厂面试题请描述synchrnoized和reentrantlock的底层实现及重入的底层原理- 百度阿里请描述锁的四种状态和升级过程-百度阿里吊打Java面试官-Java锁升级详解CAS的ABA问题如何解决-百度请谈一下AQS,为什么AQS的底层 是CAS + volatile-百度请谈一下你对volatile的理解-美团阿里volatile的可见性和禁止指令重排序是如何实现...原创 2020-04-04 22:38:56 · 2231 阅读 · 0 评论 -
面试官竟然不知道Java单例模式双重检验锁一定要加volatile!
对于 T t = new T();其实有如下字节码指令完成_new 'org/openjdk/jol/T'dupINVOKESPECIAL org/openjdk/jol/T.<init> ()Vastore 1return线程一 new 到一半时,m=0,发生重排序这时线程 2 来了!看到 t 已经指向了一个半初始化的实例了!这个概率很小,但是并发如淘宝,...原创 2020-04-04 22:38:10 · 2763 阅读 · 7 评论 -
2020年最新腾讯Java面试真题
说说JVM内存模型。线程的程序计数器是干什么用的?说说堆里面的垃圾回收算法?为什么新生代用复制算法,老年代用标记整理、标记压缩?了解CMS这个垃圾回收器吗?说说它的工作流程?CMS在并发标记的时候,用户线程也会不停的产生一些大对象,Remark再次标记的时候可能会花上很多时间,说说你的优化方案?(我:???)说说java线程池的工作流程?看你项目用过dubbo,dubbo底层是怎么通...原创 2020-04-28 10:04:22 · 7560 阅读 · 11 评论 -
【防止重复下单】分布式系统接口幂等性实现方案
如订单支付后,seller要发货,发货完成后要填个快递单号。假设seller填个666,刚填完,发现填错了,赶紧再修改成888。对订单服务,这就是2个更新订单的请求。系统异常时666请求到了,单号更成666,接着888请求到了,单号又更新成888,但是666更新成功的响应丢了,调用方没收到成功响应,自动重试,再次发起666请求,单号又被更新成666了,这数据显然就错了!创建订单服务,可通过预生成订单号,然后利用DB的订单号唯一约束,避免重复写入订单,实现创建订单服务的幂等性。原创 2020-03-20 10:06:20 · 6448 阅读 · 17 评论 -
2020年最新阿里Java面试题,看看你都会了吗?
springboot或者spring的加载流程对IOC和AOP的理解jdk和cglib实现的AOP实际上会在内存生成动态代理对象,还有什么其他办法实现AOP?经提示答出AspectJ以及实现原理Spring中的对象的作用域Singleton对象引用Prototype会发生什么项目中怎样使用微服务?两个服务之间调用的流程rpc与http的区别设计rpc协议需要注意什么项目中如何使用...原创 2020-02-15 00:42:30 · 5097 阅读 · 10 评论 -
面试BAT时,他们问了我这些!
能进入BAT 等一线大厂工作,是很多开发者们的目标与梦想,为帮助开发者们提升面试技能、高效通关一线互联网公司的面试,提炼总结了这份面试真题,一次整体放出送给大家。看看自己能答对多少本篇建议大家收藏、备用~【BAT 等一线互联网面试真题集锦】涵盖:开源、Java集合、JVM、NIO、Dubbo、秒杀系统、高并发、分布式、锁、redis、MySQL、Linux、hashMap、中间件等...原创 2020-01-09 22:28:09 · 6141 阅读 · 0 评论 -
分布式系统面试连环炮
0 导读有一些同学,之前呢主要是做传统行业,外包项目,互联网公司,一直是那种小的公司,技术一直都搞的比较简单。共同的一个问题,就是都没怎么搞过分布式系统,现在互联网公司,一般都是做分布式的系统,大家都不是做底层的分布式系统,分布式存储系统,hadoop hdfs,分布式计算系统,hadoop mapreduce,spark,分布式流式计算系统,storm。分布式业务系统,就是把原来用java开...原创 2019-05-15 16:22:39 · 1356 阅读 · 0 评论 -
Redis主从复制原理及过期key处理
1 主从架构的核心原理当启动一个slave node时,它会发送一个PSYNC命令给master node如果slave node重新连接master node,那么master node仅仅会复制给slave部分缺少的数据;如果第一次连接master node,那么会触发一次full resynchronization,即全量复制开始full resynchronization时,m...原创 2019-07-05 10:30:11 · 1745 阅读 · 0 评论 -
Redis哨兵主备切换的数据丢失问题
1 数据丢失的两个场景主备切换的过程,可能会导致数据丢失1.1 异步复制由于 master => slave的复制是异步的,所以可能有部分数据还没复制到slave,master就宕机,于是这些数据就丢失了1.2 脑裂导致脑裂,也就是说,某个master所在节点突然脱离正常的网络,无法和其他slave机器连接,但实际上master还运行着此时哨兵可能就会认为master宕机了,然...原创 2019-07-06 14:46:31 · 1361 阅读 · 0 评论 -
深入解析Redis哨兵底层原理
1 sdown和odown转换机制两种失败状态1.1 概念sdown主观宕机一个哨兵自己觉得一个master宕机odown客观宕机quorum数量的哨兵都觉得一个master宕机1.2 达成条件sdown一个哨兵ping一个master,超过is-master-down-after-millisecondsodown一个哨兵在指定时间内,收到了quorum指定数量的...原创 2019-07-06 18:09:25 · 1331 阅读 · 0 评论 -
Redis replication以及master持久化对主从架构的安全意义
redis replication -> 主从架构 -> 读写分离 -> 水平扩容支撑读高并发1 图解redis replication基本原理2 Redis replication的核心机制Redis采用异步方式复制数据到slave节点,不过redis 2.8开始,slave node会周期性确认自己每次复制的数据量一个master node可以配置多个slave...原创 2019-07-04 22:46:27 · 1244 阅读 · 0 评论 -
突破Java面试(18)-消息队列面试技巧总结
其实如果我是面试官的话,我如果感觉你都把刚才那些问题都答出来了,我可能会继续刨根问底,深挖,问你,直到把你给问倒消息队列,kafka,复制的底层原理,leader选举的算法,增加partition以后的rebalance算法,扣很多很多的细节,如何优化kafka写入的吞吐量其实这块如果挖深了可以问的极其深,如果是我来深挖,可能会挖到ES底层的相关度评分算法(TF/IDF算法)、deep pag...原创 2019-07-04 18:59:37 · 1332 阅读 · 0 评论 -
为什么要把系统拆分成分布式的?为啥要用dubbo?
1 面试题为什么要进行系统拆分?如何进行系统拆分?拆分后不用dubbo可以吗?2 考点分析从该节开始就进行分布式系统环节了,好多同学说,现在出去分布式成标配了,没有哪个公司不问问你分布式的事儿。你要是不会分布式的东西,简直这简历没法看,没人会让你去面试。其实为啥会这样呢?这就是因为整个大行业技术发展的原因早些年,在2010年初的时候,整个IT行业,很少有人谈分布式,更不用说微服务...原创 2019-05-15 17:24:05 · 1399 阅读 · 0 评论 -
互联网大厂缓存与数据库的双写一致性解决方案
1 面试题如何保证缓存与数据库的双写一致性?2 考点分析你只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题?3 详解一般来说,就是如果你的系统不是严格要求缓存+数据库必须一致性的话,缓存可以稍微的跟数据库偶尔有不一致的情况,最好不要做这个方案读请求和写请求串行化,串到一个内存队列里去,这样就可以保证一定不会出现不一致的...原创 2019-05-10 21:40:01 · 2861 阅读 · 0 评论 -
如何解决Redis的并发竞争问题
1 面试题redis的并发竞争问题是什么?如何解决这个问题?了解Redis事务的CAS方案吗?2 考点分析这个也是线上非常常见的一个问题,就是多客户端同时并发写一个key,可能本来应该先到的数据后到了,导致数据版本错了。或者是多客户端同时获取一个key,修改值之后再写回去,只要顺序错了,数据就错了。而且redis自己就有天然解决这个问题的CAS类的乐观锁方案3 详解redis并发竞争...原创 2019-05-09 17:56:22 · 1760 阅读 · 0 评论 -
如何保证消息消费时的幂等性?
1 面试题如何保证消息消费时的幂等性?2 考点分析既然是消费消息,那肯定要考虑考虑会不会重复消费,能不能避免重复消费,或者重复消费了也别造成系统异常可以吗.这个是MQ领域的基本问题,其实本质上还是问你使用消息队列如何保证幂等性,这个是你架构里要考虑的一个问题。面试官问你,肯定是必问的,这是你要考虑的实际生产上的系统设计问题。3 详解首先你别听到重复消息这个事儿,就一无所知吧,你先大概...原创 2019-05-14 13:02:46 · 2068 阅读 · 0 评论 -
高可用系统架构(2)-Hystrix分布式系统高可用
1 Hystrix是什么?在分布式系统中,每个服务都可能会调用很多其他服务,被调用的那些服务就是依赖服务,有的时候某些依赖服务出现故障也是很正常的。Hystrix可以让我们在分布式系统中对服务间的调用进行控制,加入一些调用延迟或者依赖故障的容错机制。Hystrix通过将依赖服务进行资源隔离,进而组织某个依赖服务出现故障的时候,这种故障在整个系统所有的依赖服务调用中进行蔓延,同时Hystrix...原创 2019-05-08 17:02:32 · 1129 阅读 · 0 评论 -
突破Java面试(9)-如何保证消息队列的顺序性
1 面试题如何保证消息的顺序性?2 考点分析其实这个也是用MQ的时候必问的话题,第一看看你了解不了解顺序这个事第二看看你有没有办法保证消息是有顺序的,这个生产系统中常见的问题。3 详解举个例子,一个mysql binlog同步的系统,压力还是非常大的,日同步数据要达到上亿.mysql -> mysql,常见的一点在于说大数据team,就需要同步一个mysql库过来,对公司的业务...原创 2019-06-26 00:05:41 · 1739 阅读 · 0 评论 -
大厂原来都是这样实现分布式消息队列的高可用
1 面试题如何保证消息队列的高可用性2 考点分析高可用是必问的,因为MQ的缺点很多,导致系统可用性降低。所以只要你用了MQ,接下来问的一些要点肯定就是围绕着MQ的那些缺点怎么解决.要是你傻乎乎的就干用了一个MQ,各种问题从来没考虑过,那你就杯具了,面试官对你的印象就是,只会简单实用一些技术,没任何思考,马上对你的印象就不太好了。这样的同学招进来要是做个20k薪资以内的普通小弟还凑合。如...原创 2019-06-25 14:13:30 · 1864 阅读 · 0 评论 -
突破Java面试(40)-如何设计一个类似Dubbo的RPC框架
0 Github1 面试题如何设计一个类似Dubbo的RPC框架2 考点分析就跟问你如何设计一个MQ一样的道理,就考两个:你有没有对某个RPC框架原理有非常深入的理解你能不能从整体上来思考一下,如何设计一个rpc框架,考考你的系统设计能力3 解决方案其实一般问到你这问题,你起码不能认怂,因为这既然是面试突击教程,那不可能给你深入讲解什么kafka源码剖析,dubbo源码剖析,...原创 2019-07-09 23:47:37 · 1490 阅读 · 0 评论 -
分库分表后全局ID生成方案
1 面试题分库分表之后,id主键如何处理?2 考点分析其实这是分库分表之后你必然要面对的一个问题,就是id咋生成?要是分成多个表之后,每个表都是从1开始累加,那肯定不对啊,需要一个全局唯一的id来支持!下面来看看有哪些可行方案~3 数据库自增id分库分表的id主键问题系统每次得到一个id,都是往一个库的一个表里插入一条没什么业务含义的数据然后获取一个数据库自增id拿到该...原创 2019-07-13 15:34:12 · 1916 阅读 · 0 评论 -
阿里面试官:聊聊基于Dubbo服务治理、服务降级以及重试原理?
1 面试题如何基于dubbo进行服务治理、服务降级、失败重试以及超时重试?2 考点分析服务治理其实就是看看你有没有服务治理的思想,因为这是做过复杂微服务的人肯定会遇到的问题!服务降级涉及到复杂分布式系统中必备的一个话题,因为分布式系统互相来回调用,任何一个系统故障了,你不降级,直接就整个瘫痪了!失败重试分布式系统中网络请求如此频繁,要是因为网络问题不小心失败了一次,是不...原创 2019-07-09 17:15:04 · 1924 阅读 · 0 评论 -
Dubbo的SPI机制详解
1 面试题Dubbo中的SPI是什么?2 考点分析前面基础性的东西问完了,确定你应该了解Dubbo,那么自然问个稍微难的问题,就是SPI,先问问你这是个啥,然后问问你怎么实现的!其实就是看看你对dubbo的掌握如何3 SPI简介SPI 全称为 Service Provider Interface,是一种服务发现机制.说白了是啥呢,比如你有个接口,该接口有3个实现类,那么在系统运行时,...原创 2019-07-09 13:34:54 · 3370 阅读 · 0 评论 -
如何选型微服务架构的负载均衡算法?
1 面试题Dubbo负载均衡策略和集群容错策略都有哪些?动态代理策略呢?2 考点分析这些都是关于Dubbo必须知道,基本原理,序列化是什么协议,具体用dubbo的时候,如何负载均衡,如何高可用,如何动态代理等.就是看你对Dubbo掌握程度工作原理:服务注册,注册中心,消费者,代理通信,负载均衡网络通信、序列化:dubbo协议,长连接,NIO,hessian序列化协议负载均衡策略,集...原创 2019-07-08 21:51:35 · 1288 阅读 · 0 评论 -
1sdfsaf
1 现在常见的Java工程师/架构师对缓存技术的了解和掌握程度工作中都会用到一些缓存技术,redis/memcached基础使用,初步的集群知识我面试过的人里,能掌握到很少的缓存架构的人,屈指可数,个位数,而且都是在大公司有过类似的大型复杂系统架构经验的人2 缓存架构/技术掌握的不够,对你的发展带来了哪些阻碍?2.1 工作中如果你这块技术掌握不够,然后你的公司的项目遇到了一些相关的难题,...原创 2019-06-27 10:33:14 · 1214 阅读 · 0 评论 -
Redis Cluster集群应用与原理
1 面试题Redis集群模式的工作原理说一下?在集群模式下,key是如何寻址的?寻址都有哪些算法?了解一致性hash吗?2 考点分析Redis不断在发展-Redis cluster集群模式,可以做到在多台机器上,部署多个实例,每个实例存储一部分的数据,同时每个实例可以带上Redis从实例,自动确保说,如果Redis主实例挂了,会自动切换到redis从实例顶上来。现在新版本,大家都是用Red...原创 2019-07-08 09:24:46 · 1648 阅读 · 2 评论 -
分布式搜索引擎ElasticSearch读写数据工作流程
以下用ES表Elastic Search1 面试题ES写入/查询数据的工作原理是什么呀?2 考点分析面试官就是想看看你是否了解ES的一些基本原理.ES无非就是写/查数据,你如果不明白你发起写入/搜索请求后,ES做了什么,那你该劝退了.3 详解3.1 ES写数据的执行流程客户端选择一个node发送请求过去,该node就是coordinating node(协调节点);coor...原创 2019-06-27 04:06:54 · 1328 阅读 · 2 评论 -
消息积压&消息丢失解决方案
1 面试题如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?2 考点分析你看这问法,其实本质针对的场景,都是说,可能你的消费端出了问题,不消费了,或者消费的极其极其慢。接着就坑爹了,可能你的消息队列集群的磁盘都快写满了,都没人消费,这个时候怎么办?或者是整个这就积压了几个小时,你这个时候怎么办?或者是你积压的时间太长了,导致比...原创 2019-05-04 00:57:41 · 1388 阅读 · 2 评论