JDK collections
- collections of common use, the differences between them, such as ArrayList, the Vector, HashSet, the HashTable, TreeSet, HashMap, ConcurrentHashMap
- HashMap, ConcurrentHashMap principle
using the basic method of the various queues, such as -: LinkedBlockQueue
Multi-threaded programming
- use Thread, Runnable is used, thread exception handler
- use jdk own thread pool and basic principle: ThreadPoolExecutor, the Feature, a Callable
- ThreadLocal use: ThreadPoolExecutor
Concurrency Control:
- Tools (synchronized, ReentrantLock, Lock Interface) common implementation jdk Concurrency Control
- pessimistic locking, optimistic locking concept
- how optimistic locking
- distributed lock concept and how to implement
- CAS ideas
- volatile keyword
- the principle of locks
- how to find and solve deadlock
Database:
- common optimization method index
- how to optimize mysql
- mysql lock that may arise
- transactional relational database
- the index of the basic principles
the Spring:
- Dependency Injection (DI) how to achieve
- aop use and implementation principles (jdk own, cglib, javaassist, etc.)
- What are the benefits of DI and AOP
- spring annotation transaction implementation principle
23 design patterns
factory, a single embodiment, the chain of responsibility, adapters, and other dynamic proxy design pattern method
SpringMVC
- internal processes / principles
RPC
three aspects concurrency model, network protocol, to understand the sequence of protocols
such as: dubbo, thrift
Middleware
applications, how to use
- Redis
- ZooKeeper
- rocketmq (or other mq)
linux related
text editor (vim), file operations (tail, cat, grep, pwdx , awk, ls, cp, mv, scp), the process operation (top, ps, kill), network operation (lsof, netstat, ifconfig)
Class loading mechanism
Java Virtual Machine
read: <-depth understanding of the Java Virtual Machine>
jdk common tools
jstat, jmap, jhat, jstack etc.
Domain Driven Design (DDD)
generally is that these
if used to do business, domain-driven design requires a deep understanding this
Reproduced in: https: //my.oschina.net/mengzhang6/blog/1843716