面试拿到题目先进行思考,然后再去求帮助。
- Mysql优化 (1)
- qq授权登录
- 支付宝第三方接口问题
- ActiveMQ基本相关使用
- LCN框架解决分布式事务问题
- Spring,SpringBoot,SpringCloud微服务框架相关问题
- Mysql主从复制,Mycat读写分离
- nginx负载均衡
- redis相关操作。
- 大学计算机系必修课
- restful规范性
- mysql优化方面
- 死锁
- 解决脏读问题
- list相关
- 分布式锁问题
- linux版本
- mq和其他区别 down机问题
- springboot新特性、执行顺序问题。
- redis
- nginx相关
- 多线程各种问题,详细讲解synchronized与lock,join
- 分布式锁问题,各种锁问题啊, 2pc 3pc tcc 相关概念。
- 10亿的表应该怎么分表分库做检索让查询速度快起来
- 秒杀系统如何防止超载,具体如何设计优化
- 单链表与双向链表
指针单向指引,指针双向指引。 - mysql索引中 主键索引,唯一索引有什么区别
- 主键索引是一种约束,保证数据的完整性
- 主键索引不能为空,但是唯一可以为空
- 一个表里只能有一个主键索引,但是可以有多个唯一索引
- 索引中int类型为什么比字符串类型快(hash,btree)
其实索引的快和慢跟索引类型有关,hash索引由于结构的特殊性,可以一次性定位索引位置,所以非常快。 而btree索引需要从根节点到枝节点再到叶节点,这样IO的访问次数多了,自然然而就慢了。 - Mycat内部实现原理
- Mybatis内部分页原理、自增长
https://www.exception.site/java-interview/java-interview-index
mybatis基础
使用useGeneratedKeys + keyproperty 来实现自增长。 - mybatis一二级缓存
参考
一级缓存作用域是sqlsession级别的,二级缓存其作用域是mapper的同一个namespace,在对象中用hashmap来存储数据的,但是不同的hashmap是互不干扰的。
Mybatis默认开启一级缓存。
二级缓存需要配置。
分布式缓存用ehcache等第三方框架。 - 阻塞队列和非阻塞队列区别
- Nginx服务器上的Master和Worker 默认值是多少,为什么设置成这个
Master:1 , Worker: 多个,一般而言可以设置成cpu核数大小,目的是为了减少IO操作,因为多个cpu可以并行执行多个进程。 - HashMap默认内存值是多少(16),为什么是这个?可以是其他的值吗
太大了浪费空间,太小了容易发生碰撞。
https://yikun.github.io/2015/04/01/Java-HashMap%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86%E5%8F%8A%E5%AE%9E%E7%8E%B0/ - aop具体实现原理?cglib动态代理与jdk动态代理区别?
cglib动态代理来实现的。需要引入第三方jar包
cglib动态代理采用asm开源包,通过修改字节码的方式来生成子类进行代理。
jdk动态代理通过反射+拦截,然后生成一个实现代理接口的一个匿名类,然后在具体调用方法前调用InvokeHandler来进行处理。jdk自带的。 - 开发环境与正式环境 jar包问题