摘要:
一. 说明 总结各种解决方案 二. 目录 阶段三:解决方案代码实操落地 第一节:连续登录失败锁定 和 利用redis实现滑动窗口限流 第二节:基于Token和Session的实现单服务混合鉴权方案 第三节:基于Redis来实现分布式锁的封装和多种应用 第四节:多种判重方案落地(基于DB、基于缓存、基
阅读全文
posted @ 2023-08-10 08:20
Yaopengfei
阅读(257)
推荐(0)
摘要:
一. 前言 需要准备的东西: 1. “科学”上网 2. chatgpt账号 (自己注册 或者 买个现成) PS:自己注册的话需要用国外的手机号接受验证码,可以使用 https://sms-activate.org/cn/ 这个网站进行接受。 需要时刻注意: 哪些国家被封了,以便切换“科学”上网的地址
阅读全文
posted @ 2023-05-26 10:41
Yaopengfei
阅读(478)
推荐(0)
摘要:
一. 说明 工作需要,最近学习下react 官网:https://react.docschina.org/ https://zh-hans.reactjs.org/ 二. React简介 1. 说明 用于构建用户界面的 JavaScript 库 ( 官网: https://react.docschi
阅读全文
posted @ 2023-03-28 08:16
Yaopengfei
阅读(250)
推荐(0)
摘要:
一. 说明 常用的一些软件使用技巧、以及一些常用的配置 二. 目录 阶段一:基本使用和配置 第一节:修改Nuget的下载位置 第二节:代码片段的制作(以VSCode、HbuilderX为例) 第三节:Postman常用技巧(全局/环境变量、常用脚本代码、关联案例、断言、参数化) 第四节:Git的概述
阅读全文
posted @ 2023-03-14 14:05
Yaopengfei
阅读(237)
推荐(0)
摘要:
一. 说明 uni-app官网:https://uniapp.dcloud.net.cn/ 微信小程序官网:https://developers.weixin.qq.com/miniprogram/dev/framework/ 官方文档非常详细,该系列以微信小程序为主线,梳理一些最常用的技术点,其它
阅读全文
posted @ 2023-01-05 08:22
Yaopengfei
阅读(389)
推荐(0)
摘要:
一. 简介 1. MongoDB 官网: https://www.mongodb.com/ 官网文档:https://www.mongodb.com/zh-cn/docs/manual/introduction/ .Net 使用文档【MongoDB.Driver】:https://www.mongo
阅读全文
posted @ 2022-08-25 15:19
Yaopengfei
阅读(926)
推荐(0)
摘要:
一. 简介 1. RabbitMq 官网地址:https://www.rabbitmq.com/ 2. Kafka 官网地址:http://kafka.apache.org/ 3. RocketMq 官网地址: 4. Nginx http://nginx.org/en/download.html h
阅读全文
posted @ 2022-06-29 22:00
Yaopengfei
阅读(638)
推荐(0)
摘要:
一. 简介 历时4个月,边学习,边整理 ES6-ES11可参考之前的系列:https://www.cnblogs.com/yaopengfei/p/14291045.html 后续计划从面试的角度整理一下JS专题,相对侧重于基础 【已完成】 二. CSS系列 阶段一:CSS基础总结 第一节:字体、文
阅读全文
posted @ 2022-01-04 09:13
Yaopengfei
阅读(594)
推荐(1)
摘要:
一. 简介 1. 说明 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用
阅读全文
posted @ 2021-09-02 17:51
Yaopengfei
阅读(2965)
推荐(0)
摘要:
一. ES简介 1. ECMAScript (1). 简介 ES 的全称是 ECMAScript , 它是由 ECMA 国际标准化组织,制定的一项脚本语言的标准化规范。 每一次标准的诞生都意味着语言的完善,功能的加强。JavaScript语言本身也有一些令人不满意的地方。 变量提升特性增加了程序运行
阅读全文
posted @ 2021-01-18 07:48
Yaopengfei
阅读(1365)
推荐(0)
摘要:
一. 框架说明 1. 框架定位 该框架定位于后台系统和Api接口对接,适用于中小型项目的快速开发,针对不同场景说明: (1). 如果你只想简单的做个后台管理,那么该框架适合你。 (2). 如果你想做CRM、OA、电商后台等,那么该框架适合你。 (3). 如果你想学习一下.NetCore相关,那么该框
阅读全文
posted @ 2020-12-09 17:05
Yaopengfei
阅读(3094)
推荐(1)
摘要:
一. 整体介绍 1. 背景和工具介绍 (1). MySQL的地位 MySQL 在整个数据库图谱中占有非常重要的地位。据全球著名分析公司 Gartner 提供的数据,已有超过 63% 的用户已经部署或者将要部署 MySQL。 目前国内大部分互联网公司都选择 MySQL 数据库来支撑自己的业务,例如,你
阅读全文
posted @ 2020-11-10 21:35
Yaopengfei
阅读(1359)
推荐(1)
摘要:
一. Redis整体介绍 1. NOSQL介绍 1.什么是NOSQL NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。 随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SN
阅读全文
posted @ 2020-10-24 19:15
Yaopengfei
阅读(1653)
推荐(1)
摘要:
一. 业务背景 1. 计划 以商城项目为基础,剖析秒杀功能、购物车功能等 先把单体架构优化到极致,然后向微服务架构转变,并分析当中遇到的各种问题。 2. 用到的技术栈和工具 服务器:centos8 数据库:MySQL 5.7 集群 基础框架:Asp.Net Core +EF Core + Dappe
阅读全文
posted @ 2020-09-29 15:14
Yaopengfei
阅读(8742)
推荐(5)
摘要:
一. Linux简介 1. 什么是linux 世界上不仅只有一个 Windows 操作系统,还有 Linux、mac、Unix 等操作系统。桌面操作系统下 Windows 是霸主,而 Linux 的桌面操作系统用的人很少,因为 Windows 有的很多软件在 Linux 下没有或者很弱;服务器操作系
阅读全文
posted @ 2020-09-01 07:35
Yaopengfei
阅读(2577)
推荐(1)
摘要:
一. 架构演变历史 1. 集中式开发 最初的大型计算机使用打孔卡,并且大多数计算都在批处理过程中进行。 2. CS架构 客户端/服务器体系结构将大多数逻辑放在服务器端,并将某些处理放在客户端上。 3. BS三层架构 Web浏览器成为客户端软件,而Web和应用程序服务器托管所有处理和逻辑。 4. 面向
阅读全文
posted @ 2020-05-13 22:05
Yaopengfei
阅读(4376)
推荐(10)
摘要:
一. 简介 1. 数据库基本概念 (1). 数据库(DataBase:DB):数据库是是按照数据结构来组织、存储和管理数据的仓库。 >存储和管理数据的仓库. (2). 数据库管理系统(Database Management System:DBMS):是专门用于管理数据库的计算机系统软件。数据库管理系
阅读全文
posted @ 2020-03-30 10:06
Yaopengfei
阅读(1602)
推荐(1)
摘要:
目录 阶段一 第一节:时间复杂度和空间复杂度 第二节:线性表→顺序表→链表 逐个击破 第三节:从多个角度分析顺序表、链表的区别和特点 第四节:顺序表剖析及利用数组手撸“动态数组ArryList” 第五节:链表剖析及自己手撸“单链表”实现基本操作(初始化、增、删、改等) 第六节:手撸“循环链表”及约瑟
阅读全文
posted @ 2020-03-23 14:32
Yaopengfei
阅读(1001)
推荐(0)
摘要:
一. 说明 从最初的EFCore2.0 → EFCore3.0 → EFCore3.1 → EFCore5.x→ EFCore6.x→ EFCore7.x→ EFCore7.x, 目前最新8.x,已完结 二. 系列章节 第一节:EF Core简介和CodeFirst和DBFirst两种映射模式(以S
阅读全文
posted @ 2019-04-07 17:19
Yaopengfei
阅读(3242)
推荐(5)
摘要:
一. 说明 持续更新,从2.x版本开始编写,经历了3.x版本,5.x版本、6.x版本、7.x版本、8.x版本,目前最新的是8.x版本,已完结 Core9.0 进行中。。。。 二. 系列章节 第一节:.Net Core环境的安装和常用指令 第二节:SSL证书的申请、配置(IIS通用)及跳转Https请
阅读全文
posted @ 2019-03-13 08:11
Yaopengfei
阅读(4396)
推荐(5)
摘要:
一. 简介 1 背景 A. 用户下单了,但是迟迟不支付,可能占用库存资源,超时需要被取消(释放库存)。 B. 用户下单了,且已经成功支付了,但订单状态一直是待支付的,下面两种情况都需要被处理。 (1) 支付宝/微信的原因,导致支付回调通知没有发送,用户订单状态迟迟无法修改。 (2) 回调通知
阅读全文
posted @ 2025-09-07 20:02
Yaopengfei
阅读(6)
推荐(0)
摘要:
一. 前言 1. 什么是责任链模式? 构建一条处理链,使多个对象可以处理同一个请求,直到该请求被处理为止 2. 场景 (1) 审批场景:不同天数的假期需要不同级别的领导审批。(如多级审批流程:组长→部门经理→总经理) (2) Asp.Net Core中间件管道:HTTP 请求需要经过多步处理(如认证
阅读全文
posted @ 2025-08-20 20:54
Yaopengfei
阅读(11)
推荐(0)
摘要:
一. 前言 1. 什么是幂等性? 多次执行同一操作,结果与执行一次完全一致,不会产生额外的副作用。 2. 典型场景分析 (1) 如何防止用户重复点击? (2) 如何防止用户重复下单? 诸如此类问题,都是考察幂等性的。 二. 删除Token【必会】 1. 方案说明 进入“商品详情页先请求获取 toke
阅读全文
posted @ 2025-08-15 09:24
Yaopengfei
阅读(17)
推荐(0)
摘要:
一. 前言 1. 什么时候扣减库存?有何弊端? 方案1:下单时扣减库存 优势: (1) 能防止超卖 (有效避免多人同时下单导致超卖问题) (2) 实时性强:下单就扣库存,确保库存及时更新 弊端: (1).取消订单问题:如果用户取消订单或超时未支付,需要额外处理库存回滚的逻辑。 (2).恶意占用库存:
阅读全文
posted @ 2025-08-07 09:25
Yaopengfei
阅读(41)
推荐(0)
摘要:
一. 基于DLS的高级操作 1 查询所有 说明: GET /{索引库名}/_search:其中的_search是固定路径,不能修改 例如,我们以最简单的无条件查询为例,无条件查询的类型是:match_all,因此其查询语句如下: PS:默认Kibana中显示10条数据,可以指定size,显示需要的数
阅读全文
posted @ 2025-07-18 15:38
Yaopengfei
阅读(44)
推荐(0)
摘要:
一. 初始化配置 1 事先准备 (1) 类库: Elastic.Clients.Elasticsearch 8.18.3 (2) 初始化注册client builder.Services.AddSingleton<ElasticsearchClient>(sp => { var configurat
阅读全文
posted @ 2025-07-14 16:28
Yaopengfei
阅读(132)
推荐(0)
摘要:
一. 索引库操作 (Index就类似数据库表,Mapping映射就类似表的结构。我们要向es中存储数据,必须先创建Index和Mapping) 1.创建索引和映射 (1) 基本语法 请求方式:PUT 请求路径:/索引库名,可以自定义 请求参数:mapping映射 (2) 格式 PUT /索引库名称
阅读全文
posted @ 2025-07-12 11:41
Yaopengfei
阅读(21)
推荐(0)
摘要:
一. 8.x版本--docker安装 1. 版本说明 ElasticSearch 8.18.3 【20250525发布】 Kibana 8.18.3 IK分词 8.18.3 2. ES安装 (1) 下载镜像 docker pull docker.elastic.co/elasticsearch/el
阅读全文
posted @ 2025-07-08 09:18
Yaopengfei
阅读(424)
推荐(0)
posted @ 2025-07-08 09:17
Yaopengfei
阅读(4)
推荐(0)
摘要:
一. 说明 1. 什么是Token自动续签? Token自动续签是指在用户使用应用程序时,能够在Token即将过期时(或已过期)自动延长其有效时间,从而保持用户的登录状态而无需重新登录。 (参考之前bk:第三十节:Asp.Net Core中JWT刷新Token解决方案 ) 2. 业内主流方案有哪些
阅读全文
posted @ 2025-06-17 19:43
Yaopengfei
阅读(263)
推荐(0)
摘要:
一. 前言 1. 背景 (1) 船员系统主要有船管公司 和 船员公司,每个公司下都有很多船员,现在需要对船员进行积分排名。 (2) 主要用于: 薪酬激励、船员晋升、任务分配、需求培训 等等。 2. 积分规则 (1).需要 主动 或 被动的将船员加入"积分排行体系",记录加入时间。 (2).工龄核算:
阅读全文
posted @ 2025-06-15 20:38
Yaopengfei
阅读(7)
推荐(0)
摘要:
一. 二. 三. ! 作 者 : Yaopengfei(姚鹏飞) 博客地址 : http://www.cnblogs.com/yaopengfei/ 声 明1 : 如有错误,欢迎讨论,请勿谩骂^_^。 声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权
阅读全文
posted @ 2025-06-10 18:13
Yaopengfei
阅读(16)
推荐(0)
摘要:
一. 详细步骤 1 创建目录结构 mkdir -p /root/consul/{data,config} 2 创建配置文件 (1) 这里采用 .hcl格式的配置文件,因为这种格式支持注释 (2) 配置文件位于 /root/consul/config/consul.hcl 注:下面的 advertis
阅读全文
posted @ 2025-06-04 08:17
Yaopengfei
阅读(62)
推荐(0)
摘要:
一. 前言 1 目标需求 (1) 需要实现:token校验(非空、准确性、是否过期)、冻结判断、顶下线判断(单点登录)/手动让token失效 (2) 完整的权限校验 A. 第一层:token的各种校验 B. 第二层:冻结校验 C. 第三层:顶下线校验/手动让token失效校验 D. 第四层:一级鉴权
阅读全文
posted @ 2025-05-29 14:27
Yaopengfei
阅读(28)
推荐(0)
摘要:
一. 说明 1. 常见场景 A 注册的时候手机号判重 【本节以这个为例】 B 注册的时候昵称判重 C 商品详情页请求的时候,利用对商品id判重 (商品的数量是海量的) 2 常见方案 A 可以直接去数据中查 B 本地缓存 或 redis中 同步一份 (海量数据的时候会占用内存空间) C 数据量非常大,
阅读全文
posted @ 2025-05-08 09:37
Yaopengfei
阅读(34)
推荐(0)
摘要:
一. 说明 1 目标 (1) 利用redis封装分布式锁 (2) 支持直接调用(加锁和释放锁) 和 特性的形式 (3) 支持重试机制 2 核心原理 (1) 加锁 使用CSRedisCore包中的 SetAsync(key, value, (int)expiration.TotalSeconds, R
阅读全文
posted @ 2025-05-07 15:08
Yaopengfei
阅读(80)
推荐(0)
摘要:
一. 复习 1 Cookie、Session、Token的区别? 2 登录中,Token和Session作用是什么? Token:主要用来鉴权的,里面可以存放一些非敏感信息,比如用户昵称、账号等 Session:存放敏感信息,比如权限,或者一些实时性要求较高的数据。 3 Token是否需要存放到Re
阅读全文
posted @ 2025-04-29 07:37
Yaopengfei
阅读(62)
推荐(0)
摘要:
一. 连续登录失败锁定 1. 需求分析 5分钟内连续登录出错3次(第4次出错直接锁定),账号锁定10分钟 2. 原理剖析 (1) 技术储备 【zremrangebyscore key min max】移除有序集 key 中,所有 score 值介于 min 和 max 之间的成员 【zadd key
阅读全文
posted @ 2025-04-17 14:11
Yaopengfei
阅读(98)
推荐(1)
posted @ 2025-04-15 08:44
Yaopengfei
阅读(0)
推荐(0)
posted @ 2025-04-08 09:58
Yaopengfei
阅读(0)
推荐(0)
摘要:
一. 说明 (和上一节中部署多个节点,负载均衡相同,这一节主要是基于docker compose来部署) 1 需求说明 使用docker部署3个API,然后使用nginx负载均衡轮询策略,将请求转发到前面的3个Api端口,然后再部署2个前端项目 A. Api部署3个docker容器,服务器的对外端口
阅读全文
posted @ 2025-03-17 08:30
Yaopengfei
阅读(116)
推荐(0)
摘要:
一. 说明 1. 环境 服务器:阿里云的 Centos Stream 9.0 数据库:SQLServer 2014 (位于单独的DB服务器) 必备运行环境:aspnetcore-runtime-9.0 前端挂载工具:nginx 1.27.4 Api部署工具:采用自托管的方式部署,且发布成服务运行 2
阅读全文
posted @ 2025-03-12 19:43
Yaopengfei
阅读(117)
推荐(0)
摘要:
一. 环境准备 1. 环境 服务器:阿里云的 Centos Stream 9.0 数据库:SQLServer 2014 (位于单独的DB服务器) docker环境:27.5.1 2 必备镜像 nginx:最新版 dotnet: mcr.microsoft.com/dotnet/aspnet:9.0
阅读全文
posted @ 2025-03-11 15:51
Yaopengfei
阅读(69)
推荐(0)
摘要:
一. 基础升级 1 将各个类库、项目都升级为 .Net9.0 2.AutoFac升级 【AutoFac 8.0.0】 升级到 【8.2.0】 【Autofac.Extensions.Depend 9.0.0】 升级到 【10.0.0】 3.基本库升级 【System.Text.Json 8.0.4】
阅读全文
posted @ 2025-03-08 20:07
Yaopengfei
阅读(23)
推荐(0)
posted @ 2025-03-06 07:53
Yaopengfei
阅读(6)
推荐(0)
摘要:
一. compose v2简介 关于 docker compose 的详相关说明,可以查看之前的旧文章,不影响理解:https://www.cnblogs.com/yaopengfei/p/13672708.html 新版说明: 从 Docker 20.10 版本开始,Docker Compose
阅读全文
posted @ 2025-02-27 11:46
Yaopengfei
阅读(290)
推荐(0)
摘要:
一. 二. 三. ! 作 者 : Yaopengfei(姚鹏飞) 博客地址 : http://www.cnblogs.com/yaopengfei/ 声 明1 : 如有错误,欢迎讨论,请勿谩骂^_^。 声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权
阅读全文
posted @ 2025-02-26 09:51
Yaopengfei
阅读(28)
推荐(0)
摘要:
一. Swagger配置 (说明:core9.0中默认删除swagger配置,如果需要,需要自行安装,具体的写法和core8.0的写法有一些区别,下面以Asp.net Core MVC 9.0 为例,WebApi配置相同) 1. 安装程序集 通过Nuget安装【Swashbuckle.AspNetC
阅读全文
posted @ 2025-02-12 20:33
Yaopengfei
阅读(452)
推荐(1)
posted @ 2025-02-10 15:14
Yaopengfei
阅读(0)
推荐(0)
posted @ 2025-02-06 07:35
Yaopengfei
阅读(3)
推荐(0)