Go微服务实战9787111674122 PDF下载 公众号 其他格式

Go微服务实战9787111674122

计算机与互联网 大数据与云计算

  • ISBN:9787111674122
  • 作者:刘金亮
  • 印次:1
  • 开本:16开
  • 版次:1
  • 用纸:胶版纸
  • 页数:396
  • 出版社:机械工业出版社
  • 出版时间:2021-03-01
  • 印刷时间:2021-03-01
  • 中图法分类号:TP312

手机扫码免费下载

纠错留言

#电子书截图

Go微服务实战9787111674122截图

#电子书简介

基本信息

  • 商品名:Go微服务实战97871116741□□
  • ISBN:9787111674122
  • 定价:89.00
  • 出版社:机械工业出版社
  • 作者:刘金亮

参考信息(以实物为准)

  • 出版时间:2021-03-01
  • 印刷时间:2021-03-01
  • 版次:1
  • 印次:1
  • 包装:平装
  • 开本:16开
  • 用纸:胶版纸
  • 页数:396
  • 字数:

内容简介

全书共分□1章。分为四篇进行介绍:语言基础篇、语言进阶篇、微服务知识篇、微服务实战篇。
□ □篇包括6章:Go程序基础、基本数据类型、字符串及复合数据类型、函数、方法、接口及反射、并发。通过本篇的开发,可以让不是很熟悉Go语言的工程师掌握语法基础。
第二篇包括3章:Go Web编程、并发编程模式、分布式系统。通过本篇的学习可以让读者了解使用Go语言如何进行Web开发、Go并发模式如何设计、分布式系统使用Go如何设计。
第三篇包括5章:微服务介绍、Linux基础、Docker、Kubernetes、Go常用微服务框架。本篇是用Go进行微服务开发的基本知识储备,知识面教光,避免读者查阅多本资料,整篇学习完就可以达到微服务开发的技能入门水平。
第四篇包括7章:生产环境Docker及Kubernetes安装、基于Docker及Goland的开发测试环境搭建、测试驱动开发和IM系统核心功能的微服务化、持续化交付、事件驱动架构、日志和监控、安全。本篇是微服务实战,以IM系统为例,从系统安装、如何测试、如何迭代、如何运维都进行了介绍。

前言序言

