自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

圣杰

猿来如此

  • 博客(115)
  • 资源 (2)
  • 收藏
  • 关注

原创 .NET DevOps 接入指南 | 1. GitLab 安装

引言容器、DevOps和微服务被称为驱动云原生快速发展的三架马车。而DevOps是其中非常重要的一环,DevOps 是由Developers(Dev)和Operations(Ops)两个单词简称组成,中文直译就是“开发运维一体化”。DevOps 作为一种复杂的软件工程方法,推行实施并不可一蹴而就。因此采用好的平台工具,方能事半功倍,Gitlab作为一款成熟开源的一体化DevOps平台,其覆盖了D...

2023-12-28 12:35:29 1040

转载 使用.NET 开发ChatGPT Plugin

2023-05-14 20:10:03 148

原创 Semantic Kernel 知多少 | 开启面向AI编程新篇章

引言在ChatGPT 火热的当下, 即使没有上手亲自体验,想必也对ChatGPT的强大略有耳闻。当一些人在对ChatGPT犹犹豫豫之时,一些敏锐的企业主和开发者们已经急不可耐得开展基于ChatGPT模型AI应用的落地探索。因此,可以明确预见的是,「AI 能力的集成将会是很多应用都将面临的第一事项」,而拥有相关性技能的人才屈指可数。而这,正是机会所在,而机会是留给有准备之人,因此,有幸看到本文的开发...

2023-04-07 07:41:12 325

转载 与 AI 结对编程 & GitHub Copilot X & 生成代码和测试 & 修复Bug & 重构

GitHub Copilot 使用了 OpenAI 的 GPT-4 模型,结合 GitHub 上开源的大量代码库,从而能够根据用户输入的提示和信息,为程序员生成符合预期的代码。前不久微软宣布发表新一代的GitHub Copilot X,相比于上一代性能和能力又有了进一步的提升。GitHub Copilot X 可以更快地编写代码,提高开发效率,同时减轻开发者的负担,让他们能够把更多时间和精力投入到...

2023-04-01 16:34:15 345

原创 配置中心 | 集成 Nacos 配置中心(视频)

引言在微服务时代,通常为了提高服务性能而部署多个服务实例,而每个服务的实例都有自己的配置,如果想要更新某个配置,则需要更新每个实例的配置,如果微服务数量不多,尚且可以手动更新,但倘若服务数量较多,则手动更新不仅繁杂而且容易出错。而配置中心,就是来解决这个问题,配置中心可以有效帮助开发者更快捷地更新和管理配置,减少因配置错误而导致的服务中断,从而提高系统的可用性和可靠性。在开源生态中...

2023-03-06 19:19:46 115

原创 .NET 使用NLog增强日志输出

引言不管你是开发单体应用还是微服务应用,在实际的软件的开发、测试和运行阶段,开发者都需要借助日志来定位问题。因此一款好的日志组件将至关重要,在.NET 的开源生态中,目前主要有Serilog、Log4Net和NLog三款优秀的日志组件,但相较而言,NLog功能更加强大且扩展性强,允许开发者在仅修改配置文件的方式来丰富日志输出内容,支持多种日志格式,包括XML、JSON、YAML等,支持多种输出目标,包括文件、数据库、控制台、Loki、ElasticSearch等,支持自定义日志格式,支持日志级别,支持异步

2023-03-01 21:26:20 1369

原创 分布式事务 | 使用 DTM 分布式事务管理器(视频)

