java大厂面试题和解题思路-创新互联

这篇文章给大家分享的是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大厂面试题和解题思路就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站栏目:java大厂面试题和解题思路-创新互联
转载注明:http://ybzwz.com/article/cegjjo.html