摘要:
前言 本篇文章收录于专辑:http://dwz.win/HjK 你好,我是彤哥,一个每天爬二十六层楼还不忘读源码的硬核男人。 大家都知道,数据结构与算法解决的主要问题就是“快”和“省”的问题,即如何让代码运行得更快, 如何让代码更节省存储空间。 所以,“快”和“省”是衡量一个算法非常重要的两项指标, 阅读全文
摘要:
你好,我是彤哥,技术公号主“彤哥读源码”的运营者。 其实,我刚学习Netty的时候,也是很迷茫的,直到有一天,一个同事收到了阿里的offer,他要去阿里做中台了,临走前他偷偷地告诉我,多看看Netty,特别是源码。 之后,我把市面上有关Netty的书籍和博客几乎全部看了一遍,并跟着书中的示例边看边练 阅读全文
摘要:
嘀~嘀~嘀~,生产事故,内存泄漏! 阅读全文
摘要:
本文只讲原理,不讲框架。 分布式系统中日志追踪需要考虑的几个点? 1. 需要一个全服务唯一的id,即traceId,如何保证? 2. traceId如何在服务间传递? 3. traceId如何在服务内部传递? 4. traceId如何在多线程中传递? 我们一一来解答: 1. 全服务唯一的traceI 阅读全文
摘要:
——日拱一卒,不期而至! 简介 hash是我们工作中经常听到的词,比如哈希表、哈希函数、hashCode、HashTable、HashMap等等,那么它们之间到底有怎样的爱恨情仇呢?来一起看一看吧~~ 数组 讲哈希表之前,我们先来看看数据结构的鼻祖——数组。 数组比较简单,我就不多说了,大家都会都懂 阅读全文
摘要:
——日拱一卒,不期而至! 你好,我是彤哥,本篇是netty系列的第七篇。 简介 上一章我们一起学习了Java NIO的核心组件Buffer,它通常跟Channel一起使用,但是它们在网络IO中又该如何使用呢,今天我们将一起学习另一个NIO核心组件—— Selector ,没有它可以说就干不起来网络I 阅读全文
摘要:
问题:面向对象的特征有哪些? 答:封装,继承,多态和抽象。 1. 封装 封装给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在 Java 当中,有 3 种修饰符:public,private 和 protected。每一 种修饰符给其他的位于同一个包或者不 阅读全文
摘要:
——日拱一卒,不期而至! 你好,我是彤哥,本篇是netty系列的第六篇。 简介 上一章我们一起学习了Java NIO的核心组件Channel,它可以看作是实体与实体之间的连接,而且需要与Buffer交互,这一章我们就来学习一下Buffer的特性。 概念 Buffer用于与Channel交互时使用,通 阅读全文
摘要:
你好,我是彤哥,本篇是netty系列的第五篇。 简介 上一章我们一起学习了如何使用Java原生NIO实现群聊系统,这章我们一起来看看Java NIO的核心组件之一——Channel。 思维转变 首先,我想说的最重要的一个点是,学习NIO思维一定要从BIO那种一个连接一个线程的模式转变成多个连接(Ch 阅读全文
摘要:
简介 大家好,我是彤哥,今天我想和大家再聊聊JDK源码的几个问题: 为什么要看JDK源码 JDK源码的阅读顺序 JDK源码的阅读方法 为什么要看JDK源码 一,JDK源码是其它所有源码的 基础 ,看懂了JDK源码再看其它的源码会达到事半功倍的效果。 二,JDK源码中包含大量的 数据结构 知识,是学习 阅读全文