.NetCore

高并发解决方案orleans实践

开具一张图,展开来聊天。有从单个服务、consul集群和orleans来展开高并发测试一个小小数据库并发实例。 首先介绍下场景,创建一个order,同时去product表里面减掉一个库存。很简单的业务但是遇到并发问题在项目中就很头痛。 由于内容比较多,简单介绍了。 对外的接口很简单,客户端代码如下, ... »

基于.NetCore开发博客项目 StarBlog - (25) 图片接口与文件上传

前言 上传文件的接口设计有两种风格,一种是整个项目只设置一个接口用来上传,然后其他需要用到文件的地方,都只存一个引用ID;另一种是每个需要文件的地方单独管理各自的文件。这俩各有优劣吧,本项目中选择的是后者的风格,文章图片和照片模块又要能CRUD又要批量导入,还是各自管理文件比较好。 图片接口 说会正 ... »

基于.NetCore开发博客项目 StarBlog - (22) 开发博客文章相关接口

前言 本文介绍博客文章相关接口的开发,作为接口开发介绍的第一篇,会写得比较详细,以抛砖引玉,后面的其他接口就粗略带过了,着重于WebApi开发的周边设施。 涉及到的接口:文章CRUD、置顶文章、推荐文章等。 开始前先介绍下AspNetCore框架的基础概念,MVC模式(前后端不分离)、WebApi模 ... »

计算器之策略

设计模式是面向对象的具体表现和实践。或许哪天感觉面向对象理解差不多了,嘴里也不用记挂着设计模式这个玩意儿,我只能通过反复学习设计模式以加深理解面向对象。 下面复习策略模式,较常用,以计算器为例,写起来就有感觉了。 第一步定义一下策略, public interface ICalculate { de ... »

Abp.Zero 手机号免密登录验证与号码绑定功能的实现(一):验证码模块

这是一篇系列博文,我将使用Abp.Zero搭建一套集成手机号免密登录验证与号码绑定功能的用户系统: Abp.Zero 手机号免密登录验证与号码绑定功能的实现(一):验证码模块 Abp.Zero 手机号免密登录验证与号码绑定功能的实现(二):改造Abp默认实现 Abp.Zero 手机号免密登录验证与号 ... »

JWT中token的理解

今天我们来聊一聊关于JWT授权的事情。 JWT:Json Web Token。顾名思义,它是一种在Web中,使用Json来进行Token授权的方案。 既然没有找好密码,token是如何解决信任问题的呢? 解决信任问题,只需要解决两个问题即可: token是不是来自我信任的机构颁发 token中的信息 ... »

基于.NetCore开发博客项目 StarBlog - (19) Markdown渲染方案探索

前言 笔者认为,一个博客网站,最核心的是阅读体验。 在开发StarBlog的过程中,最耗时的恰恰也是文章的展示部分功能。 最开始还没研究出来如何很好的使用后端渲染,所以只能先用Editor.md组件做前端渲染,过渡一下。前端渲染我是不满意的,因为性能较差,页面加载出来还会闪一下,有割裂感,影响体验。 ... »

AspNetCore中 使用 Grpc 简单Demo

为什么要用Grpc 跨语言进行,调用服务,获取跨服务器调用等 目前我的需要使用 我的抓取端是go 写的 查询端用 Net6 写的 导致很多时候 我需要把一些临时数据写入到 Redis 在两个服务器进行处理 参考地址: 哔哩哔哩杨旭大佬:https://www.bilibili.com/video/B ... »

基于.NetCore开发博客项目 StarBlog - (18) 实现本地Typora文章打包上传

前言 九月太忙,只更新了三篇文章,本来这个功能是从九月初就开始做的,结果一直拖到现在国庆假期才有时间完善并且写文章~ 之前我更新了几篇关于 Python 的文章,有朋友留言问是不是不更新 .Net 了,那肯定不能啊,我只能说**「我 全 都 要」**,所以我反手就更新了一篇Asp-Net-Core开 ... »

.NETCore基于RabbitMQ实现延时队列的两方法

目录 前言 实现延时队列的两种方式 利用rabbitmq死信队列x-dead-letter-exchange和x-dead-letter-routing-key .NETCore实现方式 rabbitmq通过安装插件的形式实现(推荐) .NET Core 实现 第一种方式的缺陷以及解决方案 »

aspnetcore6.0源代码编译调试

虽然编译源码折腾了几个时间(卡在restore),最后还是跑起来了aspnetcore6.0mvc源码项目,下面说步骤,前提是网络能连外,对于不能连外的懒得折腾。 第一步 电脑找个地克隆下GitHub上的源码下来 git clone --recursive https://github.com/do ... »

微软Azure配置中心 App Configuration (二):Feature Flag 功能开关特性

写在前面 Web服务开发过程中我们经常有这样的需求: 某些功能我必须我修改了配置才启用,比如新用户注册送券等; 某个功能需到特定的时间才启用,过后就失效,比如春节活动等; 某些功能,我想先对10%的用户开放,验证没问题后再逐步全量开放等; 这就是功能开关。 日常开发中功能开关我们一般是写到配置文件里 ... »

NetCore路由的Endpoint模式

IdentityServer里有各种Endpoint,如TokenEndpoint,UserInfoEndpoint,Authorize Endpoint,Discovery Endpoint等等。Endpoint从字面意思来看是“终端节点"或者“终节点”的意思。无独有偶NetCore的路由也有En ... »

.NET 6学习笔记(4)——解决VS2022中Nullable警告

很多小伙伴在升级到Visual Studio 2022后发现,如果我们去新建一个.NET 6的项目,和原先VS2019中一摸一样的写法,却会出现CS8618 Non-nullable property或者其他可能为null的警告。虽然不影响代码的编译和运行,却让人心里不踏实。这是因为VS2019除了 ... »

ExcelPatternTool: Excel表格-数据库互导工具

ExcelPatternTool Excel表格-数据库互导工具 介绍: 指定Pattern文件-一个规则描述的json文档,基于此规则实现Excel表格与数据库之间的导入导出,校验等功能。 特点: 小巧,轻量化的命令行工具 基于json文档的配置 支持Excel97-2003(xls)与Excel ... »