随笔分类 -  .net core

摘要:概念 之前写过Ocelot网关,无意之中看到了微软官方有一个Yarp网关(官网),这里记录一下。 对比两者: Yarp: 1. 高性能,灵活定制反向代理框架 2. 主要是反向代理、路由、负载均衡、健康检查、缓存等核心代理功能 3. 几乎所有功能都可以自己编写中间件或扩展,内置功能不多,但是扩展性强 阅读全文
posted @ 2025-08-28 15:01 Joni是只狗 阅读(691) 评论(0) 推荐(0)
摘要:问题: 当我们使用画图之类的功能可能会引用System.Drawing.Common,或者间接引用它,由于它是依赖Windows系统,所以我们在Windows是正常的,放在Linux就会出现类似于下面这种错误 System.TypeInitializationException: The type 阅读全文
posted @ 2025-01-09 16:59 Joni是只狗 阅读(1002) 评论(0) 推荐(0)
摘要:专有名词概念 标签(Labels):预测列,需要预测的内容 特征(Features):用于帮助预测标签的列 模型(Model):模型是通过训练数据学习到的机器学习算法。它可以用来预测未知数据的标签 官方地址:ML.NET |专为 .NET 设计的机器学习 (microsoft.com) 准备环境 必 阅读全文
posted @ 2024-01-02 15:24 Joni是只狗 阅读(721) 评论(0) 推荐(0)
摘要:部署 Elasticsearch 官方地址 ,这里只需要装ES 和Kibana 。 Serilog 会直接把数据写入ES,绕开了 Logstash,所以不需要装Logstash Elasticsearch 部署 1. 方便后面集群通信,先创建网络 docker network create elas 阅读全文
posted @ 2023-11-15 16:27 Joni是只狗 阅读(1213) 评论(1) 推荐(1)
摘要:Polly 是一个 .NET 弹性和瞬态故障处理库,允许开发人员以流畅和线程安全的方式表达重试、断路器、超时、隔板隔离、速率限制和回退等策略。 查看源码或者一些基础用法点击了解详情, 如果想更深入的了解,点击进入官网。 polly提供的几种弹性策略: 普通用法 引用NuGet包: Install-P 阅读全文
posted @ 2023-02-15 16:28 Joni是只狗 阅读(329) 评论(0) 推荐(0)
摘要:概念 什么是事件 事件就是指事物状态的变化,每一次事物变化的结果都称作为事件 什么是事件总线 就是用来管理所有的事件的一种机制就称作为事件总线 包括事件发布,事件存储,事件订阅,事件处理的统称 作用: 事件总线是一种机制,它允许不同的组件彼此通信而不彼此了解。 组件可以将事件发送到Eventbus, 阅读全文
posted @ 2023-02-15 16:27 Joni是只狗 阅读(2118) 评论(2) 推荐(3)
摘要:概念 什么是事务 事务是由一组操作组成的一个工作单元。 事务特性 原子性:事务内部的一组操作要么同时成功,要么同时失败 隔离性:不同事务之间是互相不影响的 一致性:事务内部一组操作,各自操作产生的结果数据,要能够保证都是预期的状态 持久性:事务内部一组操作,各个操作产生的数据要能够持久的效应 什么是 阅读全文
posted @ 2023-02-15 16:26 Joni是只狗 阅读(2680) 评论(1) 推荐(1)
摘要:概念 什么是配置中心 配置是用来动态修改程序执行的一种行为的机制,实现热更新 为什么要使用配置中心 安全性:配置跟随源代码保存在代码库中,容易造成配置泄漏。时效性:修改配置,需要重启服务才能生效。局限性:无法支持动态调整:例如日志开关、功能开关。因此,分布式配置中心应运而生! 现阶段主流的配置中心类 阅读全文
posted @ 2023-02-15 16:26 Joni是只狗 阅读(1064) 评论(0) 推荐(0)
摘要:为什么集成在Ocelot中 在上一篇文章中,我们并没有将认证授权集成在Ocelot中,在生产环境中,如果我们每个服务都添加了认证授权,那么在实际部署中肯定会生成很多的配置,就会相对于麻烦。 所以我们就把IdentityServer4加到网关中,客户端的请求通过网关就会进行身份证验证,当网关的身份验证 阅读全文
posted @ 2023-02-15 16:25 Joni是只狗 阅读(388) 评论(0) 推荐(0)
摘要:身份验证、授权 什么是身份认证 身份认证是指当客户端访问服务端资源时,验证客户端是否合法的一种机制 什么是授权 授权就是指当客户端经过身份认证后,能够有限的访问服务端资源的一种机制 为什么要使用身份验证和授权 为了保证服务端资源的安全,我们要理解必须从真实项目中去理解 身份认证和授权方式有哪些 ​ 阅读全文
posted @ 2023-02-15 16:25 Joni是只狗 阅读(2729) 评论(1) 推荐(1)
摘要:如果不了解JWT可以先了解这篇文章 。 这里主要是来记录一下怎样使用Jwt 自己来签发和刷新Token,很多地方不符合实际使用,只是为了在这里测试达到效果,正式使用根据实际情况修改代码 1. 添加Nuget引用 Microsoft.AspNetCore.Authentication.JwtBeare 阅读全文
posted @ 2022-03-27 14:07 Joni是只狗 阅读(1448) 评论(2) 推荐(0)
摘要:前言 这里是基于 AddOAuth 实现了微信客户端三方网页授权实现的登陆(网站的微信扫码登录没有找到测试账号,需要添加应用才能演示,想要实现网站扫码登录,只能查看官方文档),如果不清楚 AddOAuth , 请查看 之前的文章 。如果不想基于 AddOAuth实现,可以看文章最后的备注,虽然没有代 阅读全文
posted @ 2022-03-26 16:56 Joni是只狗 阅读(3437) 评论(0) 推荐(0)
摘要:官方文档:https://docs.microsoft.com/zh-cn/aspnet/core/mvc/controllers/filters?view=aspnetcore-5.0 通过使用 ASP.NET Core 中的筛选器,可在请求处理管道中的特定阶段之前或之后运行代码。 内置筛选器处理 阅读全文
posted @ 2022-03-25 14:01 Joni是只狗 阅读(634) 评论(0) 推荐(0)
摘要:微软官方自定义中间件文档:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/middleware/write?view=aspnetcore-5.0#per-request-middleware-dependencies 1. 中间件 阅读全文
posted @ 2022-03-23 17:15 Joni是只狗 阅读(436) 评论(0) 推荐(1)
摘要:例如:想区分开发环境和生产环境不同的配置文件(比如说本地测试数据库和正式的数据库等等),这个时候就会根据不同的环境配置不同的文件,也可以用多个startup来分离不同的环境,这里只是分离了配置文件。 当然个人觉得如果在Linux上面部署直接通过docker挂载配置文件会比较好,这里只是记录一下有这种 阅读全文
posted @ 2022-03-23 10:11 Joni是只狗 阅读(431) 评论(0) 推荐(1)
摘要:官网介绍:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/http-requests?view=aspnetcore-5.0 引入NuGet包(涉及到策略才引用) Microsoft.Extensions.Http.Polly ap 阅读全文
posted @ 2022-03-21 15:27 Joni是只狗 阅读(390) 评论(0) 推荐(0)
摘要:在.net 如果需要用到认证授权,第三方登录,肯定离不开 AddAuthentication(),他的实现就是AuthenticationHandler,如果是需要添加自定义认证就可以去重写AuthenticationHandler,尽管有些认证我们没有看到服务注入AddAuthentication 阅读全文
posted @ 2022-01-29 15:29 Joni是只狗 阅读(2497) 评论(0) 推荐(0)
摘要:微软提供了sdk,有相关实例代码,可以直接去下载运行看看 1. 配置Microsoft Azure客户端 https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade 我这里已经配置好了 配置重定 阅读全文
posted @ 2021-12-28 17:38 Joni是只狗 阅读(841) 评论(0) 推荐(0)
摘要:这里是用的现在最新的.net 6.0 ,其他版本都差不多,我这里不是在创建项目那里添加身份验证,而是基于没有身份验证后期添加进去的。 可以去官网上面看,都有相关的文档:https://docs.microsoft.com/zh-cn/aspnet/core/security/authenticati 阅读全文
posted @ 2021-12-22 17:24 Joni是只狗 阅读(1768) 评论(2) 推荐(0)
摘要:1. 将认证添加到服务中 builder.Services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme) .AddCookie(options => { //登入地址 options.LoginPath = 阅读全文
posted @ 2021-12-21 14:14 Joni是只狗 阅读(1488) 评论(0) 推荐(0)