java干货

阅读更多

一、数据库的隔离级别分哪些?

https://www.cnblogs.com/fjdingsd/p/5273008.html  数据库隔离级别包括串行,可重复读,读已提交,读未提交,在jdbc中需要设置autoCommit(false)来开启事务,然后设置setTransactionIsolation(隔离级别)

二、为什么redis没用一致性hash,选用的hash槽

首先需要了解什么是一致性hash,一致性hash就是将设备和对象映射到一个封闭的环中详细可以查看文章https://blog.csdn.net/cywosp/article/details/23397179/

三、redis怎么实现分布式锁

https://www.cnblogs.com/linjiqin/p/8003838.html

加锁的时候通过set设置锁的过期时间,并设置

String result = jedis.set(lockKey, requestId, SET_IF_NOT_EXIST, SET_WITH_EXPIRE_TIME, expireTime);

if (LOCK_SUCCESS.equals(result)) {
            return true;
        }
解锁则可以String script = "if redis.call('get', KEYS[1]) == ARGV[1] then return redis.call('del', KEYS[1]) else return 0 end";
        Object result = jedis.eval(script, Collections.singletonList(lockKey), Collections.singletonList(requestId));

        if (RELEASE_SUCCESS.equals(result)) {
            return true;
        }

四、使用mysql索引有哪些原则?索引什么数据结构,b+tree 和tree 什么区别

https://www.cnblogs.com/shijianchuzhenzhi/p/6383117.html

五、mysql有哪些存储引擎,都有什么区别

inodb . myisam,memory,merge, myisam不支持事物也不支持外键,inodb支持事物,memeory支持hash和b+tree索引

六、设计高并发系统数据库层面该怎么设计,数据库锁有哪些类型,如何实现

分库分表。https://blog.csdn.net/samjustin1/article/details/52210125  共享锁,排他锁,更新锁何时加锁加什么锁由数据库自行决定,也可以通过hint指定锁

七、数据库事物有哪些

串行,可重复读,读已提交,读未提交

八、redis和memchached什么区别,为什么单线程的redis比多线程的memchached效率要高

https://www.biaodianfu.com/redis-vs-memcached.html

九。redis有哪些数据类型,都在哪些场景下使用

string :常规的存储键值对字符串类型

Hash:多用于存储对象

List:多可用作队列

set:无序的不重复数据集合

sortSet:有序的set集合,可用作

十、rdis的主从复制是怎么实现的、redis的集群模式是怎么实现的,redis的key是如何寻址的

  https://blog.csdn.net/hechurui/article/details/49508813  主设备负责写,然后通过sync将写的命令同步至从设备,从设备负责读,来实现读写分离

集群配置则需要配置哨兵模式https://blog.csdn.net/zhanglong_longlong/article/details/78434122

十一、使用redis如何设计分布式锁,使用zk可以吗,如何实现的,这两种哪种效率更高

十二、redis的持久化,都有什么缺点和优点,具体底层怎么实现的

https://www.cnblogs.com/chenliangcl/p/7240350.html

关键命令配置,快照持久化save , ROF持久化appendfsync

十三、redis过期策略都有哪些,LRU , 写下java版本的代码

十四、dubbo支持哪些序列化协议,hessian,说一下hessian的数据结构,,pb知道吗,说一下pb效率为什么是最高的

十五、NIO,BIO,AIO都是什么,有什么区别

十六、B+,B-树区别,好处

十七、innoDB,MylSAM区别?主键索引,辅助索引

十八、kafka是否能多次消费,topic partion segment index log ?

十九、linux incode ?软连接和硬链接的区别

二十、服务注册发现的原理

二十一、线程池,四种,executorService , executor ,executors

二十二、N个数中求最大一个数,两个数,100个数

二十三、青蛙一次可以跳1级台阶,2级台阶,。。。n级台阶,求跳上N级台阶一共有几种算法

二十四、两个栈实现队列

二十五、十进制转2进制

二十六、spring cloud的主要组件和作用

二十七、spring boot starter的运行机制

二十八、zookeeper的分布式锁选取原理

你可能感兴趣的:(面试)