当今世界,软件的规模越来越大、功能越来越复杂,研发团队的规模也□得越来越大,运维人员和研发人员之间的工作交集越来越多。在这个大前提下,微服务模式在大型项目中开始风靡。
本书对使用Go语言进行微服务开发做了全面细致的介绍,包括微服务的基础知识、微服务的拆分、微服务进程间通信(IPC)、微服务的分布式事务管理、领域驱动设计(DDD)、微服务中的测试、基于ES-CQRS的微服务实践、微服务生产环境和持续交付等。本书比较全面地对微服务进行了介绍,而且对于每个知识点都给出了技术实现和实例代码,比如微服务进程间通信部分重点介绍了gRPC,ES-CQRS部分则给出了Go语言的具体实现。在介绍完知识点之后,本书给出了一些综合性的案例,比如□□0章、第□□章等,并通过GitHub提供了完整的可运行的代码,可帮助有基本Go语言语法知识的读者尽快了解、掌握微服务模式。
不同的语言对于微服务的实现都不相同。为了让读者更深入地了解Go语言的微服务实现模式,本书前6章深入介绍了Go语言的语法知识,包括Go语言程序基础,基本数据类型,字符串与复合数据类型,函数、方法、接口和反射,并发编程,包和代码测试等。对于已经熟练掌握Go语言的读者来说,前6章可以略过,或者快速浏览一遍。
本书目的
本书是为Go语言开发者和希望进入Go微服务开发领域的读者准备的,它不是一本仅介绍微服务的书,有一半的篇幅是在介绍Go语言的知识,所以特别适合有Java、Python等其他编程基础而希望转到Go语言编程的读者阅读。
本书除了详细地介绍相应的理论知识以外,还配备了示例代码,所有代码均已在GitHub上开源,读者可以边读书边实践。希望通过这种方式让更多的工程师受益,帮助他们将所学知识尽快转化为生产力。
本书内容
本书分为四个部分,完整涵盖了从Go语言到微服务的各个方面。每一部分都提供了示例代码或实战项目,读者可以边学习边动手练习。
□□部分是Go语言基础(□□~7章),包括Go语言的基础语法、Go语言的基本特性和Go语言的实战项目。Go语言的基础语法部分包括□量、基本数据类型、垃圾回收机制、字符串和复合类型等。对于字符串的介绍,重点讲解了Go语言字符串的特点及存储方式。另外,□□部分还介绍了Go语言里的slice如何存储、如何操作。Go语言对slice的使用非常频繁,而struct是在Go语言没有类的情况下对封装的具体体现,struct是数据类型的核心。Go语言的基本特性部分包括Go语言的基本函数、方法、接口、反射及并发等内容。Go语言没有类,它如何实现面向对象的诸多特性呢?比如封装、多态等。函数和goroutine相结合又会出现什么情况?读者学习本部分内容后对Go语言的灵活性会有所理解。Go语言的并发通过goroutine和channel实现,语法很简单,但理论知识需要清楚理解。Go语言的实战项目部分主要介绍了Go语言自带的测试工具和一个实战项目。这个模拟项目对本部分前面的知识进行了总结和复习。
第二部分是Go语言进阶(第8~10章),主要内容是Go语言的并发编程进阶、Go语言的Web编程以及综合实战。并发编程进阶及Web编程部分分别介绍了可以承担高负载的线程池实现以及Go语言里的Web编程。Go语言的并发性能非常强,只要把goroutine用好,结合设计模式,就可以设计出优秀的高并发服务。而Go语言的Web编程就更为方便,甚至只使用标准模块就可以写出Web程序。另外,本部分还会介绍一个综合案例,不仅对□□部分及第二部分所学的知识进行总结和复习,同时还介绍了Web编程常用的gin框架。
第三部分是微服务理论(□□1~18章),主要内容包括微服务模式的理论基础、微服务的进程间通信、微服务的分布式事务管理、领域驱动设计(DDD)、微服务测试、Docker及ES-CQRS策略。在微服务模式的理论基础部分,详细介绍了各种模式的演□,并且给出了具体的示例代码。进程间通信部分主要介绍了Go语言中的常用进程通信方式—protobuf、gRPC和consul,是微服务的技术入门。在微服务的分布式事务管理部分对分布式事务管理的方式进行了探讨,对不同拆分方式的优缺点进行了对比,其中重点介绍了Saga,并且给出了代码实现。领域驱动设计(DDD)部分介绍了其在Go语言中的实现,并给出了相关的概念,比如聚合、聚合的模式,此外,还展示了一个模拟实现。微服务测试部分介绍了测试的基本方法,建议结合□□部分中Go代码测试进行阅读。Docker部分重点介绍了Docker的基本原理及使用方法。Docker一般是由运维人员操作的,不过工程师也需要对Docker有一定的了解,以便于开发微服务。□后,本部分介绍了微服务中的知名策略—ES-CQRS在Go语言中的实现。
第四部分是微服务实战(□□9~□□章),包括微服务的生产环境、日志和监控、持续交付、实战项目。生产环境部分重点介绍了生产环境的安全,以及应用、运维和外部安全等内容,这是工程师在实战中必须了解的知识。日志和监控是微服务开发必须关注的内容,一旦微服务处于运行状态,工程师就可以通过日志和监控工具来诊断服务。持续交付,或者说DevOps,是微服务开发和部署过程中必不可少的知识领域,它是一个非常大的话题,本书站在Go语言的
  • 评论列表(0

留言评论