ASP.NET Core微服务实战:在云环境中开发、测试和部署跨平台服务pdf下载

ASP.NET Core微服务实战:在云环境中开发、测试和部署跨平台服务百度网盘pdf下载

作者:
简介:ASP.NET Core微服务实战:在云环境中开发、测试和部署跨平台服务
出版社:
出版时间:2019-12
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

产品特色

编辑推荐

在当今的几乎每个垂直领域,企业都需要将软件迁移到云以获取利润;而微服务能提供敏捷性,大幅缩短产品上市时间。这本实战指南将指导你使用开源ASP.NET Core框架,来创建、测试、编译和部署微服务。跟随本书,你将养成良好、实用的习惯,能快速开发稳定可靠、功能强大的服务。
要开发微服务,并非只是学习一个特定框架或一门编程语言,而要开发能适应弹性伸缩环境、独立于托管容器、能随时启停的应用。这本紧贴实用的指南将带你体验这一过程。

内容简介

  在当今的几乎每个垂直领域,企业都需要将软件迁移到云以获取利润;而微服务能提供敏捷性,大幅缩短产品上市时间。
  《ASP.NET Core微服务实战:在云环境中开发、测试和部署跨平台服务》这本实战指南将指导你使用开源ASP.NETCore框架,来创建、测试、编译和部署微服务。
  跟随《ASP.NET Core微服务实战:在云环境中开发、测试和部署跨平台服务》,你将养成良好、实用的习惯,能快速开发稳定可靠、功能强大的服务。
  要开发微服务,并非只是学习一个特定框架或一门编程语言,而要开发能适应弹性伸缩环境、独立于托管容器、能随时启停的应用。这本紧贴实用的指南将带你体验这一过程。
  领会测试驱动、API优先的开发理念
  通过创建和消费后端服务(如数据库和队列)与其他服务交互
  构建依赖于外部数据源的微服务
  学习事件溯源(以事件为中心的持久化方法)
  使用ASP.NETCore开发适合部署在云环境的Web应用
  开发一个消费其他服务或被其他服务消费的微服务
  创建可接受外部配置的服务和应用
  探索用于保护ASP.NETCore微服务和应用的方法
  Kevin Hoffman讲授如何使用新的云模式、实践和技术,对企业级应用进行迁移和现代化改造,以使它们适应云环境。Kevin时常参与各种用户组和技术会议,迄今已撰写了十几本计算机编程书籍。

作者简介

  陈计节,红帽开放创新实验室高级咨询顾问,前ThoughtWorks高级咨询顾问。主要关注敏捷方法和DevOps实践的团队赋能,帮助企业构建数字化转型的中坚力量。同时,他还是一名全栈工程师和.NET社区布道者,也是一名开源参与者和贡献者。曾参与翻译《.NET性能优化》一书,发表过各类技术文章。

内页插图

精彩书评

  ★“ASP.NETCore为开发人员带来一系列现代化实践,而Kevin Hoffman则撰写了一本见解深刻的实战手册。明智的企业都开发微服务来构建适应能力更强的软件,为此,需要考虑诸多新因素;Kevin完成了一项工作,针对性地解释了要获得成功必须掌握的技术。Kevin不仅给出极其有用的代码,还详细呈现微服务开发的生命周期,深入讲解如何实现一些重要模式。”
  ——Pivotal高级产品总监,Richard Seroter(微软MVP)

目录

第1章 ASP.NETCore基础
1.1 核心概念
1.1.1 CoreCLR
1.1.2 CoreFX
1.1.3.NETPlatformStandard
1.1.4 ASP.NETCore
1.2 安装.NETCore
1-3开发控制台应用
1.4 开发第一个ASP.NETCore应用
1.4.1 向项目添加ASP.NET包
1.4.2 添加Kestrel服务器
1.4.3 添加启动类和中间件
1.4.4 运行应用
1.5 本章小结

第2章 持续交付
2.1 Docker简介
2.1.1 安装Docker
2.1.2 运行Docker镜像
2.2 使用Wercker持续集成
2.3 用Wercker构建服务
2.3.1 安装Wercker命令行工具
2.3.2 添加wercker.yml配置文件
2.3.3 运行Wercker构建
2.4 使用CircleCI持续集成
2.5 部署到dockerhub
2.6 本章小结

第3章 使用ASP.NETCore开发微服务
3.1 微服务的定义
3.2 团队服务简介
3.3 API优先的开发方式
3.3.1 为什么要用API优先
3.3.2 团队服务的API
3.4 以测试优先的方式开发控制器
3.4.1 注入一个模拟的仓储
3.4.2 完成单元测试套件
3.5 创建持续集成流水线
3.6 集成测试
3.7 运行团队服务的Docker镜像
3.8 本章小结

