Programming basics (master)
JAVA syntax
Java Basics
JVM
- Class loading mechanism
- Bytecode execution mechanism
- JVM memory model
- GC garbage collection
- JVM performance monitoring and fault location
- JVM Tuning
Multi-threaded
- The basics of concurrent programming
- Thread pool
- Lock
- Concurrent container
- Atomic class
- JUC concurrency tool class
Data structureand algorithm
Data structure
- String
- Array
- Link List
- Heap, stack, queue
- Binary Tree
- Hash
- picture
algorithm
- Sort
- Find
- greedy
- Dividing
- Dynamic planning
- Backtracking
Computer network
- ARP protocol
- IP, ICMP protocol
- TCP, UDP protocols
- DNS, HTTP/HTTPS protocols
- Session/Cookie
MySQL database
- Writing SQL statements
- Optimization of SQL statements
- Transaction, isolation level
- index
- Lock
operating system
- Processes, threads
- Concurrency, lock
- Memory management and scheduling
- I/O Principle
Design Pattern
- Single case
- factory
- acting
- Strategy
- Template method
- Observer
- adapter
- Chain of responsibility
- Builder
R&D tools
Integrated development environment
- Eclipse
- Intellij IDEA
- VSCode
LinuxSystem (understand)
- Commonly used commands
- Shell scripts
project management/Build Tools (Master)
- Maven
- Gradle
Code Management Tools (Learn)
- SVN
- Git
Application framework
rear end
Spring Family Framework (Master, 2-3month)
-
Spring
- IoC
- AOP
- SpringMVC
-
Spring Boot
- Automatic configuration, out of the box
- Integrate the web
- Integrate database (transaction issues)
- Integration permissions
- Shiro
- Spring Security
- Integrate various middleware
- Redis, MQ, RPC framework, NIO framework
Server Framework
- Web Server
- Nginx (Important)
- Application Server
- Tomcat
- Jetty
- Undertow (better performance)
Middleware (to deal with high concurrency and large capacity)
- cache
-
Redis(Master, Important, 2week)
- Book: "Redis Design and Practice"
- 5 basic data types
- Transactions
- pipeline
- Persistence
- Cluster
-
Redis(Master, Important, 2week)
- Message queue (just learn one)
- RocketMQ
- RabbitMQ
- Kafka (Big Data)
- RPC framework
- Dubbo
- gRPC
- Thrift
- Spring Cloud
- Netty
- Database Framework
-
ORM layer framework(master)
- Mybatis
- Hibernate
- JPA
-
Connection pool(master)
- Druid
- HikariCP
- C3P0
- Library and table
- MyCAT
- Sharding-JDBC
- Sharding-Sphere
-
ORM layer framework(master)
- Search Engines (Learn)
- ElasticSearch
- Solr
- Distributed/Microservices (understand, 2-3week)
- Service Discovery/Register
- Eureka
- Consul
- Zookeeper (Important)
- Nacos
- Gateway
- Zuul
- Gateway
- Service call (load balancing)
- Ribbon
- Feign
- Fuse/Downgrade
- Hystrix
- Configuration Center
- Config
- Apollo
- Nacos
- Authentication and authentication (slightly important)
- Spring Security
- OAuth2
- SSO single sign-on
- Distributed transactions
- JTA interface-Atomikos component
- 2PC、3PC
- XA mode
- TCC mode—tcc-transaction, ByteTCC, EasyTransaction, SeaTa
- SAGA mode—ServiceComb, Seata
- LCN mode—tx-Icn
- Task Scheduling
- Quartz
- Elastic-Job
- Link tracking and monitoring
- Zipkin
- Sleuth
- Skywalking
- Log Analysis and Monitoring—ELK
- ElasticSearch
- Logstash
- Kibana
- Service Discovery/Register
- Virtualization/Containerization
- Containerization - Docker
- Container orchestration technology - Kubernetes, Swarm
Front-end (understand)
- Basic package (a general understanding, 2-3 days)
- Three major items
- HTML
- JavaScript
- CSS
- Basic library
- jQuery
- Ajax
- Three major items
- Template frame
- JSP/JSTL (Obsolete)
- Thymeleaf
- FreeMarker
- Componentized framework
- Vue
- React
- Angular
Operation and maintenance knowledge (configuration)
- Web Server
- Nginx
- Application Server
- Tomcat
- Jetty
- Undertow
- CDN acceleration
- Continuous Integration/Continuous Deployment
- Jenkins
- Code quality check
- sonar
- Log collection and analysis
- ELK
The Road to God
- Tearing the source code with bare hands
- Making wheels barefoot
- Depth adjustment with eyes closed
- Beat the interviewer