![](https://www.vvnnvv.com/wp-content/uploads/2021/02/41XIVKjbqtL.jpg)
基本信息
- 出版社 : 清华大学出版社; 第1版 (2020年3月5日)
- 出版日期 : 2020年2月1日
- 品牌 : 清华大学出版社
- 语言 : 简体中文
- 文件大小 : 51496 KB
- 李兴华 (作者)
- 下载格式:azw3、epub、mobi
编辑推荐
《名师讲坛——Java微服务架构实战(SpringBoot+SpringCloud+Docker+RabbitMQ)》内容特色如下。
(1)资深Java讲师进行技术剖析,全面把握学习命脉,问题分析一针见血。
(2)140个课程案例,完美演示微服务的方方面面。
(3)基于Maven实现项目管理,与真实项目完美衔接。
(4)丰富的架构图示说明,轻松掌握微架构设计方案。
(5)手把手步骤学习法,轻松掌握微架构开发。
(6)OAuth使用分析与代码实现,掌握企业级RPC认证与授权解决方案。
(7)微服务与Docker虚拟化技术结合使用,轻松实现云服务。
内容简介
《名师讲坛——Java微服务架构实战(SpringBoot+SpringCloud+Docker+RabbitMQ)》一共15章,核心内容为SpringBoot、SpringCloud、Docker、RabbitMQ消息组件。其中,SpringBoot是SpringMVC技术的延伸,使用它进行程序开发会更简单,服务整合也会更容易。SpringCloud是当前微架构的核心技术方案,属于SpringBoot的技术延伸,它可以整合云服务,基于RabbitMQ和GITHUB进行微服务管理。除此以外,本书还重点分析了OAuth统一认证服务的应用。
作者简介
李兴华,著名软件技术讲师,系统架构师,有多年的软件教学经验,技术研究与讲解的主要方向为数据库、编程语言、Web开发、框架服务、系统架构、手机移动开发、大数据等。从2008年开始进行图书创作,出版过Oracle、Android、Java、Python、Web编程等10多本畅销书籍,总销量近50万册,受到广大读者的一致好评。
媒体评论
《名师讲坛——Java微服务架构实战(SpringBoot+SpringCloud+Docker+RabbitMQ)》内容特色如下。
(1)资深Java讲师进行技术剖析,全面把握学习命脉,问题分析一针见血。
(2)140个课程案例,完美演示微服务的方方面面。
(3)基于Maven实现项目管理,与真实项目完美衔接。
(4)丰富的架构图示说明,轻松掌握微架构设计方案。
(5)手把手步骤学习法,轻松掌握微架构开发。
(6)OAuth使用分析与代码实现,掌握企业级RPC认证与授权解决方案。
(7)微服务与Docker虚拟化技术结合使用,轻松实现云服务。
前言
前言
我们在用心做事,做最好的教育,写最好的原创图书。
笔者是一名从事Java开发快二十年的技术爱好者,一位普通的培训班老师,喜欢和学生们一边开着玩笑,一边教会他们当下流行与实用的技术。很多时候我会跟学生说:“信息产业是一个不断发展变化的行业,没有人可以精确预测这个行业的未来发展方向,更没有人可以在这个行业里拥有绝对的技术实力。同样,也没有永远不过时的技术。我们能做的只是努力地学习与提升,每一天都要在踩坑与填坑的路上不断爬行,磕磕碰碰习惯了,解决问题所花费的时间就越来越少了。想要在这个行业走得长远,一定要喜欢这个行业,喜欢钻研。”
遥想起2003年开源风在中国兴起时,SSH(Spring 1.x + Struts 1.x + Hibernate 2.x)整合开发框架是当时最大的技术亮点。作为开发者的我们,最大的感受是再也不需要去编写那些重复的代码了,利用开发框架我们几乎可以解决当时所有的问题。然而技术的经典是短暂的,随着时间的流逝,SSH的光环也不再辉煌。后来,有了SSH2(Spring 2.x + Struts 2.x + Hibernate 3.x),又有了SSM(Spring + Shiro + MyBatis)。随着开发框架的不断增加,以及Spring对各类开发框架的不断支持,新的问题出现了—参与整合的配置文件过多,项目的集成化太高。大家转而开始寻找新的解决方案。就在所有人都认为Pivotal公司(Spring项目所属公司)已经停滞不前的时候,其在2016年推出了一套完善的轻量级分布式解决方案,就是今天流行的微架构(或称微服务),之中的主要技术手段是SpringBoot + SpringCloud。
微架构的出现,很好地适应了这个时代对快速发展变化的要求。它不再提倡一体化的项目设计,而是对项目进行有效的“业务区”(可以简单理解为不同的子系统)划分,并利用合理的技术对业务性能做出提升和改善,同时又极大地简化了配置文件的使用与profile配置。总而言之,微架构是开发之中看起来非常简单的一种实现技术,但简单的背后考究的却是开发者对于开源技术的熟练程度。
SpringBoot作为一种Web整合开发框架,很好地解决了Web程序的编写困难,可以更简单、高效地实现MVC设计模式。更为重要的是,它可以轻松地整合当前各类主流的开发项目,如消息组件、SQL数据库、NoSQL数据库、邮件服务等,因此能极大地缩短项目的开发周期,更快地响应客户的需求变更。SpringCloud作为SpringBoot的延续,可以基于Restful流行架构实现RPC业务中心的搭建,可以基于消息组件实现远程配置动态的抓取,还可以与Docker相结合,采用虚拟化手段实现便捷的云服务管理。可以说,微架构的出现与云时代是密不可分的。
本书是笔者多年开发经验的总结,写作时力求能一针见血地分析透Java微服务的设计架构(见下图)与各类技术实现。全书围绕着当前的主流方案(高性能+高可用+分布式)进行展开,不仅讲解了所有微架构中的内容,还给出了真实有效的学习案例;不仅可以与虚拟化Docker整合开发,还可以实现大型企业分布式授权OAuth解决方案。可以说,本书就像Java微服务实现架构的一个技术宝典,读者学习后完全可以直接在实际项目之中进行应用。另外,由于微架构涉及到的技术非常广泛,对于某些技术还不十分清楚的读者,可以登录魔乐科技网站(www.mldn.cn)进行视频学习。
笔者崇尚原创,所出版的图书也均为原创。笔者将“技术实现优先”这一原则贯穿于全书,采用步骤分解的模式详细讲解每一步的开发,希望读者可以通过本书学习到微服务的技术精髓。另外,由于技术更新迭代过快,加之本人水平有限,书中难免有表达不到位或不明确的地方,欢迎读者批评指正,万分感谢。
创作不易。感谢我最爱的妻子和我的家人,是你们的付出与支持才让我可以安心创作,同时也祝福我年幼的儿子可以健康快乐地成长。
精彩书摘
虽然MVC开发具有良好的可扩展性,但是在实际的开发过程中,许多开发者依然会感受到如下的问题。
采用原生Java程序实现MVC设计模式时,一旦整体项目设计不到位,就会存在大量的重复代码,并且项目维护困难。
为了简化MVC各个层的开发,可以引用大量的第三方开发框架,如Spring、Hibernate、MyBatis、Shiro、JPA、SpringSecurity等,但这些框架都需要在Spring中实现整合,其结果就是会存在大量的配置文件。
当使用一些第三方的服务组件(如RabbitMQ、Kafka、JavaMail等)时,需要编写大量重复的配置文件,而且还需要根据环境定义不同的profile(如dev、beta、product)。
使用Maven作为构建工具时,需要配置大量的依赖关系,且程序需要被打包为*.war文件并部署到应用服务器上才可以执行。
Restful作为接口技术应用得越来越广泛,但如果使用Spring来搭建Restful服务,则需要引入大量的Maven依赖库,并且需要编写许多的配置文件。
基于以上种种因素,很多人开始寻求更加简便的开发方式,而遗憾的是,这种简便的开发没有被官方的JavaEE所支持。JavaEE官方支持的技术标准依然只提供最原始的技术支持。
![](https://www.vvnnvv.com/wp-content/uploads/2021/03/sm.png)