摘要:JWT(JSON Web Token)是目前最流行的认证方案之一。博客园、各种技术公众号隔三差五就会推一篇JWT相关的文章,真的多如牛毛。但我对JWT有点困惑,今天写出来跟大家探讨探讨,不要喷哈。 JWT原理 本文默认读者已经对JWT有所了解,下面不再详细介绍JWT,只简单提一下。 JWT全称JSO 阅读全文
posted @ 2020-08-30 23:52 Agile.Zhou 阅读(5015) 评论(94) 推荐(28) 编辑
摘要:微服务确实是行业的一个趋势,我自己也在把一些项目往微服务架构迁移。玩微服务架构配置中心是一个绕不过去的东西,有很多大牌的可以选,比如spring-cloud-config,apoll,disconf等等。而我为什么还要造一个轮子呢?一来这些都不是.net实现的,我就想试试用.net core实现一个 阅读全文
posted @ 2020-06-29 16:02 Agile.Zhou 阅读(4991) 评论(79) 推荐(54) 编辑
摘要:最近Blazor热度很高,传说马上就要发布正式版了,做为微软脑残粉,赶紧也来凑个热闹,学习一下。 阅读全文
posted @ 2020-05-09 00:18 Agile.Zhou 阅读(6221) 评论(13) 推荐(20) 编辑
摘要:2020年新年将至,先预祝.Net Core越来越好。 做了这么多年一线开发,经常跟Http打交道。比如调用三方的Webservice,比如集成微信支付的时候服务端发起Prepay支付。特别是现在分布式、微服务大行其道,服务间通讯都离不开http调用。 多年前也造过几个http client的小轮子 阅读全文
posted @ 2020-01-13 01:15 Agile.Zhou 阅读(1586) 评论(9) 推荐(24) 编辑
摘要:AServer是基于ASP.NET Core Kestrel封装的一个超迷你http服务器。它可以集成进你的Core程序里,用来快速的响应Http请求,而不需要集成整个ASP.NET Core MVC 框架。 一:什么是ASever? AServer就像它的名字一样,Just a server,它的 阅读全文
posted @ 2018-10-22 09:54 Agile.Zhou 阅读(3830) 评论(3) 推荐(9) 编辑
摘要:当我们开发一款App的时候,App需要跟后台服务进行通信获取或者提交数据。如果我们没有完善的安全机制则很容易被别用心的人伪造请求而篡改数据。 所以我们需要使用某种安全机制来保证请求的合法。现在最常用的办法是给每个http请求添加一个签名,服务端来验证签名的合法性,如果签名合法则执行响应的操作,如果签 阅读全文
posted @ 2016-09-22 01:23 Agile.Zhou 阅读(12696) 评论(69) 推荐(25) 编辑
摘要:.Net Core 1.0终于发布了,Core的一大卖点就是跨平台。这个跨平台不只是跨平台运行,而且可以跨平台开发。今天抽空研究了下在Mac下如何使用VS Code来开发.NET Core程序,并且调试代码。 1.安装.NET Core 在mac上打开终端: ~$ brew update ~$ br 阅读全文
posted @ 2016-07-08 01:40 Agile.Zhou 阅读(19272) 评论(11) 推荐(7) 编辑
摘要:一:Helios是什么 Helios是一套高性能的Socket通信中间件,使用C#编写。Helios的开发受到Netty的启发,使用非阻塞的事件驱动模型架构来实现高并发高吞吐量。Helios为我们大大的简化了Socket编程,它已经为我们处理好了高并发情况下的解包,粘包,buffer管理等等。 Gi 阅读全文
posted @ 2016-01-14 02:17 Agile.Zhou 阅读(12715) 评论(75) 推荐(60) 编辑
摘要:从Unity到Spring.Net,到Ninject,几年来陆陆续续用过几个IoC框架。虽然会用,但也没有一直仔细的研究过IoC实现的过程。最近花了点时间,下了Ninject的源码,研究了一番,颇有收获。下面我要实现一个最最简单的IoC容器,以让跟我一样的小菜能更好的理解IoC框架的到底为我们做了什 阅读全文
posted @ 2013-10-29 23:46 Agile.Zhou 阅读(4784) 评论(8) 推荐(12) 编辑
摘要:最近因为公司的一些原因,我也开始学习一些 JAVA 的知识。虽然我一直是以 .NET 语言为主的程序员,但是我并不排斥任何其它语言。在此并不讨论 JAVA .NET 的好坏,仅仅是对 .NET 跟 JAVA 程序的编译执行过程进行一些简单的介绍跟比较。因为有些内容还是超出自己原来的认知的,所以整理一 阅读全文
posted @ 2021-07-28 23:52 Agile.Zhou 阅读(2146) 评论(37) 推荐(17) 编辑
摘要:在我们实施微服务之后,服务间的调用变的异常频繁。多个服务之间可能是互相依赖的关系。某个服务出现故障或者是服务间的网络出现故障都会造成服务调用的失败,进而影响到某个业务服务处理失败。某一个服务调用失败轻则造成当前相关业务无法处理;重则可能耗尽资源而拉垮整个应用。为了尽可能的保证我们生产环境的可用性,至 阅读全文
posted @ 2021-07-23 08:49 Agile.Zhou 阅读(1342) 评论(6) 推荐(16) 编辑
摘要:上一次我们介绍了Elastic APM组件。这一次我们继续介绍微服务相关组件配置中心的使用方法。本来打算介绍下携程开源的重型配置中心框架 apollo 但是体系实在是太过于庞大,还是让我爱不起来。因为前面我们已经介绍了使用Consul 做为服务注册发现的组件,那么干脆继续使用 Consul 来作为配 阅读全文
posted @ 2021-07-09 09:32 Agile.Zhou 阅读(2024) 评论(9) 推荐(8) 编辑
摘要:上一次我们介绍了Seq日志聚合组件。这次要给大家介绍的是Elastic APM ,一款应用程序性能监控组件。APM 监控围绕对应用、服务、容器的健康监控,对接口的调用链、性能进行监控。在我们实施微服务后,由于复杂的业务逻辑,服务之间的调用会像蜘蛛网一样复杂。有了调用链监控后服务之间的调用可以用图像的 阅读全文
posted @ 2021-06-29 15:16 Agile.Zhou 阅读(4019) 评论(14) 推荐(19) 编辑
摘要:上一次我们介绍并演示了如果使用 Consul 做为我们微服务的注册中心,来实现服务的注册与发现。那么本次我们讲会演示如何做日志聚合。日志聚合比较常用的有 ELK 等,但是这次我想要介绍的是一款比较小众的日志聚合工具 - Seq 。 日志聚合 日志是我们写程序离不开的一个东西。在我们排查问题的时候日志 阅读全文
posted @ 2021-06-24 09:12 Agile.Zhou 阅读(3579) 评论(20) 推荐(12) 编辑
摘要:上一次我们介绍了 Ocelot 网关的基本用法。这次我们开始介绍服务注册发现组件 Consul 的简单使用方法。 服务注册发现 首先先让我们回顾下服务注册发现的概念。 在实施微服务之后,我们的调用都变成了服务间的调用。服务间调用需要知道IP、端口等信息。再没有微服务之前,我们的调用信息一般都是写死在 阅读全文
posted @ 2021-06-18 16:43 Agile.Zhou 阅读(2979) 评论(11) 推荐(21) 编辑
摘要:AgileConfig 当初是设计给我自己用的一个工具,所以只设置了一道管理员密码,没有用户的概念。但是很多同学在使用过后都提出了需要多用户支持的建议。整个团队或者整个公司都使用同一个密码来管理非常的不方便。 今天 AgileConfig 1.3.0 版本终于支持了多用户,以及简单的权限管理。用户跟 阅读全文
posted @ 2021-06-15 08:52 Agile.Zhou 阅读(1801) 评论(12) 推荐(15) 编辑
摘要:上一次我们通过一张架构图(.Net Core with 微服务 - 架构图)来讲述了微服务的结构,分层等内容。从现在开始我们开始慢慢搭建一个最简单的微服务架构。这次我们先用几个简单的 web api 项目以及 ocelot 网关项目来演示下网关是如何配置,如何工作的。 Ocelot 网关 Ocelo 阅读全文
posted @ 2021-06-04 07:57 Agile.Zhou 阅读(3262) 评论(18) 推荐(18) 编辑
摘要:上一次我们简单介绍了什么是微服务(.NET Core with 微服务 - 什么是微服务 )。介绍了微服务的来龙去脉,一些基础性的概念。有大佬在评论区指出说这根本不是微服务。由于本人的能力有限,大概也只能理解到这个层次。先不管它到底是不是微服务吧,既然开篇了,那就硬着头皮把这个系列写完。我想不管是对 阅读全文
posted @ 2021-05-21 08:40 Agile.Zhou 阅读(4062) 评论(25) 推荐(21) 编辑
摘要:微服务是这几年最流行的架构,说起架构不提微服务都不好意思跟人家打招呼。最近想要再梳理一下关于微服务的知识,并且结合本人的一些实践经验来做一些总结与分享。前面会分享一些概念性的东西,后面也会使用.net来实践,一步步完成一个简单的微服务架构的小demo。 什么是微服务 其实微服务并没有统一的标准定义。 阅读全文
posted @ 2021-05-10 01:00 Agile.Zhou 阅读(5644) 评论(32) 推荐(45) 编辑