-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
10/8 新書到! 10/1 新書到! 9/24 新書到! 9/18 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

精通Spring Boot 2.0

( 簡體 字)
作者:[印]迪內什·拉吉普特 著 類別:1. -> 程式設計 -> JAVA -> Spring
譯者:劉璋 譯
出版社:清華大學出版社精通Spring Boot 2.0 3dWoo書號: 51410
詢問書籍請說出此書號!

有庫存
NT售價: 545

出版日:6/1/2019
頁數:315
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302530244
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

Pivotal最近發布了Spring Boot 2.0,以支持響應式編程和云計算。Spring Boot 2.0引入了諸多新特性和增強方案,本書也將對此進行逐一介紹。另外,本書還將引領讀者深入理解Spring Boot和云微服務架構方面的知識。
當前,許多公司已經將Spring Boot作為企業應用程序開發的主要框架,對于采用微服務架構的REST API尤其如此。對于Spring Boot來說,我們并不需要使用外部企業服務器。本書旨在闡述本地云應用程序背后所采用的常見設計方案,以及如何在Spring Boot 2.0的Spring Cloud模塊中對其予以實現。其間,作者還進一步總結了分布式設計日志記錄機制和應用程序開發過程中的一些最佳實踐方案。
本書共15章,涵蓋了從基于微服務的云應用程序開發到微服務的部署(使用虛擬機或Docker等容器)的方方面面,包括如何使用Rest模板、Spring Cloud Netflix Feign實現微服務架構中服務間的通信;如何使用Spring Cloud Stream和Kafka構建一個事件驅動的彈性系統。這一部分內容還向讀者展示了如何使用Hystrix和Turbine進行監視。最后,本書還將解釋如何測試和構建API,并將其部署到容器(如Docker)以及云中(如AWS)。
適用讀者
本書適用于各種層次的Java開發人員,他們希望學習Spring Boot 和Spring Cloud并將其作為基于企業分布式云的應用程序。因此,當采用基于Spring Boot 2.0和Spring Cloud的微服務架構時,本書對企業級Java和Spring開發人員來說十分有用,進而幫助他們深入理解本地云設計模式,以及微服務體系結構如何解決分布式應用程序中本地云基礎設施中的常見設計問題,并可將本書中的示例結合自己的項目加以使用。在閱讀本書之前,讀者應具備Core Java、Spring Core Framework以及Spring Boot方面的基礎知識。
本書內容
第1章整體介紹了Spring Boot 2.0及其新特性,包括某些核心組件,以及Spring Boot的某些改進措施。
第2章闡述了Spring Boot的自動配置特性,同時進一步解釋了如何覆蓋默認的自動配置機制。
第3章通過多種方式創建Spring Boot應用程序,涉及Spring Boot的Web接口、STS IDE以及Spring Boot CLI。本章深入討論了Spring Boot CLI,以及如何在機器設備上安裝Spring Boot CLI,并以此創建Spring Boot應用程序。另外,本章還將通過Actuator介紹Spring Boot的生產環境特性。
第4章討論如何構建配置服務器,并向客戶端應用程序提供Git存儲庫中的一組配置文件。在本章中,讀者將學習到與Spring Cloud配置服務相關的知識,以及如何構建和使用配置服務。
第5章介紹Spring Cloud Netflix和基于Eureka的 Service Discovery。
第6章構建一個RESTful原子微服務,該服務使用Spring Cloud和Spring數據在內存數據庫(HSQL或H2)上執行CRUD操作,以使該服務能夠向Eureka服務器進行服務發現注冊。
第7章探討微服務通信的API網關模式,無論是來自UI組件還是來自內部服務調用。另外,還將使用Netflix API Zuul實現一個API網關,并了解如何在應用程序中設置Zuul代理。
第8章對Feign及其工作方式加以介紹,其中包含了針對業務需求相關的、詳細的Feign擴展/定制方式,其中展示了自定義編碼器、解碼器、Hystrix和單元測試異常處理方面的參考實現。
第9章講述了如何采用事件驅動架構并作為本地云應用程序構建事件驅動型微服務。對于分布式系統中的數據一致性處理,本章將考查一些重要的概念和主題。
第10章通過參考實現探討斷路器模式,其中涉及Netflix Hystrix庫的使用,配置Turbine儀表盤以整合來自多項服務的Hystrix流。
第11章通過JUnit和Mockito討論Spring Boot Services單元測試。其中,全部參考實現都將完成相應的單元測試。因此,本章內容更多地是整合了微服務的各種測試機制。
第12章介紹容器,并在Docker中運行第11章中構建的服務、編寫Dockerfile、使用docker-compose編排容器,并在Kubernetes中提供編排示例。
第13章探討分布式系統中的API管理,設置KONG開源API管理器、在KONG API管理器中配置前述章節中的API端點、針對API標準引入Swagger。最后,本章還將展示速率限制以及基于KONG的日志記錄。
第14章介紹如何在AWS EC2實例中手動部署微服務,以及 CloudFormation腳本的應用方式。
第 15 章詳細介紹構建分布式系統的一些最佳實踐,并深入討論生產環境下服務的性能監控方案。
內容簡介:

