java大厂面试题和解题思路

发布时间:2020-06-08 11:33:09 作者:Leah
来源:亿速云 阅读:209

这篇文章给大家分享的是java大厂面试题和解题思路。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

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

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

2、用过ThreadLocal吗 ?简单说一下?
ThreadLocal采用的是以空间换时间的方式,为每个线程提供一份变量副本。 每一个线程都可以独立的改变自己的副本。具体例子可以自己去网上找。

3、Java8之 后的ConcurrentHashMap,舍弃分段锁
通过JDK的源码和官方文档看来,他们认为的弃用分段锁的原因由以下凡点:加入多个分段锁浪费内存空间。生产环境中,map在放入时竞争同一个锁的概率非常小,分段锁反而会造成更新等操作的长时间等待。为了提高GC的效率。

4、介绍下cms收集器
CMS收集器是老年代收集器,可以配合新生代的Seria和ParNew收集器一起使用。使用的是标记清除算法,容易产生内存碎片。

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

5、redis缓存与数据库一致性问题 ?
一致性问题主要出现在数据更新的时候,通常在更新时采取删除缓存而不是更新缓存。具体一点?先淘汰缓存,再写数据库。因为如果先写数据库可能出现如果有读请求发生,可能导致旧数据入缓存,引发数据不一致。

6、dubbo有 哪几种负载均衡策略?
RandomL oadBalance:按权重随机调用,这种方式是dubb默认的负载均衡策略
RoundRobinL oadBalance :轮询,按公约后的权重设置轮询比率
L eastActivel oadBalance :最少活跃次数
ConsistentHashLoadBalance :一致性hash
自定义负载均衡策略
7、介绍下一 致性hash ?
先说下普通hash有机器宕机或者新加机器的后果。然后介绍一致性hash,hash值是个整数非负数值,所有的hash值形成一一个闭圆环对集群的的节点的某个属性求hash值,放到环 上.数据key求hash值,也放到环上。数据的hash值按顺时针找到离它最近的节点,放在该节点上。

8、介绍下mysql的回表和覆盖索引?
回表简单来说就是数据库根据索引(非主键)找到了指定记录所在行后, 还需要根据主键再次到数据库里获取数据。如果一个索引包含(或要盖)所有需要查询的字段的值,称为覆盖索引。即只需扫描索引而无须回表。

9、说下模板方法模式?
所谓模版方式模式:把不变的行为搬到超类,去除子类中重复的代码来体现他的优势;当不变的和可变的行为在子类实现中混合在一起的时候,不变的行为就会在子类中重复实现,我们通过模板方法模式把这些行为搬移到单一的地方,这样就可以帮助子类摆脱重复不变行为的纠缠。

关于java大厂面试题和解题思路就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. DataPipeline的常见问题和解题思路
  2. Android常见面试题和解题思路

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java java面试题 ava

上一篇:操作MySQL表相关要义总结

下一篇:云计算的发展趋势如何

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》