# lemon-guide
![lemon-x](lemon-x.png)
收纳了 `操作系统`、`JAVA`、`算法`、`数据库`、`中间件`、`解决方案`、`架构`、`DevOps` 和 `大数据` 等技术栈总结!其内容有来源笔者个人总结的内容,也有来源于互联网各种经典场景或案例的总结(感谢对应的笔者),目的在于把常用的技术内容进行归纳整理记录。
同时提供一个微信交流群:请加笔者个人微信(`echo-lry`),备注拉群,笔者通过后,会发送邀请入群。
用最少的图文来讲解清楚每一个知识点,如果欢迎大家一起加入!
开源地址:
- Gitee:https://gitee.com/yu120/lemon-guide
- Github:https://github.com/yu120/lemon-guide
# [1 OS](OS.md)
## 1.1 TCP
![TCP状态](images/README/TCP状态.png)
收纳了网络模型、TCP三次握手、TCP四次挥手、TCP优化、常见TCP问题、Socket和TCP主要源码等知识点。
## 1.2 HTTP
![HTTP请求流程](images/README/HTTP请求流程.jpg)
收纳了HTTP缓存流程、强制缓存、协商缓存、请求流程、常见请求/响应头参数、状态码、请求方法等知识点。
## 1.3 OS
![Linux虚拟地址空间分布](images/README/Linux虚拟地址空间分布.png)
收纳了常见处理器介绍、虚拟内存、内存分段、内存分页、内存管理、进程和线程等知识点。
# [2 JAVA](JAVA.md)
## 2.1 J.U.C
![AQS](images/README/AQS.png)
收纳整理了Unsafe、LockSupport、CAS机制、AQS框架、Condition、volatile、lambda、Striped64、LongAdder、Semaphore、CyclicBarrier、CountDownLatch、CompletableFuture等知识点。
## 2.2 集合
![Java8ConcurrentHashMap结构](images/README/Java8ConcurrentHashMap结构.png)
收纳整理了List(ArrayList、LinkedList、Vector、CopyOnWriteArrayList)、Set(HashSet、TreeSet、LinkHashSet、ConcurrentSkipListSet、CopyOnWriteArraySet、ConcurrentSkipListSet)、Map(HashMap、TreeMap、HashTable、LinkHashMap、ConcurrentHashMap、ConcurrentSkipListMap)等知识点。
## 2.3 Queue
![队列类图](images/README/队列类图.png)
收纳整理了BlockingQueue(ArrayBlockingQueue、LinkedBlockingQueue、PriorityBlockingQueue、SynchronousQueue、DelayQueue)、BlockingDeque(LinkedBlockingDeque)、TransferQueue(LinkedTransferQueue)等知识点。
## 2.4 Thread
![Thread-NEW](images/README/Thread-NEW.png)
收纳整理了线程实现方式、四种创建方式、生命周期、四种JDK线程池、常用线程方法、线程安全、线程同步、多线程通信、线程协作、线程死锁、守护线程、ThreadLocal、ThreadPoolExecutor等知识点。
## 2.5 Lock
![synchronized](images/README/synchronized.jpg)
收纳整理了synchronized、ReentrantLock、ReentrantReadWriteLock、锁状态、自旋锁(SpinLock)、乐观锁/悲观锁、公平锁/非公平锁、可重入锁/不可重入锁、独占锁/共享锁、互斥锁/读写锁、锁优化(状态升级、自旋锁、所消除、锁粗化、分段锁、锁细化)等知识点。
## 2.6 I/O
![异步非阻塞IO](images/README/异步非阻塞IO.png)
收纳整理了阻塞/非阻塞IO、同步/异步IO、三种Reactor模式、Proactor模式、select/poll/epoll、BIO(同步阻塞I/O)、NIO(同步非阻塞I/O)、IO多路复用(异步阻塞I/O)、AIO(异步非阻塞I/O)、信号驱动式I/O等知识点。
## 2.7 Classloader
![Classloader](images/README/Classloader.png)
收纳整理了JVM类加载机制、类加载器、双亲委派等知识点。
## 2.8 Throwable
![Throwable](images/README/Throwable.png)
收纳整理了Error、Exception、异常处理方式等知识点。
## 2.9 JVM
![JVM内存结构(JDK1.8)](images/README/JVM内存结构(JDK1.8).png)
收纳整理了JVM常量池、JVM内存布局、JAVA内存模型(JMM)、JVM运行时内存、引用级别、OOM场景等知识点。
## 2.10 GC
![ParallelGCFullGC日志](images/README/ParallelGCFullGC日志.jpg)
收纳整理了2种寻找垃圾算法、4种清理垃圾算法、9种GC垃圾收集器、GC日志格式、GC最佳实践、FullGC场景、CMSGC场景等知识点。
# [3 Algorithm](Algorithm.md)
## 3.1 数据结构
![Stack](images/README/Stack.png)
收纳整理了常用数据结构数组(Array)、链表(Linked List)、栈(Stack)、队列(Queue)、双端队列(Deque)、树(Tree),和高级数据结构优先队列(Priority Queue)、图(Graph)、前缀树(Trie)、线段树(Segment Tree)、树状数组(Fenwick Tree)、散列表(Hash)、二叉堆等知识点。
## 3.2 算法
![SortAlgorithm](images/README/SortAlgorithm.png)
收纳整理了算法复杂度、4种算法思想,常用查找算法顺序查找、二分查找、插值查找、斐波那契查找,搜索算法深度优先搜索(DFS)、广度优先搜索(BFS)、迪杰斯特拉算法(Dijkstra)、kruskal(克鲁斯卡尔)算法,排序算法冒泡排序(Bubble Sort)、选择排序(Selection Sort)、插入排序(Insertion Sort)、希尔排序(Shell Sort)、归并排序(Merging Sort)、快速排序(Quick Sort)、基数排序(Radix Sort)、堆排序(Heap Sort)、计数排序(Counting Sort)、桶排序(Bucket Sort)等知识点。
## 3.3 设计模式
收纳整理了25种设计模式:简单工厂模式、工厂模式-Factory、抽象工厂模式-Abstract Factory、单例模式-Singleton、建造者模式-Builder、原型模式-Prototype、适配器模式-Adapter、组合模式-Composite、代理模式-Proxy、享元模式-Flywight、门面模式-Facade、桥梁模式-Bridge、修饰模式-Decorator、过滤器模式-Filter、模板方法模式-Template Method、解释器模式-Mediator、责任链模式-Chain of Responsibility、观察者模式-Observer、策略模式-Strategy、命令模式-Command、状态模式-State、访客模式-Visitor、转义模式-Interpreter、迭代器模式-Iterator、备忘录模式-Memento等知识点。
# [4 Database](Database.md)
收纳整理了数据库6种范式、9种连接方式、4种事务隔离级别、索引、SQL优化、存储引擎、MYSQL原理、MYSQL高可用方案等知识点。
## 4.1 数据库范式
收纳整理了第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)、第五范式(5NF)等知识点。
## 4.2 连接方式
![SQL所有JOIN](images/README/SQL所有JOIN.png)
收纳整理了内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)、全连接(FULL OUTER JOIN)、LEFT JOIN EXCLUDING INNER JOIN、RIGHT JOIN EXCLUDING INNER JOIN、FULL OUTER JOIN EXCLUDING INNER JOIN、CROSS JOIN、SELF JOIN等知识点。
## 4.3 事务
| 隔离级别 | 第一类丢失更新 | 第二类丢失更新 | 脏读 | 不可重复读 | 幻读 |
| ---------------------------- | -------------- | -------------- | ---- | ---------- | ---- |
| SERIALIZABLE (串行化) | × | × | × | × | × |
| REPEATABLE READ(可重复读) | × | × | × | × | √ |
| READ COMMITTED (读已提交) | × | √ | × | √ | √ |
| READ UNCOMMITTED(读未提交) | × | √ | √ | √ | √ |
收纳整理了事务特性(ACID),隔离级别Serializable(串行化)、Repeatable Read(可重复读)、Read Committed(读已提交)、Read uncommitted(读未提交)、SpringBoot Transaction等知识点。
## 4.4 索引
收纳整理了索引结构二叉树、红黑树、Hash、B-Tree、B+Tree,索引类型普通索引、复合索引、唯一索引、主键索引、全文索引等知识点。
## 4.5 MYSQL原理
JAVA2024最新资料整理,付费资源,良心推荐,别忘点个赞
需积分: 0 68 浏览量
更新于2024-01-31
收藏 562.12MB ZIP 举报
Java编程语言作为软件开发的重要工具,始终保持着极高的热度。这份名为"JAVA2024最新资料整理"的资源集合,包含了丰富的学习材料,旨在帮助Java开发者深入理解并提升技能。资源涵盖范围广泛,从基础到高级,从理论到实践,全面覆盖了Java的学习路径。
"java基础"部分,通常包括Java语法、面向对象编程概念、异常处理、集合框架等。这是每个Java开发者必须掌握的基础知识,是构建复杂应用的基石。资料可能详细解析了类、对象、接口、继承、多态等核心概念,并通过实例来演示如何在实际项目中应用。
"java进阶"内容可能涉及JVM工作原理、内存管理、性能优化等方面。深入理解JVM可以帮助开发者编写出更高效、更稳定的代码,避免常见的性能瓶颈。这部分可能会包含垃圾回收机制、类加载机制、线程同步策略等内容。
数据结构与算法是任何程序员都需要掌握的重要技能,尤其在Java中。"数据结构"部分可能会讲解数组、链表、栈、队列、树、图等经典数据结构,以及排序、查找等基本算法。熟练运用这些知识能提高程序的效率和可读性。
"分布式"部分,可能是关于分布式系统设计、分布式缓存、分布式数据库、分布式消息队列等主题。随着互联网的发展,分布式技术变得至关重要,如Apache Hadoop、Spark、Zookeeper等分布式工具的使用方法可能会被详细阐述。
"微服务"是现代软件架构的一种趋势,涉及到服务拆分、服务注册与发现、API Gateway、容错处理等。这部分资料可能介绍了Spring Cloud、Docker、Kubernetes等微服务相关技术和最佳实践。
"OS文件系统"这部分可能会介绍操作系统的基本概念,如进程管理、内存管理、文件系统,以及与Java交互的方式,如I/O流的使用。
"云原生"是近年来的热门话题,它涵盖了容器化、持续集成/持续部署(CI/CD)、DevOps文化等。这部分可能会探讨如何使用Docker和Kubernetes实现应用的容器化部署,以及如何利用GitLab CI/CD或者Jenkins实现自动化测试和发布。
至于"lemon-guide"这个文件,可能是一个指导文档或教程,具体内容需要打开查看。它可能是一个综合性的指南,贯穿整个Java学习路径,或者是对某个特定主题的深入探讨。
这份资源包对于想要提升Java技能的开发者来说是一份宝贵的财富,不仅提供了全面的知识点,还辅以图形化的解释,方便理解和记忆。同时,结合Python、Linux和微服务等标签,意味着这份资料也关注了跨技术领域的学习和实践,有助于培养全面的技术视野。不要忘记点赞支持分享这些优质资源的人,他们的付出值得肯定。
码农佩奇
- 粉丝: 1799
- 资源: 11
最新资源
- 金山PDF教育版编辑器
- 基于springboot+element的校园服务平台源代码项目包含全套技术资料.zip
- 自动化应用驱动的容器弹性管理平台解决方案
- 各种排序算法 Python 实现的源代码
- BlurAdmin 是一款使用 AngularJs + Bootstrap实现的单页管理端模版,视觉冲击极强的管理后台,各种动画效果
- 基于JSP+Servlet的网上书店系统源代码项目包含全套技术资料.zip
- GGJGJGJGGDGGDGG
- 基于SpringBoot的毕业设计选题系统源代码项目包含全套技术资料.zip
- Springboot + mybatis-plus + layui 实现的博客系统源代码全套技术资料.zip
- 智慧农场小程序源代码全套技术资料.zip