今天下午去广州番禺万博那边参加YY的面试,两个技术面试官,恰好主要面试官也是来自我现在的公司,哈哈。下面简单回忆一下面试的内容。首先是简单自我介绍,介绍了自己参与的项目情况,然后他再根据我所做的项目进行询问。
1.所做项目的业务流程
2.redis cluster集群和哨兵集群方式的优缺点
(1)哨兵集群,redis每个实例也是全量存储,每个redis存储的内容都是完整的数据,浪费内存且有木桶效应。集群的内存大小无法线性扩展。
如果主节点挂掉,则从几个从节点中选举出主节点,id越小越优先。
(2)redis cluster集群,为了最大化利用内存,可以采用集群,就是分布式存储,即每台redis存储不同的内容。
一般采用主从集群,比如3主3多,如果其中一台主挂掉,那么其他两个主就会通过选举把该挂掉的主的从节点扶正,如果不能扶正,则集群不可用。
3.SQL查询优化的方式
4.对靠左索引的理解
5.TCP建立连接三次握手和释放连接四次握手的过程
建立连接为啥要有三次握手,如果是两次握手会有啥问题。
6.分布式事务是如何做的?有哪些实现方式?
基于redis的分布式锁。
7.NIO原理?epoll原理?事件的类型?
NIO,非阻塞IO
Channel类型