本書詳細闡述了與Spring Boot 2.0相關的基本解決方案,主要包括定制auto-configuration、Spring CLI和Actuator、Spring Cloud和配置操作、Spring Cloud Netflix和Service Discovery、構建Spring Boot RESTful微服務、利用Netflix Zuul 創建API網關、利用Feign客戶端簡化HTTP API、構建事件驅動和異步響應式系統、利用Hystrix和Turbine構建彈性系統、測試Spring Boot應用程序、微服務的容器化、API管理器、云部署(AWS)、生產服務監視和最佳實踐等內容。此外,本書還提供了相應的示例、代碼,以幫助讀者進一步理解相關方案的實現過程。
本書適合作為高等院校計算機及相關專業的教材和教學參考書,也可作為相關開發人員的自學教材和參考手冊。
目錄:

第1章SpringBoot2.01
1.1SpringBoot概述2
1.2利用SpringBoot簡化應用程序開發3
1.3SpringBoot中的核心組件5
1.3.1SpringBootStarter5
1.3.2SpringBootStarterParentPOM7
1.3.3SpringBootauto-configuration7
1.3.4啟用SpringBootauto-configuration9
1.3.5SpringBootCLI11
1.3.6SpringBootActuator11
1.4設置SpringBoot工作區12
1.4.1利用Maven設置SpringBoot13
1.4.2利用Gradle設置SpringBoot13
1.5開發第一個SpringBoot應用程序15
1.5.1使用Web界面15
1.5.2利用STSIDE創建SpringBoot項目17
1.6實現REST服務19
1.7SpringBoot2.0中的新特性22
1.8本章小結22
第2章定制auto-configuration25
2.1理解auto-configuration26
2.2定制SpringBoot27
2.2.1利用SpringBoot屬性進行定制27
2.2.2替換已生成的Bean29
2.2.3禁用特定的auto-configuration類29
2.2.4修改庫的依賴關系30
2.3基于屬性的配置外部化31
2.3.1屬性的評估順序31
2.3.2重命名Spring應用程序中的application.properties32
2.4外部配置應用程序屬性33
2.5基于日志記錄的調優35
2.6YAML配置文件36
2.6.1針對屬性的YAML36
2.6.2單一YAML文件中的多個屬性37
2.7定制應用程序錯誤頁面37
2.8本章小結39
第3章SpringCLI和Actuator41
3.1使用SpringBootCLI41
3.1.1安裝SpringBootCLI42
3.1.2從安裝文件中手動安裝SpringBootCLI42
3.1.3使用SDKMAN!安裝SpringBootCLI43
3.1.4利用OSXHomebrew安裝SpringBootCLI43
3.2使用Initializr44
3.3SpringBootActuator48
3.3.1在應用程序中啟用SpringBootActuator49
3.3.2分析Actuator的端點49
3.3.3顯示配置細節51
3.3.4顯示指標端點56
3.3.5顯示應用程序信息57
3.3.6關閉應用程序59
3.3.7自定義Actuator端點59
3.3.8創建一個自定義端點64
3.4Actuator端點的安全性66
3.5SpringBoot2.x中的Actuator67
3.6本章小結68
第4章SpringCloud和配置操作69
4.1原生云應用程序架構69
4.1.1微服務架構71
4.1.2微服務的優點72
4.1.3微服務面臨的挑戰73
4.2SpringCloud簡介74
4.2.1云和微服務程序的構造塊74
4.2.2SpringCloud應用76
4.3配置SpringCloud應用程序77
4.4創建配置生成器—SpringCloudConfigServer78
4.5實現CloudConfigServer79
4.5.1配置application.properties文件80
4.5.2創建Git存儲庫作為配置存儲80
4.6利用模式配置多個存儲庫83
4.6.1身份驗證84
4.6.2force-pull屬性85
4.7創建SpringCloud客戶端85
4.8本章小結87
第5章SpringCloudNetflix和ServiceDiscovery89
5.1SpringCloudNetflix簡介89
5.2微服務架構中的ServiceDiscovery90
5.3實現ServiceDiscovery—EurekaServer92
5.3.1Maven構建配置文件92
5.3.2Gradle構建配置文件93
5.3.3啟用Eureka服務器作為DiscoveryService服務器94
5.4實現ServiceDiscovery—Eureka客戶端96
5.4.1添加Maven依賴關系配置96
5.4.2Gradle構建配置98
5.5利用Eureka注冊客戶端99
5.5.1使用REST服務102
5.5.2使用EurekaClient102
5.5.3FeignClient107
5.6本章小結111
第6章構建SpringBootRESTful微服務113
6.1基于SpringBoot的微服務113
6.1.1bootstrap.yml和application.yml簡介114
6.1.2簡單的微服務示例115
6.2SpringData簡介128
6.2.1ApacheIgnite存儲庫129
6.2.2SpringDataMongoDB129
6.2.3SpringDataJPA130
6.3本章小結130
第7章利用NetflixZuul創建API網關133
7.1API網關模式需求133
7.1.1APIGateway模式的優點135
7.1.2APIGateway的一些缺點135
7.1.3APIGateway模式組件135
7.2利用NetflixZuulProxy實現APIGateway136
7.2.1利用Maven依賴關系包含Zuul137
7.2.2啟用Zuul服務代理137
7.2.3配置Zuul屬性138
7.2.4添加過濾器141
7.3本章小結144
第8章利用Feign客戶端簡化HTTPAPI145
8.1Feign基礎知識145
8.2在云應用程序中包含Feign148
8.2.1重載Feign的默認配置153
8.2.2創建Feign客戶端155
8.2.3Feign繼承機制156
8.2.4多重繼承156
8.3Feign客戶端的高級應用157
8.4異常處理158
8.5自定義編碼器和解碼器159
8.5.1自定義編碼器160
8.5.2自定義解碼器161
8.6Feign和Hystrix161
8.7Feign客戶端單元測試163
8.8本章小結164
第9章構建事件驅動和異步響應式系統165
9.1事件驅動型架構模式165
9.1.1調停者拓撲165
9.1.2代理拓撲166
9.2響應式編程簡介167
9.2.1SpringReactive167
9.2.2ReactiveX168
9.3命令查詢的責任分離簡介168
9.3.1EventSourcing模式簡介170
9.3.2最終一致性171
9.4構建事件驅動型響應式異步系統172
9.5SpringCloudStreaming簡介173
9.5.1向應用程序中添加Kafka174
9.5.2安裝和運行Kafka175
9.5.3Kafka配置屬性175
9.5.4用于寫入Kafka的服務176
9.5.5RestAPI控制器177
9.5.6監聽Kafka主題177
9.6本章小結181
第10章利用Hystrix和Turbine構建彈性系統183
10.1斷路器模式184
10.2使用Hystrixlibrary186
10.3在應用程序中配置Hystrix187
10.3.1Maven依賴關系188
10.3.2啟用斷路器188
10.3.3向服務中添加Hystrix注解189
10.3.4錯誤傳遞192
10.4在客戶服務中實現REST控制器192
10.5構建和測試客戶服務195
10.6自定義默認的配置項196
10.7HystrixMetricsStream198
10.8在項目中實現HystrixDashboard199
10.9Turbine儀表盤201
10.10基于Hystrix和Feign的REST使用者204
10.11本章小結206
第11章測試SpringBoot應用程序207
11.1測試驅動開發207
11.2單元測試機制208
11.2.1單元測試的優點211
11.2.2單元測試的缺點212
11.2.3其他模擬庫212
11.3集成測試212
11.3.1Spring測試的優點214
11.3.2激活測試類的配置214
11.4SpringBoot應用程序的JUnit測試214
11.5使用Mockito模擬服務216
11.6測試RESTful服務契約的Postman217
11.7本章小結220
第12章微服務的容器化221
12.1微服務架構的容器222
12.1.1虛擬機和容器222
12.1.2容器方案的優點224
12.1.3面向容器方案的缺點224
12.2Docker簡介225
12.2.1安裝Docker226
12.2.2在Linux上安裝Docker226
12.2.3在Windows中安裝Docker227
12.2.4Docker架構229
12.2.5Docker引擎231
12.2.6Docker容器232
12.2.7編寫Dockerfile233
12.3Docker化SpringBoot應用程序235
12.4利用Maven創建Docker鏡像239
12.5DockerCompose簡介240
12.5.1安裝DockerCompose241
12.5.2使用DockerCompose242
12.5.3編寫docker-compose文件242
12.5.4基于docker-compose文件的編排操作244
12.5.5利用docker-compose和負載平衡擴展容器247
12.6Kubernetes簡介248
12.7本章小結249
第13章API管理器251
13.1API管理251
13.1.1API管理軟件的優點252
13.1.2API管理工具252
13.2速率限制252
13.3KONG簡介253
13.3.1基于KONG架構的微服務RESTAPI254
13.3.2未采用KONG架構的API應用255
13.3.3安裝KONG255
13.3.4使用KONGAPI257
13.4Swagger265
13.4.1Swagger應用265
13.4.2在微服務中使用Swagger266
13.4.3Swagger的優點277
13.5本章小結278
第14章云部署(AWS)279
14.1AWSEC2實例279
14.2AWS上的微服務架構284
14.3在AWSEC2上安裝Docker289
14.4在AWSEC2上運行微服務291
14.5本章小結293
第15章生產服務監視和最佳實踐295
15.1監視容器295
15.2日志機制所面臨的挑戰295
15.3微服務架構的中心日志方案297
15.3.1基于ELK棧的日志聚合299
15.3.2使用Sleuth的請求跟蹤306
15.3.3基于Zipkin的請求跟蹤310
15.4本章小結315
序: