高密微网站建设,福步外贸论坛网官网,网站建设与制作过程,该网站为悬挂备案号今天去面试了一个26岁的程序员#xff0c;看了简历#xff0c;2年经验#xff0c;本科#xff0c;写得很牛叉。
Spring cloud alibaba全家桶、redis#xff0c;分布式锁#xff0c;服务调用#xff0c;数据库事务#xff0c;线程#xff0c;Zookeeper、Dubbo 、Rabbi…今天去面试了一个26岁的程序员看了简历2年经验本科写得很牛叉。
Spring cloud alibaba全家桶、redis分布式锁服务调用数据库事务线程Zookeeper、Dubbo 、RabbitMQKafka 都懂。
做的项目也是这类微服务的内容有关。
我同事做算法的算法工程师说你问几个简单的我说他写得那么牛我不问深一点貌似对不起自己。
以我过往的经验把自己写得很牛×的人大部分都是一知半解的人所以凡事还是从细节来把握看看真实水平如何。 1、简述HashMap的数据结构
他基本就答不上来。 在JDK 7和以下它是一个数组链表结构。JDK8和以后它是一个数组链表or红黑树结构当链表深度达到8以上之后就会构建红黑树而红黑树达到深度6后就会进行重构。 首先先计算key的hashcode然后确定在数组的位置然后在把元素连接到链表或者红黑树中。 HashMap加载因子是0.75默认容量是16,当满足16*0.7512时就进行重构HashMap结构这个时候就会比较消耗时间了。所以我们应该尽可能避免这样的事情发生尽可能第一次分配好空间以避免重构。 2、HashMap和ConcurrentHashMap的区别是什么
他也几乎没有反应把他问蒙了。 HashMap不是线程安全的而ConcurrentHashMap是线程安全的只是它的加锁范围较小适合在高并发下使用。 ConcurrentHashMap是一个线程安全的MapJDK8之前它的内部在默认的情况下拆分为16个segment类似HashMap结构之后是红黑树允许使用CAS乐观锁针对某个区域JDK8之前的segment加锁其他的不加锁所以是一个局部加锁的机制提高并发能力。 3、Feign进行服务调用为什么给出服务名称就能调用Feign是如何获取服务清单的
他回答服务注册给服务治理中心服务治理中心再告知服务实例。 基本又错了。首先服务在启动时都注册给服务治理中心服务治理中心会根据服务名称维护一份服务清单每个服务节点都要定时续约向服务治理中心请求告诉服务治理中心我还活着不能按要求完成续约的就被服务治理中心剔除。而某个服务节点每隔一段时间一般是几秒钟都会向服务治理中心拉去最新服务实例清单这个过程叫做服务获取然后缓存本地副本提供给Feign客户端调用时使用。 ps:本来我还想问断路器的我看他肯定又不知道还是算了。 4、数据库事务隔离级别有哪些会产生哪些问题呢
这个他比较好能回答。 未提交读脏读 读写提交不可重读 可重复读缓读 串行化克服所有的问题 我在问一般情况下采用那个级别就够了
他回答可重复读。 我说错了一般来说我们会采用读写提交。 5、Spring AOP是通过动态代理模式来完成的你能告诉我有哪些通知执行的顺序是怎么样的吗
他只能告诉我有哪些通知包括前置通知、后置通知、环绕通知、事后通知返回通知和异常通知。顺序他搞不清楚了。 AOP执行顺序前置通知、目标方法环绕通知如果发生异常执行异常通知如果没有发生异常执行返回通知最后执行事后通知。 其实和我的预测差不多把简历进行包装只要面试官认真问些细节的问题就要露馅了。
我同事问的算法题他也不太懂估计要把他给PASS了。