线程池原理以及参数
corePoolSize:线程池中的常驻核心线程数
keepAliveTime: 多余的空闲线程的存活时间,当线程数大于corePoolSize时,keepAliveTime才会起作用,这时候,当有空闲线程,会保持一段时间的直到时间超过keepAliveTime这个时,线程终止,但是当当前线程数小于corePoolSize(核心线程数)调用allowCoreThreadTimeOut(boolean)这个方法时,keepAliveTime也会起作用直到线程数为0
unit: 就是keepAliveTime的单位,七种单位:纳秒、毫秒、微秒、秒、分、时、天
workQueue:阻塞队列,当线程数大于corePoolSize这个值时,任务会进入阻塞队列等待线程池中的空闲线程来执行
threadFactory:线程工厂,主要来创建线程的
handler:表示拒绝处理任务时的策略
参考文档
3,jvm内存模型有没有了解过。
答:
方法区:存放类和静态资源
堆:存放对象
栈:存放局部变量
4,垃圾回收机制有没有了解过?
答:
分代机制,年轻代,老年代,永久代
5,spring原理
答:ioc控制反转和依赖注入
6,数据库优化有没有做过
答:
通常是对索引进行优化
7,有哪些条件会导致索引失效
答:
(1)like查询是以%开头(2)对索引使用函数(3)联合索引违反最左原则
8,hashmap数据结构有了解么?
答:
数组+链表结构,java8增加了红黑树
9,数据存到redis这么进行长期的存放
10,Rdb或aof的方式
11,如果用户量大存储信息多,redis怎么部署
12,String和StringBuilder的区别
13,String类为什么是不可变类
缓存,安全,同步和性能,
14,Hashmap的实现
15,Kafka有哪些性能优化
分布式环境下怎么生成唯一的id 分布式工具类Snowflake
16,
17,幂等性
18,网上钱包怎么设计保证资金安全和用户体验
线上访问一个请求响应很慢,你怎么排查?
Nginx的配置?怎么实现负载均衡和请求地址的传递?
Nio和io的区别?
服务器ps -ef | grep java进程挂掉了,你怎么排查?
Dubbo的原理工作流程?
Redis相关的数据结构?命令?
Kafka相关的东西?
对oracle和mysql的区别?
Mysql的索引的向左原则?