新書推薦:
《
中国王朝内争实录:宠位厮杀
》
售價:HK$
61.6
《
凡事发生皆有利于我(这是一本读了之后会让人运气变好的书”治愈无数读者的心理自助经典)
》
售價:HK$
44.6
《
未来特工局
》
售價:HK$
55.8
《
高术莫用(十周年纪念版 逝去的武林续篇 薛颠传世之作 武学尊师李仲轩家世 凸显京津地区一支世家的百年沉浮)
》
售價:HK$
54.9
《
英国简史(刘金源教授作品)
》
售價:HK$
98.6
《
便宜货:廉价商品与美国消费社会的形成
》
售價:HK$
77.3
《
读书是一辈子的事(2024年新版)
》
售價:HK$
77.3
《
乐道文库·什么是秦汉史
》
售價:HK$
80.6
|
編輯推薦: |
此书通过对当前*流行的DB中间件MyBatis、消息中间件(RocketMQ)以及RPC框架(Dubbo)的源码分析,阐述了各种设计和编程思想,让读者在咀嚼之后有自己的领悟,并能触类旁通,对微服务、弹性架构、分布式、通信协议、消息等有更深入的理解,化有形的开源框架于无形的高层次抽象。
|
內容簡介: |
本书从Java常用的三个框架入手,对MyBatis、Dubbo、RocketMQ的代码进行了深入解读,让读者可以从框架设计到实现细节上全面了解Java代码,并引领读者深入探索代码中的设计细节及架构模型。
本书分为3章:第1章为数据层主流框架MyBatis学习指南,解读MyBatis框架中关于接口层和配置文件解析过程;第2章为微服务Dubbo通信解密,阐述微服务Dubbo通信架构高扩展性架构设计原理,深度剖析Netty通信方式、Mina通信方式、Grizzly通信方式等;第3章为RocketMQ代码探索实践,详细解读RocketMQ架构原理、消息投递原理、消息消费原理、Broker服务注册与发现、消息存储原理和事务消息原理,本书每章均配有重要知识点串讲视频。
本书适合Java从业人员阅读,可以帮助他们深入理解Java代码及核心框架,同时也适合对编译器感兴趣的读者阅读,使其真正掌握将编译器相关的理论知识应用到开发实践中的方法。
|
目錄:
|
前言
●第1章数据层主流框架MyBatis学习指南
1.1接口层
1.1.1SqlSession接口
1.1.2SqlSessionFactoryBuilder类
1.1.3SqlSessionFactory接口
1.1.4DefaultSqlSessionFactory类
1.1.5DefaultSqlSession类
1.1.6SqlSessionManager
1.2配置解析
1.2.1MyBatis初始化
1.2.2SqlSessionFactoryBuilder
1.2.3BaseBuilder
1.2.4XMLConfigBuilder
1.2.5XMLMapperBuilder
1.2.6XMLStatementBuilder
1.2.7绑定Mapper 接口
1.2.8处理incomplete*的节点
●第2章微服务Dubbo通信解密
2.1Netty通信方式解密
2.1.1功能设计
2.1.2服务端设计
2.1.3客户端设计
2.2Mina通信方式解密
2.2.1功能设计
2.2.2服务端设计
2.2.3客户端设计
2.3Grizzly通信方式解密
2.3.1功能设计
2.3.2服务端设计
2.3.3客户端设计
2.4总结
●第3章RocketMQ代码探索实践
3.1RocketMQ架构原理
3.1.1为什么要使用消息中间件
3.1.2要使用哪个消息中间件
3.1.3RocketMQ基本认识
3.1.4RocketMQ应用场景
3.1.5消息发送模型
3.1.6消息消费模型
3.1.7RocketMQ组件原理
3.2消息投递原理详解
3.2.1消息投递模型
3.2.2消息投递流程
3.2.3消息路由
3.2.4消息负载均衡
3.2.5顺序消息
3.2.6延迟消息
3.2.7容错策略
3.2.8发送失败重试
3.3消息消费原理详解
3.3.1消息接收模型
3.3.2消息接收流程
3.3.3消费者Rebalance
3.3.4消息失败重试
3.3.5消息重新投递
3.4Broker服务注册与发现
3.4.1NameServer介绍
3.4.2为什么要使用NameServer
3.4.3如何保证数据的最终一致
3.4.4NameServer选择策略
3.5消息存储原理
3.5.1RocketMQ存储整体架构
3.5.2Mmap与PageCache
3.5.3RocketMQ存储优化技术
3.5.4存储模型与封装类
3.5.5刷盘的主要过程
3.5.6Broker消息处理
3.6事务消息原理
3.6.1RocketMQ事务消息
3.6.2如何使用事务消息
3.6.3事务消息发送详情
3.6.4事务消息回查
|
內容試閱:
|
阅读优秀的源代码是软件工程师提高自身编程能力和学习开源框架的最佳手段之一。
有许多大师写出过无数伟大的代码,后来者通过学习他们的编程技巧和技术风格,完成自己的作品,是一件非常值得且有意义的事情。都说读书有三境界,Java源码解读亦如此。
第一层境界:昨夜西风凋碧树。独上高楼,望尽天涯路。如果想做个有思想的程序员,成为一个有探索精神的码农和一个有创新精神的后浪。首先要有执着的追求,善于登高望远、瞰察路径,在源码中寻找明确目标与方向。
第二层境界:衣带渐宽终不悔,为伊消得人憔悴。通达框架的原理,不是轻而易举、随便可得的,一定是经过自己的努力和勤奋,最后才能收获成功。与编程一样,阅读别人的源代码永远不是一件轻松的事,或者说,是一件困难的事情,需要持续地投入、阅读、研究和实践。本书将引领读者去探索MyBatis、Dubbo、RocketMQ这三个框架的源码,教会读者如何阅读源码,让读者少走弯路。
第三层境界:众里寻他千百度。蓦然回首,那人却在,灯火阑珊处。要达到第三境界,必须有专注的精神,努力去反复追寻、研究源码,工具和方法永远不是最重要的,在阅读源码遇到困难和看不明白的时候,需要咬牙坚持,抽丝剥茧,逐个击破。
本书精心选取了MyBatis、Dubbo、RocketMQ这3个当前使用频率很高的Java框架,详细分析其底层的设计逻辑,深入解读其设计技巧及架构思想,从源码分析的角度带领读者认识这些优秀的框架是如何产生的,使读者的编程技巧及能力得到提升。
通过阅读本书,读者能在冰冷的二进制世界里找到一张地图或一座灯塔,然后去解释和还原这个底层世界中每一个细微方面的语义,重建出高层次的抽象概念和关系。
|
|