以下视频将重点介绍DTM Saga 模式和二阶段消息模式的应用。DTM是如何处理分布式事务的呢?以一个经典的跨行转账业务为例来看下事务处理过程。对于跨行转账业务而言,很显然是跨库跨服务的应用场景,不能简单通过本地事务解决,可以使用Saga模式,以下是基于DTM提供的Saga事务模式成功转账的的时序图:从以上时序图可以看出,DTM整个全局事务分为如下几步:用户定义好全局事务所有的事务分支(全局事务的...

2023-03-01 07:57:24 183 2

转载 .NET 基于NLog增强日志输出

2023-02-26 17:03:32 81

原创 分布式事务 | 使用DTM 的Saga 模式

❝分布式事务系列文章分布式事务| 使用 dotnetcore/CAP 的本地消息表模式分布式事务 | 基于MassTransit的StateMachine实现Saga编排式分布式事务分布式事务 | 基于MassTransit Courier 实现 Saga 编排式分布式事务DTM 简介前面章节提及的MassTransit、dotnetcore/CAP都提供了分布式事务的处理能力,但也仅局限于S...

2023-02-09 07:42:40 248

原创 分布式事务| 使用 dotnetcore/CAP 的本地消息表模式

本地消息表模式本地消息表模式,其作为柔性事务的一种,核心是将一个分布式事务拆分为多个本地事务,事务之间通过事件消息衔接,事件消息和上个事务共用一个本地事务存储到本地消息表,再通过定时任务轮询本地消息表进行消息投递,下游业务订阅消息进行消费,本质上是依靠消息的重试机制达到最终一致性。其示意图如下所示,主要分为以下三步:本地业务数据和发布的事件消息共享同一个本地事务,进行数据落库,其中事件消息持久化到...

2023-01-29 13:04:00 553

原创 Goodbye 2022,Welcome 2023 | 锁定 2023

引言又是一年春来到,新年应比旧年好。旧岁已辞,新年已到,新旧更迭之际,真想剪个头发换身行头,就能重新出发。但终究是要回头看看啊,那一路而来的荆棘与芬芳,才是成长的印记啊。那就回拨记忆,看看那些信誓旦旦的Flag,该打几分?谈健康三十来岁的年龄,正是意气风发,正午阳光,但怎奈乌云蔽日,身体毫无征兆的亮了红灯,将一切美好的遐想定格在2021年12月5日。这一年,十分之一的时间躺在病床上,五分之一的时间...

2023-01-15 16:30:47 370

原创 MassTransit | 基于StateMachine实现Saga编排式分布式事务

什么是状态机状态机作为一种程序开发范例,在实际的应用开发中有很多的应用场景,其中.NET 中的async/await 的核心底层实现就是基于状态机机制。状态机分为两种:有限状态机和无限状态机,本文介绍的就是有限状态机,有限状态机在任何时候都可以准确地处于有限状态中的一种,其可以根据一些输入从一个状态转换到另一个状态。一个有限状态机是由其状态列表、初始状态和触发每个转换的输入来定义的。如下图展示的就...

2023-01-02 14:47:57 145

原创 MassTransit | 基于MassTransit Courier 实现 Saga 编排式分布式事务

Saga 模式Saga 最初出现在1987年Hector Garcaa-Molrna & Kenneth Salem发表的一篇名为《Sagas》的论文里。其核心思想是将长事务拆分为多个短事务,借助Saga事务协调器的协调,来保证要么所有操作都成功完成,要么运行相应的补偿事务以撤消先前完成的工作,从而维护多个服务之间的数据一致性。举例而言,假设有个在线购物网站,其后端服务划分为订单服务、支付...

2022-12-11 10:30:52 226

原创 MassTransit | .NET 分布式应用框架

引言❝A free, open-source distributed application framework for .NET. 一个免费、开源的.NET 分布式应用框架。 -- MassTransit 官网❞MassTransit[1],直译公共交通, 是由Chris Patterson开发的基于消息驱动的.NET 分布式应用框架,其核心思想是借助消息来实现服务之间的松耦合异步通信,进而确...

2022-10-23 19:50:37 436

原创 Dapr 知多少 | 分布式应用运行时

IntroDapr 官方团队已于最近(2021.1.17)正式发布Dapr v1.0,Dapr已正式生产可用,可以部署到自托管环境或 Kubernetes 集群。对于绝大多数开发者来说,想...

2021-02-20 12:19:40 4628

原创 Goodbye 2020,Welcome 2021 | 沉淀 2021

引言2021年,已开启二月的篇章,农历新年也张灯结彩而来,只不过要留守过年。在这辞旧迎新之际,踏入而立之年之时,正是算账的好时候,数一数今年的成长,讲一讲来年的期望,最重要的还是要理一理欠...

2021-02-04 18:46:05 224

原创 Istio 知多少 | 下一代微服务的守护者

1. 引言在写完eShopOnContainers 知多少[12]:Envoy gateways后,就一直想进一步探索Service Mesh,最近刚在极客时间上学完《Service M...

2021-01-10 17:52:15 356

原创 eShopOnContainers 知多少[12]:Envoy gateways

1. 引言在最新的eShopOnContainers 3.0 中Ocelot 网关被Envoy Proxy 替换。下面就来简要带大家了解下Envoy,并尝试梳理下为什么要使用Envoy...

2020-10-19 07:33:15 1086

原创 诊断日志知多少 | DiagnosticSource 在.NET上的应用

1. 引言最近为了解决ABP集成CAP时无法通过拦截器启用工作单元的问题,从小伙伴那里学了一招。借助DiagnossticSource,可以最小改动完成需求。关于DiagnosticSo...

2020-10-10 20:16:28 1009

原创 Orleans 知多少 | Orleans 中文文档上线

Orleans 简介Orleans是一个跨平台框架,用于构建健壮,可扩展的分布式应用程序Orleans建立在.NET开发人员生产力的基础上,并将其带入了分布式应用程序的世界,例如云服务。...

2020-08-29 22:48:03 4172

原创 .NET Core + K8S + Apollo 玩转配置中心

1.引言Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微...

2020-08-20 09:03:06 271

原创 .NET Core + K8S + Loki 玩转日志聚合

Grafana loki1. Intro最近在了解日志聚合系统,正好前几天看到一篇文章《用了日志系统新贵Loki,ELK突然不香了!》,所以就决定动手体验一下。本文就带大家快速了解下Lo...

2020-07-26 13:48:06 1433

原创 五分钟快速搭建Serverless免费邮件服务

1. 引言本文将带你快速基于 Azure Function 和 SendGrid 构建一个免费的Serverless(无服务器)的邮件发送服务,让你感受下Serverless的强大之处。...

2020-07-23 06:19:31 584

原创 eShopOnContainers 知多少[11]:服务间通信之gRPC

1. 引言最近翻看最新3.0 eShopOncontainers源码,发现其在架构选型中补充了 gRPC 进行服务间通信。那就索性也写一篇,作为系列的补充。2. gRPC老规矩,先来理一...

2020-07-10 13:13:38 273

转载 Orleans 源码分析:客户端连接的建立

转载自博客园:【Orleans开胃菜系列2】连接Connect源码简易分析--范存威https://www.cnblogs.com/fancunwei/p/9442469.html简...

2020-07-09 20:04:34 1005

原创 IO 模型知多少 | 代码篇

引言之前的一篇介绍IO 模型的文章IO 模型知多少 -- 理论篇比较偏理论,很多同学反应不是很好理解。这一篇咱们换一个角度,从代码角度来分析一下。socket 编程基础开始之前,我们先来...

2020-05-12 21:04:50 207

原创 IO 模型知多少

1. 引言同步异步I/O,阻塞非阻塞I/O是程序员老生常谈的话题了,也是自己一直以来懵懵懂懂的一个话题。比如:何为同步异步?何为阻塞与非阻塞?二者的区别在哪里?阻塞在何处?为什么会有多种...

2020-04-14 19:38:16 137

原创 ASP.NET Core 反向代理部署知多少

引言最近在折腾统一认证中心,看到开源项目[IdentityServer4.Admin:https://github.com/skoruba/IdentityServer4.Admin]集...

2020-03-01 10:28:39 450

原创 ASP.NET Core 借助 Helm 部署应用至 K8S

前言玩K8S也有一段时间了,借助云服务提供商的K8S控制台,已经可以很方便的快速部署应用至K8S。通过简单的点击,可以一次性帮忙创建K8S 对象:Deployment、Service、I...

2020-02-23 19:52:45 218

原创 Goodbye 2019,Welcome 2020 | 沉淀 2020

引言时间如梭,娃都可以打酱油了。转眼间第一个五年计划,已过了一半。年终总结是个打脸的好地方,曾经夸下的海口,有的真的成了海口。所幸,一切都在按好的方向发展。但乐观背后容易忽略潜...

2019-12-28 06:10:51 146

原创 Orleans 知多少 | 3. Hello Orleans

1. 引言是的,Orleans v3.0.0 已经发布了,并已经完全支持 .NET Core 3.0。所以,Orleans 系列是时候继续了,抱歉,让大家久等了。万丈高楼平地起,这一节我...

2019-10-28 09:22:46 288

原创 集群环境下,你不得不注意的ASP.NET Core Data Protection 机制

引言最近线上环境遇到一个问题,就是ASP.NET Core Web应用在单个容器使用正常,扩展多个容器无法访问的问题。查看容器日志,发现以下异常:System.Security.Cryp...

2019-10-11 11:36:26 393

转载 ASP.NET Core on K8S深入学习(9)Secret & Configmap

本篇已加入《.NET Core on K8S学习实践系列文章索引》,可以点击查看更多容器化技术相关系列文章。01—Secret关于Secret在应用启动过程中需要一些敏感...

2019-09-04 09:32:56 162

原创 .NET Core 使用 K8S ConfigMap的正确姿势

背景ASP.NET Core默认的配置文件定义在 appsetings.json和 appsettings.{Environment}.json文件中。这里面有一个问题就是,在使用容器部...

2019-09-04 09:32:56 382

原创 Orleans 知多少 | 2. 核心概念一览

Orleans 术语解读上面这张图中包含了Orleans中的几个核心概念:GrainSiloOrleans ClusterOrleans Client从这张图,我们应该能理清他们之间的关...

2019-07-20 14:40:03 234

原创 .NET分布式框架 | Orleans 知多少

引言公司物联网项目集成Orleans以支持高并发的分布式业务,对于Orleans也是第一次接触,本文就分享下个人对Orleans的理解。这里先抛出自己的观点:Orleans 是一个支持有...

2019-07-06 10:24:57 410

原创 eShopOnContainers 知多少[10]:部署到 K8S | AKS

1. 引言断断续续,感觉这个系列又要半途而废了。趁着假期,赶紧再更一篇,介绍下如何将eShopOnContainers部署到K8S上,进而实现大家常说的微服务上云。2. 先了解下 Hel...

2019-04-05 20:24:41 143

原创 ASP.NET Core 借助 K8S 玩转容器编排

Production-Grade Container Orchestration - Automated container deployment, scaling, and manag...

2019-03-22 12:16:22 170

原创 eShopOnContainers 知多少[9]:Ocelot gateways

引言客户端与微服务的通信问题永远是一个绕不开的问题,对于小型微服务应用,客户端与微服务可以使用直连的方式进行通信,但对于对于大型的微服务应用我们将不得不面对以下问题:如何降低客户端到后台...

2019-03-05 11:15:30 145

原创 响应式编程知多少 | Rx.NET 了解下

1. 引言An API for asynchronous programming with observable streams.ReactiveX is a combination ...

2019-02-19 09:16:14 139

dnSpy--.NET反编译调试神器

dnSpy--.NET反编译调试神器: 1. 内置包含详细使用指南 2. 内置.NET Framework 4.7.1 3. dnSpy - v5.0.12

2018-12-27

3D文字翻转导航栏flash源文件

3D文字翻转导航栏flash源文件,可自行修改。

2013-06-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除