Way to Architect
前言
Java语言
Java关键字
Java中四种修饰符的限制范围
static和final
集合
一个ArrayList在循环过程中删除,会不会出问题,为什么?
HashMap
给出场景,问数据结构?
线程
ThreadLocal
ThreadLocal之父子线程传值
InheritableThreadLocal
线程中断的理解
线程状态
线程池类型及工作原理
同步与锁
synchronize关键字
Lock及实现类
volatile关键字
各种锁的概念
CAS的理解
fork/join的理解
异常
异常体系及为什么要有这种异常设计
多catch的执行情况
try catch finally 与reture
IO
注解
反射
流程控制
JVM
JVM内存结构
Java内存模型
类文件结构
类初始化顺序
类加载机制
垃圾回收算法
垃圾收集器
四种引用类型区别及何时回收
逃逸分析
JVM常用配置
GC日志分析
面向对象
Object类中的方法
值传递还是引用传递?
接口和抽象类的区别
关于字符串
序列化
Java序列化的方式有哪些?
新特性
流的概念、优势及使用
常见方法的理解
hashCode()与equal()
Integer.parseInt()与Interger.valueof()
SPI
SPI是什么
字节码
javaagent
Go语言
算法
准备思路
基本排序
高级排序
树
框架或工具
Spring
@transactional注解在什么情况下会失效
AOP动态代理的两种方式,以及区别
Spring中定时任务的原理
Spring中的设计模式
Spring如何维护beans
IOC的理解
SpringMVC
Controller是如何将参数和前端传来的数据一一对应的
请求处理流程
Zookeeper
Zookeeper是什么
Zookeeper能干啥
Shiro
druid
Netty
数据库
MySQL
基本配置
SQL语句调优
索引
分组内排序
Redis
Hbase
OpenTSDB
rrd
MongoDB
连接池
系统设计
一致性Hash算法
版本控制
Git
Git常用命令
场景命令
Svn
计算机操作系统
Linux
常用命令
查看日志
权限管理
登录或传输
防火墙
配置ssh免密
进程
防火墙
Shell脚本
Mac
计算机基础
进制
Java中的位运算
网络
TCP三次握手和四次挥手
设计模式
设计模式概述
创建型
单例模式
工厂模式
建造者模式
原型模式
享元模式
行为型
观察者模式
策略模式
模板模式
责任链模式
命令模式
外观模式
迭代器模式
中介者模式
中介模式续
状态模式
状态模式实例
状态模式思考
访问者模式
访问者实例1
访问者模式续
结构型
组合模式
组合模式续
装饰模式
装饰模式续
代理模式
备忘录模式
桥接模式
桥接模式实例一
构建工具
Maven
常用命令
Maven生命周期
Maven中的变量和属性
不同环境的如何配置不同的变量
常用插件及配置
其他问题
dependencies与dependencyManagement的区别
Gradle
大数据
Hadoop
Storm
Spark
服务器
Tomcat
Tomcat配置
让Tomcat支持Maven远程部署
一些小技巧
Tomcat类加载机制分析
Nginx
常用命令
基本配置
Lua
Tengine
中间件
任务调度
为什么需要任务调度
消息队列
为什么需要消息队列
消息队列关键点
不同消息队列产品对比
RobbitMQ
RocketMQ
Kafka
分布式事务
什么是分布式事务
解决方案
服务治理
Dubbo
分布式锁
如何设计分布式锁
基于zookeeper
基于Redis
Web开发
Http请求类型及区别
常见的content-type
如何处理跨域
Restful最佳实践
Powered by
GitBook
类文件结构
类文件结构
results matching "
"
No results matching "
"