Java微服务

Java微服务
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] , (沙鲁巴·夏尔马) ,
2017-01
版次: 01
ISBN: 9787121304934
定价: 69.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 248页
字数: 322千字
正文语种: 简体中文
  • 微服务是利用云平台开发企业应用程序的*新技术,它是小型、轻量和过程驱动的组件。微服务适合设计可扩展、易于维护的应用程序。它可以使开发更容易,还能使资源得到*佳利用。本书帮助你用Java构建供企业使用的微服务架构,内容包括微服务核心概念和框架、大型软件项目的高层次设计、开发环境设置和前期配置、对微服务架构持续集成的部署、实现微服务的安全性、有效地执行测试、微服务设计的*佳做法和一般原则,以及如何检测和调试问题。本书适合想要了解微服务架构,以及想要深入了解如何有效地实施企业级微服务的Java开发人员。 译者卢涛:ITPUB社区版主,20年IT从业经历,先后从事c/c++软件开发、系统分析及Oracle数据库等工作,参加过多个全国性普查数据处理项目的开发和运维,目前主要从事统计报表联网填报系统的后台支持。《剑破冰山―oracle开发的艺术》作者之一,译有多部技术书籍。 Sourabh Sharmahas具有十年以上的产品/应用程序开发经验。他的专长是开发、部署和测试多层 web 应用程序。他喜欢解决复杂的问题,并寻找*佳的解决方案。在他的职业生涯中,他已成功地为财富 500 强的客户开发和交付了各种独立应用程序和云应用程序,给他们带来很多收益。Sourabh 还为他的总部设在美国的**企业产品公司发起并开发了一种基于微服务的产品。他在大学时代,即 90 年代后期开始编写 Java 程序,他仍然热爱做这项工作。 前言 XV
    1  一种解决方法 1
    微服务的演变 2
    整体式架构概述 3
    整体式架构的局限性与它的微服务解决方案的对比 3
    一维的可扩展性 6
    在出故障时回滚版本 7
    采用新技术时的问题 7
    与敏捷实践的契合 8
    减轻开发工作量――可以做得更好 9
    微服务的构建管道 10
    使用诸如Docker的容器部署 11
    容器 11
    Docker 12
    Docker的架构 13
    Docker容器 14
    部署 14
    小结 14
    2  设置开发环境 17
    Spring Boot配置 18
    Spring Boot概述 18
    把Spring Boot添加至REST示例 19
    添加一个嵌入式Jetty服务器 21
    示例REST程序 22
    编写REST控制器类 24
    @RestController 25
    @RequestMapping 25
    @RequestParam 25
    @PathVariable 26
    制作一个示例REST可执行应用程序 29
    设置应用程序构建 30
    运行Maven工具 30
    用Java命令执行 31
    使用Postman Chrome扩展测试REST API 31
    更多的正向测试场景 34
    反向的测试场景 35
    NetBeans IDE安装和设置 37
    参考资料 42
    小结 42
    3  领域驱动设计 43
    领域驱动设计基本原理 44
    组成部分 45
    普遍存在的语言 45
    多层架构 45
    表示层 46
    应用程序层 46
    领域层 46
    基础架构层 47
    领域驱动设计的工件 47
    实体 47
    值对象 48
    服务 49
    聚合 50
    存储库 52
    工厂 53
    模块 54
    战略设计和原则 55
    有界上下文 55
    持续集成 56
    上下文映射 57
    共享内核模式 58
    客户和供应商模式 58
    顺从者模式 59
    反腐层 59
    独立方法 59
    开放主机服务 60
    精馏 60
    示例领域服务 60
    实体的实现 61
    存储库的实现 63
    服务的实现 66
    小结 67
    4  实现微服务 69
    OTRS概述 70
    开发和实现微服务 71
    餐馆微服务 72
    控制器类 73
    服务类 76
    存储库类 79
    实体类 82
    预订和用户服务 85
    注册和发现服务(Eureka服务) 85
    执行 87
    测试 87
    参考资料 92
    小结 92
    5  部署和测试 93
    使用Netflix OSS的微服务架构概述 93
    负载均衡 95
    客户端的负载均衡 95
    服务器端的负载均衡 98
    电路断路器与监控 102
    使用Hystrix的回退方法 102
    监控 103
    设置Hystrix仪表板 105
    设置Turbine 107
    使用容器部署微服务 109
    安装和配置 109
    具有4 GB内存的Docker机器 110
    使用Maven构建Docker映像 110
    使用 Maven 运行Docker 114
    使用Docker执行集成测试 115
    把映像推送到注册表 118
    管理Docker容器 119
    参考资料 121
    小结 121
    6  实现微服务的安全性 123
    启用安全套接字层 123
    身份验证和授权 127
    OAuth 2.0 127
    OAuth的用法 128
    OAuth 2.0规范――简明详细信息 128
    OAuth 2.0角色 129
    OAuth 2.0客户端注册 131
    OAuth 2.0协议端点 135
    OAuth 2.0授权类型 137
    使用Spring Security的OAuth实现 144
    授权码许可 150
    隐式许可 153
    资源所有者密码凭据许可 154
    客户端凭据许可 155
    参考资料 155
    小结 156
    7  利用微服务Web应用程序来使用服务 157
    AngularJS框架概述 157
    MVC 158
    MVVM 158
    模块 158
    提供程序和服务 160
    作用域 161
    控制器 161
    过滤器 161
    指令 162
    UI-Router 162
    OTRS 功能的开发 163
    主页/餐馆列表页 163
    index.html 164
    app.js 169
    restaurants.js 172
    restaurants.html 179
    搜索餐馆 180
    餐馆详细信息与预订选项 181
    restaurant.html 181
    登录页面 183
    login.html 184
    login.js 185
    预订确认 186
    设置web应用程序 187
    小结 201
    8  最佳做法和一般原则 203
    概述和心态 203
    最佳做法和原则 205
    Nanoservice(不推荐)、规模和整体性 205
    持续集成和部署 206
    系统/端到端测试自动化 207
    自我监控和记录 207
    每个微服务都使用独立的数据存储区 209
    事务边界 210
    微服务框架和工具 210
    Netflix开放源码软件(OSS) 210
    构建――Nebula 211
    部署和交付――Spinnaker与Aminator 211
    服务注册和发现――Eureka 211
    服务沟通――Ribbon 212
    电路断路器――Hystrix 212
    边缘(代理)服务器――Zuul 212
    业务监控――Atlas 213
    可靠性监控服务――Simian Army 213
    AWS资源监控――Edda 214
    主机性能监控――Vector 215
    分布式配置管理――Archaius 215
    Apache Mesos调度器――Fenzo 215
    成本和云利用率――Ice 216
    其他安全工具――Scumblr和FIDO 216
    参考资料 217
    小结 218
    9  故障排除指南 219
    日志记录和ELK环境 219
    简要概述 221
    Elasticsearch 221
    Logstash 221
    Kibana 222
    ELK环境安装 222
    安装Elasticsearch 223
    安装Logstash 224
    安装Kibana 225
    服务调用关联ID的使用 226
    让我们看看怎样解决这个问题 226
    依赖项和版本 227
    循环依赖关系及其影响 227
    设计系统时需要分析它 227
    维护不同版本 227
    让我们了解更多 228
    参考资料 228
    小结 228
  • 内容简介:
    微服务是利用云平台开发企业应用程序的*新技术,它是小型、轻量和过程驱动的组件。微服务适合设计可扩展、易于维护的应用程序。它可以使开发更容易,还能使资源得到*佳利用。本书帮助你用Java构建供企业使用的微服务架构,内容包括微服务核心概念和框架、大型软件项目的高层次设计、开发环境设置和前期配置、对微服务架构持续集成的部署、实现微服务的安全性、有效地执行测试、微服务设计的*佳做法和一般原则,以及如何检测和调试问题。本书适合想要了解微服务架构,以及想要深入了解如何有效地实施企业级微服务的Java开发人员。
  • 作者简介:
    译者卢涛:ITPUB社区版主,20年IT从业经历,先后从事c/c++软件开发、系统分析及Oracle数据库等工作,参加过多个全国性普查数据处理项目的开发和运维,目前主要从事统计报表联网填报系统的后台支持。《剑破冰山―oracle开发的艺术》作者之一,译有多部技术书籍。 Sourabh Sharmahas具有十年以上的产品/应用程序开发经验。他的专长是开发、部署和测试多层 web 应用程序。他喜欢解决复杂的问题,并寻找*佳的解决方案。在他的职业生涯中,他已成功地为财富 500 强的客户开发和交付了各种独立应用程序和云应用程序,给他们带来很多收益。Sourabh 还为他的总部设在美国的**企业产品公司发起并开发了一种基于微服务的产品。他在大学时代,即 90 年代后期开始编写 Java 程序,他仍然热爱做这项工作。
  • 目录:
    前言 XV
    1  一种解决方法 1
    微服务的演变 2
    整体式架构概述 3
    整体式架构的局限性与它的微服务解决方案的对比 3
    一维的可扩展性 6
    在出故障时回滚版本 7
    采用新技术时的问题 7
    与敏捷实践的契合 8
    减轻开发工作量――可以做得更好 9
    微服务的构建管道 10
    使用诸如Docker的容器部署 11
    容器 11
    Docker 12
    Docker的架构 13
    Docker容器 14
    部署 14
    小结 14
    2  设置开发环境 17
    Spring Boot配置 18
    Spring Boot概述 18
    把Spring Boot添加至REST示例 19
    添加一个嵌入式Jetty服务器 21
    示例REST程序 22
    编写REST控制器类 24
    @RestController 25
    @RequestMapping 25
    @RequestParam 25
    @PathVariable 26
    制作一个示例REST可执行应用程序 29
    设置应用程序构建 30
    运行Maven工具 30
    用Java命令执行 31
    使用Postman Chrome扩展测试REST API 31
    更多的正向测试场景 34
    反向的测试场景 35
    NetBeans IDE安装和设置 37
    参考资料 42
    小结 42
    3  领域驱动设计 43
    领域驱动设计基本原理 44
    组成部分 45
    普遍存在的语言 45
    多层架构 45
    表示层 46
    应用程序层 46
    领域层 46
    基础架构层 47
    领域驱动设计的工件 47
    实体 47
    值对象 48
    服务 49
    聚合 50
    存储库 52
    工厂 53
    模块 54
    战略设计和原则 55
    有界上下文 55
    持续集成 56
    上下文映射 57
    共享内核模式 58
    客户和供应商模式 58
    顺从者模式 59
    反腐层 59
    独立方法 59
    开放主机服务 60
    精馏 60
    示例领域服务 60
    实体的实现 61
    存储库的实现 63
    服务的实现 66
    小结 67
    4  实现微服务 69
    OTRS概述 70
    开发和实现微服务 71
    餐馆微服务 72
    控制器类 73
    服务类 76
    存储库类 79
    实体类 82
    预订和用户服务 85
    注册和发现服务(Eureka服务) 85
    执行 87
    测试 87
    参考资料 92
    小结 92
    5  部署和测试 93
    使用Netflix OSS的微服务架构概述 93
    负载均衡 95
    客户端的负载均衡 95
    服务器端的负载均衡 98
    电路断路器与监控 102
    使用Hystrix的回退方法 102
    监控 103
    设置Hystrix仪表板 105
    设置Turbine 107
    使用容器部署微服务 109
    安装和配置 109
    具有4 GB内存的Docker机器 110
    使用Maven构建Docker映像 110
    使用 Maven 运行Docker 114
    使用Docker执行集成测试 115
    把映像推送到注册表 118
    管理Docker容器 119
    参考资料 121
    小结 121
    6  实现微服务的安全性 123
    启用安全套接字层 123
    身份验证和授权 127
    OAuth 2.0 127
    OAuth的用法 128
    OAuth 2.0规范――简明详细信息 128
    OAuth 2.0角色 129
    OAuth 2.0客户端注册 131
    OAuth 2.0协议端点 135
    OAuth 2.0授权类型 137
    使用Spring Security的OAuth实现 144
    授权码许可 150
    隐式许可 153
    资源所有者密码凭据许可 154
    客户端凭据许可 155
    参考资料 155
    小结 156
    7  利用微服务Web应用程序来使用服务 157
    AngularJS框架概述 157
    MVC 158
    MVVM 158
    模块 158
    提供程序和服务 160
    作用域 161
    控制器 161
    过滤器 161
    指令 162
    UI-Router 162
    OTRS 功能的开发 163
    主页/餐馆列表页 163
    index.html 164
    app.js 169
    restaurants.js 172
    restaurants.html 179
    搜索餐馆 180
    餐馆详细信息与预订选项 181
    restaurant.html 181
    登录页面 183
    login.html 184
    login.js 185
    预订确认 186
    设置web应用程序 187
    小结 201
    8  最佳做法和一般原则 203
    概述和心态 203
    最佳做法和原则 205
    Nanoservice(不推荐)、规模和整体性 205
    持续集成和部署 206
    系统/端到端测试自动化 207
    自我监控和记录 207
    每个微服务都使用独立的数据存储区 209
    事务边界 210
    微服务框架和工具 210
    Netflix开放源码软件(OSS) 210
    构建――Nebula 211
    部署和交付――Spinnaker与Aminator 211
    服务注册和发现――Eureka 211
    服务沟通――Ribbon 212
    电路断路器――Hystrix 212
    边缘(代理)服务器――Zuul 212
    业务监控――Atlas 213
    可靠性监控服务――Simian Army 213
    AWS资源监控――Edda 214
    主机性能监控――Vector 215
    分布式配置管理――Archaius 215
    Apache Mesos调度器――Fenzo 215
    成本和云利用率――Ice 216
    其他安全工具――Scumblr和FIDO 216
    参考资料 217
    小结 218
    9  故障排除指南 219
    日志记录和ELK环境 219
    简要概述 221
    Elasticsearch 221
    Logstash 221
    Kibana 222
    ELK环境安装 222
    安装Elasticsearch 223
    安装Logstash 224
    安装Kibana 225
    服务调用关联ID的使用 226
    让我们看看怎样解决这个问题 226
    依赖项和版本 227
    循环依赖关系及其影响 227
    设计系统时需要分析它 227
    维护不同版本 227
    让我们了解更多 228
    参考资料 228
    小结 228
