Skip to content

dongyun624/JAVA-000

 
 

Repository files navigation

毕业项目 对下列技术的关键点思考和经验认识:

1)JVM: https://github.com/dongyun624/JAVA-000/tree/main/Week_01。JVM 这部门学习了JVM各种GC算法,已经GC算法的使用场景、搭配使用情况。掌握了GC算法适合于什么样的场景,及查看GC日志等。

2)NIO:学习了阻塞IO/非阻塞IO, TCP三次握手四次握手。通过压测对比发现netty高性能,学习了netty高性能的设计。这块学的偏差,后续仍需继续学习;

  1. 并发编程:https://github.com/dongyun624/JAVA-000/tree/main/Week_04

4)Spring 和 ORM 等框架:学习了 Spring Bean生命周期、SpringBoot主动装配、约定大于配置、嵌入式容器,自定义封装starter,以及IOC 和 AOP;

5)MySQL 数据库和 SQL:学习了MySql的发展历史和整体架构,学习了mysql的索引设计。学习了mysql的MVCC,搭建mysql主从环境;

  1. 分库分表:学习了水平分库分表和垂直分库分表,学习了使用插件ShardingSphere 进行分库分表。学习了分布式事务,tcc,已经使用插件ShardingSphere 和 Seata 实现分布式的几种场景。

7)RPC 和微服务:学习了由微服务的由来(可以由水平分库分表来)。学习了RPC的基本原理。学习了微服务的几个关键组成部分,服务注册发现、负载均衡、限流、降级、熔断等。

  1. 分布式缓存:学习了redis的8种数据结构以及使用场景,学会了搭建redis哨兵和redis集群。学会了使用lua脚本实现redis分布式锁,保证了分布式锁的原子性。学会了使用redis的发布订阅功能,并用代码实现;学习了redis的8种数据结构的高性能设计及使用。

  2. 分布式消息队列:学习了activeMQ的整体架构,学习了kafka单节点和集群的搭建。学习了MQ的topic 和 queue的两种实现方式并用代码实现。学习了三代MQ的发展及特点。学习了MQ 的事务、幂等、几种消息发送方式。 

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%