After reading it, I think to grasp how much (how many proficient), welcomed the comments section message.
Good start.
First, the underlying coding ability
(Use the framework to understand operating procedures, design patterns learning framework by the source, enhance the architecture and design thinking underlying coding capability.)
1, spring, springmvc, mybatis core idea, implement the principle of
2, abstract design capabilities, independent analysis, design and implementation capabilities, common design pattern
3, identify, design a common framework and a module capacity of
4, mybatis:
structure and process analysis
important object of analysis
framework read the
four major components of
a custom plug
5, the Spring:
IOC / AOP
transaction source reading
problem analysis
6, springmvc:
execution flow analysis
source code to read
the six components analysis
strategy mode, the adapter mode
7, design patterns:
the seven design principles
class 3 -23 design patterns
----------------------------------------------- ----------------
Second, the performance of massive data database
(The massive data, and to reduce database requests by caching pressure relational database;
separated by clusters, reading and writing, the sub-library sub-table, database performance optimization, etc. to enhance performance, high concurrency ensure architecture, high availability requirements.)
1, MySQL development and design, tuning, storage engine, SQL query performance optimization
2, highly available data layers, performance optimization, sub-sub-table database, database theory, large-scale database system application experience
3, analysis and design capabilities, design according to business needs reasonable data model and program integration capabilities
4, redis, memcached, mongodb technology
5, the main key-value storage systems, ES, redis system
6, the mainstream middleware cache, memcached \ redis clusters experience, distributed cache design experience
7, MySQL :
architecture, execution flow
index, lock, principle analysis transaction
performance analysis and optimization of
cluster sub-library sub-table
8, Redis:
the underlying principle / underlying application
redis clusters / news mode
9, Mongodb:
architecture, principle analysis
use cases, note
10 , elasticsearch:
full-text search
Lucene / solr / es profiling
es architectural principle and the principle
of actual cases
------------------------------- -----------------------------------------
Third, the distributed / micro-service architecture core technical capabilities
By learning about the overall design of distributed / micro-service architecture, there is a bottleneck, master the core design thinking and floor plan of the entire architecture.
1, server system design, load balancing (LVS, nginx), cold backup, the switchover, control downgrade stream
2, Nginx, Tomcat application server
3, RPC, serialization, service management
4, distributed technology architecture distributed application design, SOA software architecture, distributed technology mainstream component / framework,
NIO framework Netty, RPC invocation framework Dubbo, distributed coordination server ZooKeeper
5, service oriented architecture, SOA / service governance / ZooKeeper
6, nginx :
configuration instructions and performance tuning
advanced applications
(zero copy, multiplexers, page compression configuration)
combat
7, ZooKeeper:
Paxos algorithm, ZAB protocol
disaster recovery solution highly available cluster
Leader of the election mechanism
Watcher mechanism
Source resolve
typical applications scene parsing
8, Netty:
TCP unpacking, stick package
advanced application
source code parsing
9, Dubbo:
availability combat
service management core idea of
the source code parsing
-------------------- -------------------------------------------------
Fourth, high concurrent indispensable mainstream middleware architecture capability
As the number of users to solve the concurrent architecture evolution volume growth were needed to address a variety of architectural solutions by learning the mainstream middleware.
1, a distributed message queue (RocketMQ, Kafka), elasticsearch experience
Principles and Applications 2, the underlying middleware, distributed technology (RPC frame, caching, message system) open source components
3, high performance, high concurrency system design, distribution caching, full-text search, message queues
4, ActiveMQ, RabbitMQ, rocketmq
5, Elastic Search full-text retrieval Lucene / solr / es analysis, es architecture principles, actual cases
6, fastDFS architecture analysis, analysis of core principles
------- -------------------------------------------------- --------------------------
Fifth, high concurrency mainstream middleware architecture necessary capacity
Each phase of the study were caused by the reconstruction project architecture business needs change, which leads to technological upgrading, to learn WYSIWYG.
From the architecture to the evolution of performance tuning project, to understand the development of the Internet project, tuning and resolution process,
therefore improving the overall combat capability of large-scale projects.
1, docker / kubernetes ecological, integrated docker landing experience
2, docker command, docker container technology, docker technology framework, KVM virtualization
3, continuous integration, continuous release management processes and tools, kubernetes choreography Services Framework
4, (principles and mechanisms of implementation and practice) http protocol, search engines, cache, JVM tuning, serialized, NIO, RPC framework, message queues
5, dubbo \ springcloud architecture, principles, advantages and disadvantages, combat
6 (mechanism) distributed cache, news, common techniques for distributed reasonable application architecture to resolve the problem
7, to participate in large-scale complex distributed Internet WEB / API system design and development
8, containerized:
Docker principle and advanced combat
k8s cluster architecture principles of
high availability clustering landing combat
CI / CD combat landing
9, the electricity supplier project:
project needs analysis and project
overall architecture according to the demand to consider
the project to achieve
10, spike:
design system implementation thinking spike
spike analysis system challenges
redis queue problem solving spike spike high concurrency scenarios
Distributed Lock, redis oversold stocks queue solve the problem
11, JVM:
the principle of
memory structures
garbage collection GC log analysis and
optimization / tuning
JMM concurrent
------------------- -----------------------------------------------
Six, SOA project
1, how to split between the various communication service after
2, how to find services
3, how to solve the session distributed cluster separation and other issues
4, what is the scene for asynchronous architecture, how to design asynchronous architecture
technology: RPC framework, registry , Redis cache database, massive data at high performance programs, the MQ message queue, load balancing and so on.
---------------------------------------------------------------------------------------------------------------
Next, after landing distributed project, and then a comprehensive study by SpringCloud, micro Services Architecture remodeling project,
to build heterogeneous architectures through the message queue, by a distributed lock business in distributed transactions to ensure normal distributed solutions such plan,
implement carriers background, business management background and portal system, the completion of large Internet providers floor B2B2C of electricity,
and nginx, tomcat, JVM and other tuning by pressure measurements.
------------------------------------------------------------------
Seven, micro Services
1, the automation of how the project deployment
2, how to service governance
3, how to downgrade and fuse services
4, how to monitor services
5, how good dynamic resource scheduling to complete the framework of elastic expansion volume reduction
technology: springcloud netflux , springcloud Alibaba, distribution center, distributed lock, distributed transactions, docker, jenkins, k8s, ELK .
how about it.