百度java社招面试题_百度java社招面试题和解题思路!

一、redis分布式锁如何保证原子性?mysql

能够了解下这个命令: set key value [EX seconds] [PX mlliseconds] [NX)XX]redis

二、用过ThreadLocal吗 ?简单说一下?

ThreadLocal采用的是以空间换时间的方式,为每一个线程提供一份变量副本。 每个线程均可以独立的改变本身的副本。具体例子能够本身去网上找。算法

三、Java8之 后的ConcurrentHashMap,舍弃分段锁

经过JDK的源码和官方文档看来,他们认为的弃用分段锁的缘由由如下凡点:加入多个分段锁浪费内存空间。生产环境中,map在放入时竞争同一个锁的几率很是小,分段锁反而会形成更新等操做的长时间等待。为了提升GC的效率。sql

四、介绍下cms收集器

CMS收集器是老年代收集器,能够配合新生代的Seria和ParNew收集器一块儿使用。使用的是标记清除算法,容易产生内存碎片。数据库

4个步骤: 1.初始标记--并发标记--从新标记--并发清除( 初始标记、从新标记)仍需STW。但初始标记仅仅只标记了一下GC Roots能直接关联到的对象,速度很快。而从新标记则是修正并发标记期间因用户程序继续运行而致使标记产生变更的那一部分对象的标记记录,虽然通常比初始标记阶段稍长,但要远小于并发标记时间。缓存

五、redis缓存与数据库一致性问题 ?

一致性问题主要出如今数据更新的时候,一般在更新时采起删除缓存而不是更新缓存。具体一点?先淘汰缓存,再写数据库。由于若是先写数据库可能出现若是有读请求发生,可能致使旧数据入缓存,引起数据不一致。并发

六、dubbo有 哪几种负载均衡策略?

RandomL oadBalance:按权重随机调用,这种方式是dubb默认的负载均衡策略

RoundRobinL oadBalance :轮询,按公约后的权重设置轮询比率

L eastActivel oadBalance :最少活跃次数

ConsistentHashLoadBalance :一致性hash

自定义负载均衡策略

七、介绍下一 致性hash ?

先说下普通hash有机器宕机或者新加机器的后果。而后介绍一致性hash,hash值是个整数非负数值,全部的hash值造成一一个闭圆环对集群的的节点的某个属性求hash值,放到环 上.数据key求hash值,也放到环上。数据的hash值按顺时针找到离它最近的节点,放在该节点上。负载均衡

八、介绍下mysql的回表和覆盖索引?

回表简单来讲就是数据库根据索引(非主键)找到了指定记录所在行后, 还须要根据主键再次到数据库里获取数据。若是一个索引包含(或要盖)全部须要查询的字段的值,称为覆盖索引。即只需扫描索引而无须回表。dom

九、说下模板方法模式?

所谓模版方式模式:把不变的行为搬到超类,去除子类中重复的代码来体现他的优点;当不变的和可变的行为在子类实现中混合在一块儿的时候,不变的行为就会在子类中重复实现,咱们经过模板方法模式把这些行为搬移到单一的地方,这样就能够帮助子类摆脱重复不变行为的纠缠。分布式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值