05 2022 档案
摘要:java对象头之MarkWord 直接引用openjdk的cpp源码注释 // The markOop describes the header of an object. // // Note that the mark is not a real oop but just a word. //
阅读全文
摘要:reactor=多路复用+线程池 抽象出组件,符合单一职责设计模式 reactor组件负责亲请求接收和分发 1 单reactor单线程模型 特点 一个reactor负责接收连接和读写请求,分发他们 一个handler线程负责所有读写请求的处理 1.1 reactor组件 package debug.
阅读全文
摘要:前言 操作系统而言 1 多路复用就是os提供了系统调用,能一次性知道多个fd的状态 2 不同的操作系统类型有不同的实现方式,实现方式即使是轮询也是发生在kernel中,其效率肯定远远大于在内核外的轮询 select 数组容量限制fd数量的无差别轮询O(N) 发生内存拷贝 poll 没有fd数量限制的
阅读全文
摘要:我的理解 网络模型属于应用的编码实现,一种范式,其根基一定是os内核针对tcp/ip协议栈的支持 上层使用的需求推进着底层的支持力度,底层支持方式作用着上层的使用形式 同步IO-应用程序自己去解决数据读取的过层,应用过程既关注过程,也关注结果 异步IO-应用程序向内核发送数据读取的需求,过程由os操
阅读全文
摘要:跟网络相关的概念比较多,而且特点都是看不见摸不着,无法形成具象 这个文档就是针对概念记录具体的跟踪过程 一 TCP握手/挥手 1 服务端代码 package debug.io.bio.server; import java.io.BufferedReader; import java.io.IOEx
阅读全文
摘要:一 Demo . ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ └── alibaba │ │ │ └── dubbo │ │ │ └── demo │ │ │ └── spi │ │ │ └── jdk │ │ │ ├── JdkSpiCl
阅读全文
摘要:parse url demo // UrlUtilsTest.java @Test public void test00(){ /** * 往map中添点配置信息 * - application->native-provider * - qos.port=22222 * - path->com.al
阅读全文
摘要:一 类图 二 field 必赋值的域 | | ApplicationConfig | ModuleConfig | RegistryConfig | ProtocolConfig | MethodConfig | ProviderConfig | | | | | | | | | | name | ✔
阅读全文
摘要:开篇明确阅读源码需要解决的疑问,带着问题驱动源码的阅读 版本 为了尽可能减少源码阅读代价,选用2.6.x版本 源码地址 Apache源码或者我Fork的分支study-2.6.x带注释 架构图 Demo . ├── dubbo-demo │ ├── dubbo-demo-api // 接口 │ ├─
阅读全文
摘要:解决了什么问题 A thread-safe variant of ArrayList in which all mutative operations (add, set, and so on) 引用CopyOnWriteArrayList的doc就是解决了ArrayList并发场景下对容器的修改安
阅读全文