查看详情
12
您可能感兴趣 / 更多
Java微服务
Java研发自测入门与进阶
林宁、魏兆玉
Java微服务
Java语言程序设计(2023年版)全国高等教育自学考试指导委员会
全国高等教育自学考试指导委员会
Java微服务
Java项目开发实战(微视频版)
陈强
Java微服务
Java+OpenCV案例佳作选
姚利民
Java微服务
Java核心编程技术(第4版微课版新世纪应用型高等教育软件专业系列规划教材)
张屹、蔡木生 编
Java微服务
Java Web及其框架技术
陈振兴
Java微服务
JavaScript多线程编程实践
(美)托马斯 亨特二世(Thomas Hunter II),(加拿大)布莱恩 英格利什(Bryan English)
Java微服务
Java开发坑点解析:从根因分析到最佳实践
朱晔
Java微服务
Java面向对象程序设计(题库·微课视频版)
梁胜彬 主编 渠慎明 白晨希 马华蔚 甘志华 程素营 副主编
Java微服务
Java核心技术速学版(第3版)
(美)凯·S.霍斯特曼(Cay S. Horstmann)
Java微服务
Java程序设计(微课版新世纪应用型高等教育计算机类课程规划教材)
李月辉、李慧 编
Java微服务
Java到Kotlin:代码重构指南
(英)邓肯·麦格雷戈(Duncan McGregor)
系列丛书 / 更多
Java微服务
Java研发自测入门与进阶
林宁、魏兆玉
Java微服务
Java语言程序设计(2023年版)全国高等教育自学考试指导委员会
全国高等教育自学考试指导委员会
Java微服务
Java项目开发实战(微视频版)
陈强
Java微服务
Java+OpenCV案例佳作选
姚利民
Java微服务
Java核心编程技术(第4版微课版新世纪应用型高等教育软件专业系列规划教材)
张屹、蔡木生 编
Java微服务
Java Web及其框架技术
陈振兴
Java微服务
JavaScript多线程编程实践
(美)托马斯 亨特二世(Thomas Hunter II),(加拿大)布莱恩 英格利什(Bryan English)
Java微服务
Java开发坑点解析:从根因分析到最佳实践
朱晔
Java微服务
Java面向对象程序设计(题库·微课视频版)
梁胜彬 主编 渠慎明 白晨希 马华蔚 甘志华 程素营 副主编
Java微服务
Java核心技术速学版(第3版)
(美)凯·S.霍斯特曼(Cay S. Horstmann)
Java微服务
Java程序设计(微课版新世纪应用型高等教育计算机类课程规划教材)
李月辉、李慧 编
Java微服务
Java到Kotlin:代码重构指南
(英)邓肯·麦格雷戈(Duncan McGregor)
相关图书 / 更多
Java微服务
Java研发自测入门与进阶
林宁、魏兆玉
Java微服务
Java语言程序设计(2023年版)全国高等教育自学考试指导委员会
全国高等教育自学考试指导委员会
Java微服务
Java项目开发实战(微视频版)
陈强
Java微服务
Java+OpenCV案例佳作选
姚利民
Java微服务
Java核心编程技术(第4版微课版新世纪应用型高等教育软件专业系列规划教材)
张屹、蔡木生 编
Java微服务
Java Web及其框架技术
陈振兴
Java微服务
JavaScript多线程编程实践
(美)托马斯 亨特二世(Thomas Hunter II),(加拿大)布莱恩 英格利什(Bryan English)
Java微服务
Java开发坑点解析:从根因分析到最佳实践
朱晔
Java微服务
Java面向对象程序设计(题库·微课视频版)
梁胜彬 主编 渠慎明 白晨希 马华蔚 甘志华 程素营 副主编
Java微服务
Java核心技术速学版(第3版)
(美)凯·S.霍斯特曼(Cay S. Horstmann)
Java微服务
Java程序设计(微课版新世纪应用型高等教育计算机类课程规划教材)
李月辉、李慧 编
Java微服务
Java到Kotlin:代码重构指南
(英)邓肯·麦格雷戈(Duncan McGregor)