第4章 后端服务
4.1 微服务生态系统
4.1.1 资源绑定
4.1.2 服务间模型共用的策略
4.2 开发位置服务
4.3 优化团队服务
4.3.1 使用环境变量配置服务的URL
4.3.2 消费RESTful服务
4.3.3 运行服务
4.4 本章小结

第5章 创建数据服务
5.1 选择一种数据存储
5.2 构建Postgres仓储
5.2.1 创建数据库上下文
5.2.2 实现位置记录仓储接口
5.2.3 用EFCore内存提供程序进行测试
5.3 数据库是一种后端服务
5.4 对真实仓储进行集成测试
5.5 试运行数据服务
5.6 本章小结
……
第6章 事件溯源与CQRS
第7章 开发ASP.NETCoreWeb应用
第8章 服务发现
第9章 微服务系统的配置
第10章 应用和微服务安全
第11章 开发实时应用和服务
第12章 设计汇总

前言/序言

  “微服务”这一概念在2014年正式提出后,越来越多的团队开始用它设计自己的业务系统,各种微服务框架和开发过程管理方法随之兴起、不断成熟。微服务设计方法清晰定义了各个开发团队的业务边界,微服务框架以不同方式实现了服务之间的协作与集成。根据康威定律推导可知,这样一种产品开发方法必然会映射到人员协作方式上去。还有同步兴起的DevOps运动,它及时地恰当补齐了微服务开发过程中的技术方法,让微服务生态如虎添翼。
  经过几年的积累,人们开始意识到,微服务从概念到实现,最后推广到组织,整个过程存在许多挑战:服务之间的依赖管理、大量服务实例的运维、单个服务的独立部署,以及承担不同角色的微服务在同一个生态系统中的身份验证等,都开始成为微服务团队需要直接面对的挑战。同时,各类微服务框架也层出不穷,让开始接触微服务的开发人员眼花缭乱,既难区分它们的优劣、做出合适的选型,也难找到高效的学习路径。在.NET技术领域,微服务的挑战比起很多其他技术栈有过之而无不及。.NET技术在企业应用开发领域有着长久的运用,因此有大量的存量应用需要面向服务化改造。而.NETCore技术作为新一代.NET技术方向,无论是生态自身的完整性,还是基于它的微服务框架体系,都处于持续的完善之中。最后,在传统的企业应用开发领域,并没有普遍采用持续交付等实践,当时所开发的应用也难以满足云原生应用所要求的诸多特性,因此改造过程难度较大。
  所幸.NETCore作为全新的.NET技术,它不仅完全开源、跨平台,更面向云原生开发进行了大量细致的优化。它完全模块化,不依赖特定操作系统,其文件系统、网络和配置等基础功能模块对跨平台、命令行等现代化轻量级开发所要求的特性提供了卓越的支持。正是由于.NETCore作为基础开发平台天然适合云原生开发,因此基于ASP.NETCore开发微服务也天然具有这些优势。
  本书“麻雀虽小,五脏俱全”,首先介绍.NETCore开发环境的安装,接着详细介绍持续交付、API优先和测试驱动等重要开发方法和思想。本书探讨人们对微服务的各种理解,从各个方面对微服务进行全方位阐释,引导读者直观地进行体验;同时,本书主张将微服务和云原生实践结合运用,书中通过解析十二因子应用的各项特性,并分析它们在本书示例项目中的体现,让读者对微服务和云原生的结合更为体系化。在本书的讲解过程中,每当遇到可能存在不同做法的场景,作者总是详细论述各项考虑因素、仔细比较各种可能的做法,引发读者思考。本书还大量探讨传统应用开发中的典型做法,以及在微服务和云原生开发时应该采纳的新方法,解析其中缘由,为存量应用的改造提供直接指导。
  本书中文版的引进必将为.NET技术领域的微服务实践和云原生技术的普及做出重要贡献。在此,译者特此感谢清华大学出版社的大力支持,感谢张善友老师为本书译文提出的宝贵建议,感谢曾一起共事的翻译小组WorkSharp的同事们(特别是刘夏先生)的指导,感谢社区中关注本书的各位热心人士的激励和帮助。最后,最需要致以真诚感谢的,是时常关心我的翻译工作、提醒我及时休息的父母;以及忍受我用几个月的业余时间来翻译并为我提供建议的爱人张圣奇。是你们无限的耐心和持续的支持才让本书的翻译工作得以顺利完成。