新書推薦:
《
孤独传:一种现代情感的历史
》
售價:NT$
390.0
《
家、金钱和孩子
》
售價:NT$
295.0
《
形而上学与测量
》
售價:NT$
340.0
《
世界航母、舰载机图鉴 【日】坂本明
》
售價:NT$
340.0
《
量价关系——透视股票涨跌脉络
》
售價:NT$
340.0
《
创伤与记忆:身体体验疗法如何重塑创伤记忆 [美]彼得·莱文
》
售價:NT$
295.0
《
复原力
》
售價:NT$
345.0
《
近代中国思维方式的演变(王中江著作系列)
》
售價:NT$
950.0
編輯推薦:
本书以幽默风趣的语言生动地讲述了微服务,将微服务相关的理论知识、技术实现和项目实践一网打尽。 解密微服务Spring Boot Spring Cloud 技术实践。
內容簡介:
本书以幽默风趣的语言生动地讲述了微服务,将微服务相关的理论知识、技术实现和项目实践一网打尽。全书共分为三大部分:*部分为微服务解惑篇,让读者对微服务有一个清晰的认识,消除对微服务的种种疑惑,同时对用户十分关注的如何拆分、如何使用等问题做了很全面的讲解;第二部分为技术实现篇,通过对当前世界*为流行的微服务框架Spring Boot Spring Cloud的常用组件的详细解读以及其他相关技术、工具的介绍,来帮助读者了解整体架构及其中各个组件的原理,结合代码帮助读者快速构建项目,搭建一个比较完整的微服务框架;第三部分为项目实战篇,通过案例来展示不同业务系统在微服务使用过程中如何梳理业务、如何拆分、如何使用微服务重构等。
關於作者:
纪晓峰,现任某公司架构师,曾经在AC担任微服务领域的咨询师,长期供职于HP,具有丰富的架构设计和开发经验,先后参与多个微服务项目。网名叫我哲学家,喜欢看书,钻研技术,领悟其中原理,习惯于独立思考,形成独到的见解。
目錄 :
目录
第一部分微服务解惑篇
第1章微服务架构2
1.1不微你就OUT了2
1.2产生背景3
1.2.1时代的召唤3
1.2.2容器神助攻4
1.2.3微服务的进击4
1.3微服务的标签5
1.3.1单一职责6
1.3.2微6
1.3.3面向服务7
1.3.4自治8
1.3.5易扩展9
1.3.6流程化10
1.4实力碾压11
1.4.1组件化11
1.4.2快速13
1.4.3可复用13
1.4.4机动灵活13
1.5不要奶我14
1.5.1不足14
1.5.2挑战15
1.5.3小结16
1.6本章小结17
第2章为何选择微服务18
2.1传统架构的病18
2.1.1中年危机18
2.1.2宝宝心里苦19
2.2微服务有药21
2.2.1讳疾忌医21
2.2.2朋友听说过安利么22
2.2.3沙盘演练看效果22
2.3微服务的价值23
2.3.1资源价值24
2.3.2业务价值24
2.3.3技术价值24
2.3.4用户价值25
2.3.5未来价值25
2.3.6小结26
2.4定个小目标26
2.4.1持续交付26
2.4.2业务敏捷26
2.4.3独立演进27
2.4.4高可用27
2.4.5高性能27
2.4.6站在云端28
2.5别人家的公司28
2.6来不及解释快上车29
第3章我拆我拆我拆拆拆30
3.1拆还是不拆30
3.2如何拆32
3.2.1庖丁解牛32
3.2.2数据模型和业务模型33
3.2.3金字塔结构图33
3.2.4关键指标33
3.3粒度35
3.3.1五笔字根36
3.3.2被遗忘的字典师傅37
3.3.3小结37
3.4边界37
3.5本章小结38
第4章如何使用微服务39
4.1如何规划39
4.2微服务重构42
4.2.1影响因素42
4.2.2重构原则43
4.2.3重构方法44
4.3本章小结45
第5章微服务的朋友圈46
5.1好朋友容器46
5.1.1容器的来历46
5.1.2容器的好处47
5.1.3小结49
5.2天生一对DevOps49
5.2.1DevOps是什么49
5.2.2为什么采用DevOps50
5.2.3小结51
5.3SOA是谁51
5.3.1接着忽悠52
5.3.2SOA是个什么鬼52
5.3.3小结53
第二部分技术实现篇
第6章Spring Boot56
6.1介绍56
6.2特点57
6.3Spring Boot和微服务之间的关系57
6.4如何使用58
6.5可定制化61
6.6本章小结64
第7章Spring Cloud65
7.1Spring Cloud优势66
7.2Spring Cloud特点67
7.3Spring Cloud之服务管理68
7.4注册中心Eureka69
7.4.1什么是注册中心69
7.4.2为什么要有注册中心69
7.4.3Eureka来历70
7.4.4Eureka机制71
7.4.5如何使用72
7.5网关Zuul77
7.5.1Zuul78
7.5.2反向代理78
7.5.3如何使用79
7.6客户端负载均衡Ribbon84
7.6.1负载均衡85
7.6.2如何使用85
7.6.3补充说明91
7.7断路器Hystrix92
7.7.1如何隔离93
7.7.2电路熔断器模式93
7.7.3回滚降级94
7.7.4如何使用95
7.7.5交通疏导101
7.7.6小结101
7.8分布式配置中心Spring Cloud Config101
7.8.1为什么要有配置102
7.8.2集中配置的好处103
7.8.3配置方式的演进103
7.8.4如何使用104
7.9服务之间调用Feign114
7.9.1Feign如何使用114
7.9.2补充说明118
7.10服务追踪119
7.10.1Spring Cloud Sleuth介绍119
7.10.2Sleuth如何使用120
7.10.3日志聚合Zipkin122
7.10.4小结127
7.11Spring Cloud和Dubbo的比较127
7.11.1生的伟大127
7.11.2死的憋屈127
7.11.3没比较没伤害128
7.11.4现状128
7.12Spring Cloud与Spring Boot的关系129
7.13本章小结130
第8章其他相关技术和工具131
8.1数据库开发持续集成工具Liquibase131
8.1.1特性132
8.1.2使用136
8.2Swagger144
8.2.1为什么使用Swagger144
8.2.2如何使用145
8.2.3小结149
8.3权限spring security150
8.4微服务架构的通信方式152
8.4.1同步153
8.4.2异步156
8.5服务编排160
8.6管理工具JIRA162
第9章测试相关166
9.1单元测试166
9.1.1Mockito如何使用168
9.1.2Mock 与InjectMocks的区别171
9.2接口测试173
9.3代码质量管理工具Sonar174
9.3.1特点174
9.3.2使用175
第三部分项目实战篇
第10章三个典型系统案例188
10.1企业运营支撑系统188
10.1.1背景188
10.1.2现状188
10.1.3原因调查189
10.1.4解决方案190
10.2车队管理系统193
10.2.1背景193
10.2.2技术架构193
10.2.3服务如何拆分194
10.3财务管理系统195
10.3.1背景195
10.3.2现状195
10.3.3原因调查196
10.3.4解决方案196
10.4本章小结197
第11章开发管理198
11.1管理原则198
11.2日常管理198
11.3代码质量管理199
11.4工作方式199
11.5BA的职责199
11.6SA的职责200
11.7DEV的工作原则201
11.8本章小结201
后记202
內容試閱 :
前 言
当莱斯特城获得1516赛季英超冠军的时刻,我毫不犹豫地亮出了自己隐藏了30年的狐狸城球迷身份。
随着微服务在国内的炙手可热,很多人亮出了隐藏多年的微服务专家身份。
然而有一种专家就是那种告诉你1000种谈恋爱的办法,但自己从来没有谈过恋爱的人。
他们讲讲亚马逊的订单,谈谈Uber的服务,然而就是没有自己做的。
不同于这些专家,笔者曾是AC微服务方面的咨询,曾长期供职于HP,具有丰富的架构设计和实战经验,先后参与过多个微服务项目,对微服务有着较为深刻的理解。
微服务的概念提出已经有几年了,相对于传统技术架构来说微服务不仅仅是新一代架构,更是具有划时代意义的架构。目前国外一些大型互联网公司如亚马逊、Netflix、Spotify和一些传统公司如沃尔玛都已经采用微服务架构并且实际效果非常好。
与此同时,微服务架构在国内一直不温不火,大多呈观望态势,直到容器技术的出现,为微服务架构的落地完成了最后一块拼图,国内IT公司对微服务架构的热情才大增,从各种微服务培训大会一票难求可见一斑。
为什么写这本书? 国内很多公司已经开始或正在着手准备使用微服务架构,与市场需求暴增对应的是巨大的人才缺口,市面上相关材料、书籍的信息量很小,且大多偏技术实现,既缺少理论的指导又缺少项目实践,无法满足最终用户的需求。最重要的是还没有介绍Spring Boot Spring Cloud的书问世,它可是当前世界上最主流的微服务技术实现,这多少影响了微服务在国内的发展。
技术类书籍大多有一个普遍的问题,就是枯燥乏味、晦涩难懂。不要说非技术人员看不懂,连技术出身的人看着也吃力,更别提那些翻译过来的技术书籍。
究其原因是因为描述技术时用的语言是技术语言,而不是生活语言,自然难以理解。
技术不是玄学,技术应该是面向生活的。
所以本书会通过大量生活中的例子对微服务架构及原理进行解释,有趣易懂,可以说是接地气的一本技术书籍。
本书内容都是从实际出发,均来自本人常年在前方发回的报道,这里有客户最关心的话题,如何拆分服务、如何使用微服务等。本书有针对性地对这些问题进行了解答,同时提供了一套完整的理论体系,让读者知其然知其所以然。
一本书是一个作者智慧的结晶、知识的沉淀、思维体系的形成。
做人呢,开心最重要。
写书呢,态度最重要。
本人能力一般、水平有限,如有不足之处,欢迎拍砖。如果通过这本书能让更多人了解和更好地使用微服务,那么我的目的就达到了。
您适合看这本书么? 本书的最大特点是贴近生活,简单易懂,同时又与实践紧密联系。这本书的读者不仅限于技术人员,同时也适用于非技术人员。技术人员看完可以轻松地搭建一套完整的微服务环境,开始微服务之旅;架构师看完可以规划设计出更好的架构,业务人员看完也可以从中了解微服务。
只要是对微服务有兴趣的同道中人,都可以从这本书中有所收获。就像Spring Cloud的工具包,内容丰富,如果要使用微服务总有一款适合你。
本书是如何组织的? 本书分为三大部分。
第一部分微服务解惑篇包含了前5章
微服务会给很多人带来疑惑,它是什么,可能一说就懂,但是该不该使用它,以及如何使用等问题就不是三言两语能讲得清楚、说得明白的。这部分内容可以让读者对微服务有个清晰的认识,消除对微服务的种种疑惑,同时对用户十分关注的如何拆分、如何使用等问题做了很全面的讲解。可以让之前的迷惑与误解消失不见。
第1章:微服务架构
本章介绍了微服务架构的产生背景、特点、优势及不足,还有在使用过程中会遇到的一些挑战,让读者对微服务有一个整体的了解。
第2章:为何选择微服务
本章主要讲选择微服务的理由,介绍传统架构的缺陷,而微服务就是它的解药,随后介绍了微服务带来的价值及通过它最终要达成的目标,最后介绍了成功人士的选择,让你用着放心。
第3章:我拆我拆我拆拆拆
本章介绍了微服务的拆分原则,以及拆分过程中需要注意的地方。它是微服务使用过程中非常重要的一环。
第4章:如何使用微服务
本章介绍了微服务在使用时应该如何规划,并以秦国都城举例说明规划的重要性及规划的方法。随后介绍微服务的使用方法,让读者在使用过程中有一个理论上的指导。
第5章:微服务的朋友圈
本章介绍了微服务架构的圈子,它不是一个独立的存在,有一系列热门词围绕着它,如容器、DevOps等。
第二部分技术实现篇包含了第6~9章
通过对当前世界最为流行的微服务框架Spring Boot Spring Cloud的常用组件的详细解读以及其他相关技术、工具的介绍,来帮助读者了解整体架构及其中各个组件的原理,结合代码帮助读者快速构建项目,搭建一个比较完整的微服务框架。另外,对一些误读进行了澄清,如Spring Boot究竟是不是微服务框架。
第6章:Spring Boot
本章介绍了基础框架Spring Boot的一些情况,包括特点、如何使用等。
第7章:Spring Cloud
本章介绍了Spring Cloud中比较常用和重要的一些组件的原理和使用,如Eureka、Config、Zuul、Hystrix、Ribbon等。
第8章:其他相关技术和工具
本章介绍了微服务的使用过程中需要用到的一些工具和技术,如Liquibase、Swagger、Kafka、Spring Security等,这些工具、技术可以辅助微服务被更好地使用。
第9章:测试相关
本章介绍了微服务在使用过程中测试的重要性,以及需要用到的一些测试方法和工具,如Mockito等。
第三部分项目实战篇包含了第10~11章
第10章:三个典型系统案例
本章通过三个案例来展示不同业务系统在微服务使用过程中如何梳理业务、如何拆分、如何使用微服务重构,等等。
第11章:开发管理
讲了开发管理中的管理原则、日常管理、代码质量管理、工作方式及相关人员的工作职责等内容。
我要致谢的人 首先感谢我的妻子,妻贤夫安,谢谢妻子对我的理解和包容,给我创造了愉悦的写作环境。谢谢妻子对家的付出,让我无须操心家中事,将更多的精力投入到写作中。谢谢妻子在我写作遇到瓶颈时给予的支持和鼓励,感恩有你的陪伴。
我还要感谢我曾经效力多年的中国惠普,一家非常伟大的公司,惠普之道让我有家一般的归属感,我在这里受益良多,结识了许多正能量的朋友,这些对我来说都是非常宝贵的财富。每当我回想起曾经在惠普的那段岁月,心中总是充满了感恩和美好的记忆。
鸟随鸾凤飞腾远,人伴贤良品自高。要感谢的人太多太多,是你们这些良师益友让我一直在荆棘中不断前行,采拾鲜花。
最后还要感谢电子工业出版社王二华编辑,在我写作期间给予了很大的帮助和指导。