摘要
本书语言简洁,内容丰富,适合具备初级Java后端开发能力的开发人员,大中专相关专业师生,网站培训班学员,以前拥有单工程开发经验并且想尝试分布式微服务架构的人员。
Java工程师
初级架构师
大中专院校相关专业师生
Java培训班学员
独立开发者与自学读者
微服务分布式构架开发实战 作者:龚鹏
微服务分布式构架开发实战 出版社:人民邮电出版社
微服务分布式构架开发实战 内容简介
随着第三方框架的逐渐完善,实施微服务架构的开发成本越来越低,分布式架构成为主流势不可挡。一个完善的架构或系统中包含了许多的知识点,而每一个知识点则又可以引出非常多的内容,过度地专注于细节反而会拖慢达成目标的步伐。为了更快地实施微服务,本书基于开源且稳定的第三方工具,介绍如何构建一个庞大且复杂的分布式系统,用于满足项目中的实际需求。
每一个工具库为了适应更丰富的使用场景,通常都会把部分参数以配置文件的方式暴露出来,同时提供用于开发环境的默认配置。本书基于快速使用为主线,尽可能多地讲解配置参数的意义及它们之间的关系,帮助读者在掌握足够多的知识点后,建立起对微服务分布式架构的认知,以便为探求更深层次的知识点做好铺垫。
本书适合Java工程师、初级架构师、大中专院校相关专业师生、Java培训班学员及独立开发者与自学读者使用。
每一个工具库为了适应更丰富的使用场景,通常都会把部分参数以配置文件的方式暴露出来,同时提供用于开发环境的默认配置。本书基于快速使用为主线路,尽可能多地讲解配置参数的意义及之间的关系。在掌握足够多的知识点后建立起对微服务分布式架构的认知,以便为探求更深层次的知识点做好铺垫。
微服务分布式构架开发实战 目录
序
前言
第1章 微服务介绍
1.1 什么是微服务架构
1.2 垂直应用与微服务
1.3 实现一个最简单的微服务框架
1.4 主流微服务框架介绍
第2章 模块拆分
2.1 拆分逻辑
2.2 单模块
2.3 基础模块
2.4 复杂模块
第3章 Spring Boot
3.1 目录结构
3.2 主要文件
3.3 编辑器集成
第4章 Dubbo
4.1 注册中心
4.2 接口工程
4.3 服务端
4.4 消费方
4.5 网关
4.6 监控中心
4.7 服务管理
4.8 负载均衡
4.9 服务降级
4.10 集群容错
第5章 Spring Cloud
5.1 注册中心
5.2 注册服务
5.3 调用服务
5.4 Zuul网关
5.5 Hystrix 断路器
5.6 服务监控
5.7 应用监控
5.8 熔断器监控
5.9 统一管理配置文件
第6章 数据持久化
6.1 Spring Data MySQL
6.2 Spring Data MongoDB
6.3 Spring Data ElasticSearch
6.4 TCC 分布式事务
6.5 Spring Data Redis
第7章 表单验证
第8章 定时任务
8.1 Spring Task 单机定时任务
8.2 Cron 表达式
8.3 QuartZ 分布式定时任务
第9章 分布式会话
第10章 消息队列
10.1 安装及配置RabbitMQ
10.2 配置及使用
第11章 构建Web应用
第12章 异常处理
第13章 安全认证
13.1 OAuth2.0 协议介绍
13.2 授权模式
13.3 在Dubbo中使用OAuth 2.0
13.4 在Spring Cloud 中使用OAuth 2.0
第14章 日志管理
14.1 Spring Boot 日志
14.2 分布式日志管理
第15章 热部署
第16章 接口文档管理
16.1 Dubbo中使用Swagger2
16.2 Spring Cloud中使用Swagger2
第17章 Nexus私库
17.1 Nexus 安装
17.2 从Nexus私库下载jar包
17.3 上传jar包到Nexus私库
第18章 发布系统
18.1 Jenkins 安装配置
18.2 构建任务
第19章 分布式架构总结
欢迎来到异步社区!
异步社区的来历
社区里都有什么?
灵活优惠的购书
社区里还可以做什么?
微服务分布式构架开发实战 精彩文摘
随着用户需求个性化、产品生命周期变短,微服务架构是未来软件架构朝着灵活性、扩展性、伸缩性以及高可用性发展的必然方向。这里主要将对比传统的垂直应用与分布式微服务应用之间的区别。
微服务是一种软件架构风格,目标是将一个复杂的应用拆分成多个服务模块,每个模块专注单一业务功能对外提供服务,并可以独立编译及部署,同时各模块间互相通信彼此协作,组合为整体对外提供完整服务。
微服务架构就像是活字印刷术,每个文字模都可以看成是一个微服务,它可以独立地提供印刷服务,又可以将模块之间组合,最终形成一篇完整文章提供更为复杂的印刷服务。
由于每个模块都独立部署,各自拥有互不干扰的内存空间,模块之间无法直接调用,所以需要借助RPC(远程过程调用协议)或HTTP协议让各个模块之间传递通信报文及交换数据,实现远程调用,整个通信管理的过程也是微服务架构重要的组成部分。
MVC模式构建的垂直应用非常适合项目初期,使用其能够方便地进行开发、部署、测试,但随着业务的发展与访问量的增加,垂直应用的问题也随之暴露出来,而微服务架构可以很好地解决这些问题。
代码维护
垂直应用里,大部分逻辑都部署在一个集中化、单一的环境或服务器中运行。垂直应用程序通常很大,由一个大型团队或多个团队维护。庞大的代码库可能给希望熟悉代码的开发人员增加学习成本,还会让应用程序开发过程中使用的开发环境工具和运行容器不堪重负,最终导致开发效率降低,可能会阻止对执行更改的尝试。
微服务架构将这个庞大并且复杂的应用拆分成多个逻辑简单且独立的小应用,每个小应用交由不同的团队或开发人员维护,彼此之间互不干扰,通过标准接口互相通信。对于希望熟悉代码的开发人员来说只需掌握他所负责的应用即可,这样做的好处是简单、快速、逻辑清晰。
本文来自枯萎○还行投稿,不代表电子书资源网立场,如若转载,请联系原作者获取。