《ASP.NET Core 微服务实战》-- 读书笔记(第1章 、第2章)
译者序
微服务设计方法清晰定义了各个开发团队的业务边界,微服务框架以不同方式实现了服务之间的协作与集成。
.NET Core 作为全新的 .NET 技术,它不仅完全开源、跨平台,更面向云原生开发进行了大量细致的优化。它完全模块化,不依赖特定操作系统,其文件系统、网络和配置等基础功能模块对跨平台,命令行等现代化轻量级开发所要求的特性提供了卓越的支持。
本书首先介绍 .NET Core 开发环境的安装,接着详细介绍持续交付、API 优先和测试驱动等重要开发方法和思想。
推荐序
本书较完整地介绍使用 ASP.NET Core 进行微服务开发时的思路、步骤和工具,书中用大量篇幅讲述关于开发功能强大且具有高可伸缩性和韧性的微服务思想,关注使用 ASP .NET Core 实现云原生模式。
本书 GitHub 库(https://github.com/microservices-aspnetcore)
第 1 章 ASP .NET Core 基础
核心概念
CoreCLR: 一个轻量级、跨平台运行时,提供与 CLR 相同功能,包括垃圾回收、JIT 编译、异常处理等等。
CoreFX: 一系列模块化程序集,以 NuGet 包方式提供,并且完全开源,可通过 GitHub 获取。
.NET Platform Standard: 以一种可控的架构支持 .NET Core 二进制可移植性的跨平台目标。
ASP .NET Core: 一系列小的模块化组件,可添加到现有应用中,用于开发 Web 应用和微服务;提供了路由、JSON 序列化、MVC 控制器与视图 API 。
开发控制台应用
$ dotnet new console
$ dotnet restore
$ dotnet run
项目创建完成后,运行 dotnet restore 可分析项目的依赖,并下载所有需要的包。每次修改项目文件 .csproj 后,都要执行这一步骤。
开发第一个 ASP.NET Core 应用
往控制台应用添加 ASP.NET Core 功能步骤:
- 添加 ASP.NET 包
- 添加 Kestrel 服务器
- 添加启动类和中间件
第 2 章 持续交付
相对于传统的单体应用,开发人员之所以要选择开发微服务系统,其驱动力之一就是需要一种能把新功能和修复补丁快速部署到小型、可独立缩放的子系统的功能。
只有在部署前就能确信这些服务在生产环境中不会出问题,才有可能做到这一点。
Docker 运用 Linux 内核提供的 cgroup 和 namespace 等功能对网络、文件和内存等资源进行隔离,避免了完整的重量级虚拟机的负担。
Docker 提供的能力让我们可以创建一种无视目标环境差异,随处运行的发布物,意味着在测试环境中测试 Docker 镜像之后,我们相信它在生产环境中也会以完全一致的方式工作。这是拥抱持续交付的前提。
运行 Docker 镜像
$ docker run -p 8080:8080 dotnetcoreservices/hello-world
$ docker ps
$ curl http://localhost:8080/will/it/blend?
$ docker kill 61a68ffc3851
使用 Wercker 持续集成
免费社区版(https://app.wercker.com/)
用 Wercker 构建服务
- 安装 Wercker 命令行工具
- 添加 wercker.yml 配置文件
- 运行 Wercker 构建
使用 CircleCI 持续集成
CircleCI 与 Wercker 构建过程的关键区别在于,构建过程不是在已安装好 .NET Core 的专用 Docker 镜像中运行,我们需要使用诸如 apt-get 的工具来安装 .NET 工具链。
部署到 docker hub
欢迎加入团购群



本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
欢迎转载、使用、重新发布,但务必保留文章署名 郑子铭 (包含链接: http://www.cnblogs.com/MingsonZheng/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。
如有任何疑问,请与我联系 (MingsonZheng@outlook.com) 。
《ASP.NET Core 微服务实战》-- 读书笔记(第1章 、第2章)的更多相关文章
- ASP.NET Core微服务实战系列
希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,码字辛苦,如果你吃了蛋觉得味道不错,希望点个赞,谢谢关注. 前言 这里记录的是个人奋斗和成长的地方,该篇只是一个系列目录和构想 ...
- 《ASP.NET Core In Action》读书笔记系列,这是一个手把手的从零开始的教学系列目录
最近打算系统学习一下asp.net core ,苦于没有好的中文书藉,只好找来一本英文的 <ASP.NET Core In Action>学习.我和多数人一样,学习英文会明显慢于中文.希 ...
- Spring Cloud微服务实战阅读笔记(一) 基础知识
本文系<Spring Cloud微服务实战>作者:翟永超,一书的阅读笔记. 一:基础知识 1:什么是微服务架构 是一种架构设计风格,主旨是将一个原本独立的系统拆分成多个小型服务 ...
- 《ASP.NET Core In Action》读书笔记系列五 ASP.NET Core 解决方案结构解析1
创建好项目后,解决方案资源管理器窗口里我们看到,增加了不少文件夹及文件,如下图所示: 在解决方案文件夹中,找到项目文件夹,该文件夹又包含五个子文件夹 -Models.Controllers.Views ...
- 《ASP.NET Core In Action》读书笔记系列四 创建ASP.NET Core 应用步骤及相应CLI命令
一般情况下,我们都是从一个模板(template)开始创建应用的(模板:提供构建应用程序所需的基本代码).本节使用 Visual Studio 2017 .ASP.NET Core2.0和 Visua ...
- 《ASP.NET Core In Action》读书笔记系列三 ASP.NET Core如何处理请求的?
在本节中,您将看到ASP.NET Core应用程序如何运行的,从请求URL开始到页面呈现在浏览器中. 为此,您将看到 一个HTTP请求在Web服务器中是如何被处理的.ASP.NET Core如何扩展该 ...
- 《ASP.NET Core In Action》读书笔记系列二 ASP.NET Core 能用于什么样的应用,什么时候选择ASP.NET Core
ASP.NET Core 能用于什么样的应用 ASP.NET Core 可以用作传统的web服务.RESTful服务.远程过程调用(RPC)服务.微服务,这归功于它的跨平台支持和轻量级设计.如下图所示 ...
- 《ASP.NET Core In Action》读书笔记系列一 ASP.NET Core 的诞生
最近打算系统学习一下asp.net core ,苦于没有好的中文书藉,只好找来一本英文的 <ASP.NET Core In Action>学习.我和多数人一样,学习英文会明显慢于中文.希 ...
- 【.NET Core微服务实战-统一身份认证】开篇及目录索引
简介 学习.NETCORE也有1年多时间了,发现.NETCORE项目实战系列教程很少,都是介绍开源项目或基础教程,对于那些观望的朋友不能形成很好的学习思路,遇到问题怕无法得到解决而不敢再实际项目中 ...
- Spring Cloud 微服务实战笔记
Spring Cloud 微服务实战笔记 微服务知识 传统开发所有业务逻辑都在一个应用中, 开发,测试,部署随着需求增加会不断为单个项目增加不同业务模块:前端展现也不局限于html视图模板的形式,后端 ...
随机推荐
- nextTick使用
- 完全免费白嫖 GPT-4 的终极方案!
原文链接:https://icloudnative.io/posts/completely-free-to-use-gpt4/ GPT-4 目前是世界上最强的多模态大模型,能力甩 GPT-3.5 好几 ...
- Redis 中bitMap使用及实现访问量
1. Bitmap 是什么 Bitmap(也称为位数组或者位向量等)是一种实现对位的操作的'数据结构',在数据结构加引号主要因为: Bitmap 本身不是一种数据结构,底层实际上是字符串,可以借助字符 ...
- 开发了一个json格式化工具,使用js格式化json的代码分享
今天给大家介绍一下如何通过js来格式化json. 假设json字符串是: {"name":"刘德华","age":25.2,"bi ...
- ONVIF网络摄像头(IPC)客户端开发—ONVIF介绍
1.前言: 网上已经有很多关于ONVIF开发的资料,这里概括介绍一下ONVIF协议以及介绍一下我自己在开发ONVIF网络摄像头的一些流程和经验,做个开发记录和经验总结,以备将来查看,也可供他人参考 ...
- 【转帖】《MySQL高级篇》四、索引的存储结构
1. 为什么使用索引 假如给数据使用 二叉树 这样的数据结构进行存储,如下图所示 2.索引及其优缺点 2.1 索引概述 2.2 优点 类似大学图书馆建书目索引,提高数据检索的效率,降低 数据库的 IO ...
- 周末拾遗 xsos 的学习与使用
周末拾遗 xsos 的学习与使用 摘要 周末陪儿子上跆拳道课. 自己一个人傻乎乎的开着笔记本想着学习点东西. 上午看到了一个sosreport的工具. 本来想学习一下. 发现xsos 应该是更好的一个 ...
- [转帖]-O1,-O2,-O3编译优化知多少
1.从.c文件到可执行文件,其间经历了几步? 高级语言是偏向人,按照人的思维方式设计的,机器对这些可是莫名奇妙,不知所谓.那从高级语言是如何过渡到机器语言的呢?这可是一个漫长的旅途呀! 其中,得经历这 ...
- CentOS7升级Glibc到超过2.17版本无法启动的解决办法
CentOS7升级Glibc到超过2.17版本无法启动的解决办法 背景 今天有同事告知服务器宕机无法启动. 提示信息为: [sda] Assuming drive cache: write throu ...
- [官网]Apache Log4j2 最新版安全提示 2.17.0
https://logging.apache.org/log4j/2.x/ 最近一个周的时间 log4j2 从 2.14 跃升到了2.17 还在不停的升级 安全问题正是焦头烂额 free softwa ...