接口防刷!利用redisson快速实现自定义限流注解

问题: 在日常开发中,一些重要的对外接口,需要加上访问频率限制,以免造成资��损失。 如登录接口,当用户使用手机号+验证码登录时,一般我们会生成6位数的随机验证码,并将验证码有效期设置为1-3分钟,如果对登录接口不加以限制,理论上,通过技术手段,快速重试100000次,即可将验证码穷举出来。 解决思

论如何直接用EF Core实现创建更新时间、用户审计,自动化乐观并发、软删除和树形查询(上)

前言 数据库并发,数据审计和软删除一直是数据持久化方面的经典问题。早些时候,这些工作需要手写复杂的SQL或者通过存储过程和触发器实现。手写复杂SQL对软件可维护性构成了相当大的挑战,随着SQL字数的变多,用到的嵌套和复杂语法增加,可读性和可维护性的难度是几何级暴涨。因此如何在实现功能的同时控制这些S

Java JVM——12. 垃圾回收理论概述

1.前言 1.1 什么是垃圾? 在提到什么是垃圾之前,我们先看下面一张图: 从上图我们可以很明确的知道,Java 和 C++ 语言的区别,就在于垃圾收集技术和内存动态分配上,C++ 语言没有垃圾收集技术,需要我们手动的收集。 垃圾收集,不是 Java 语言的伴生产物,早在1960年,第一门开始使用内

痞子衡嵌入式:瑞萨RA8系列高性能MCU开发初体验

大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是瑞萨RA8系列高性能MCU开发上手体验。 我们知道瑞萨半导体的通用 MCU 产品线主要包含基于自有内核 8/16bit RL78 系列以及 32bit RX 系列,还有这两年明显增加研发投入的基于 Arm Cortex-M 内核的 RA

推荐一款Python接口自动化测试数据提取分析神器!

1、引言 在处理JSON数据时,我们常常需要提取、筛选或者变换数据。手动编写这些操作的代码不仅繁琐,而且容易出错。Python作为一个功能强大的编程语言,拥有丰富的库和工具来处理这些数据。今天,将介绍一个实用的Python库——JMESPath,它为提取JSON数据提供了简洁而强大的语法。 2、JM

使用FastReport报表动态更新人员签名图片

在一些报表模块中,需要我们根据用户操作的名称,来动态根据人员姓名,更新报表的签名图片,也就是电子手写签名效果,本篇随笔介绍一下使用FastReport报表动态更新人员签名图片。

上周热点回顾(7.1-7.7)

热点随笔: · 程序员失业日记1:工作五年,交接半天 (小码A梦)· 学习.NET 8 MiniApis入门 (tokengo)· C#/.NET/.NET Core优秀项目和框架2024年6月简报 (追逐时光者)· 需求变更,代码改的像辣鸡 - 论代码质量 (2J)· 如何找到并快速上手一个开源项

Linux 提权-SUID/SGID_1

本文通过 Google 翻译 SUID | SGID Part-1 – Linux Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注释补充。 导航 0 前言 1 了解特殊权限 2 寻找 SUID/SGID 二进制文件 – 手动方法 2

基于Bootstrap Blazor开源的.NET通用后台权限管理系统

前言 今天大姚给大家分享一个基于Bootstrap Blazor开源的.NET通用后台权限管理系统,后台管理页面兼容所有主流浏览器,完全响应式布局(支持电脑、平板、手机等所有主流设备),可切换至 Blazor 多 Tabs 模式,权限控制细化到网页内任意元素(按钮、表格、文本框等等):Bootstr

B 站和小红书又又又崩了,罪魁祸首竟然又是他。。。

大家好,我是凌晨。 今天上午10点左右,我打开B站发现无法刷新视频列表和评论区,收藏夹和弹幕也均不可用。 原以为是手机网络问题,换网络重启手机都还是不行,第一时间打开微博,果然,B站崩了的新闻荣登榜首,小红书崩了的新闻也紧随其后。 不过,一般情况下,像这种大规模平台的这么多功能一起崩溃了显然是不太对

工作感受月(2024年07月)

224年07月01日 今日工作事项: 1/ 上午处理app service plan的cpu和memory指标数据显示为0,影响了autoscale的正常运行。情况很不乐观。明天是否还是一样问题呢? 2/ 处理手中旧事,跟进全部案例24个中的10+的案例,问是否可以关闭。总关闭量在5个。 3/ 下午

《DNK210使用指南 -CanMV版 V1.0》第六章 Kendryte K210固件烧录

第六章 Kendryte K210固件烧录 1)实验平台:正点原子DNK210开发板 2) 章节摘自【正点原子】DNK210使用指南 - CanMV版 V1.0 3)购买链接:https://detail.tmall.com/item.htm?&id=782801398750 4)全套实验源码+手册

不单独部署注册中心,又要具备注册中心的功能,咋不让我上天?

开心一刻 暗恋公司的一个女同事,聊了快一年了,一直没勇气表白 上个月突然找我借 5000 块钱,我直接转给她了 我:这钱干嘛用的? 她:给男朋友买个手机 我强颜欢笑说:你真贴心 几天后我收到一个快递,打开一看是部手机!!! 我压抑着内心的激动,放下手头的工作,立马微信上问她怎么回事 她说:手机她男朋

半夜被慢查询告警吵醒,limit深度分页的坑

分享是最有效的学习方式。 博客:https://blog.ktdaddy.com/ 故事 梅雨季,闷热的夜,令人窒息,窗外一道道闪电划破漆黑的夜幕,小猫塞着耳机听着恐怖小说,辗转反侧,终于睡意来了,然而挨千刀的手机早不振晚不振,偏偏这个时候振动了一下,一个激灵,没有按捺住对内容的好奇,点开了短信,卧

Linux 提权-LXD 容器

本文通过 Google 翻译 LXD Container – Linux Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注释补充。 0 前言 1 什么是 LXD 和 LXC ? 2 查找 LXD 组权限 2.1 手动搜索 LXD 组用

详解Web应用安全系列(3)失效的身份认证

大多数身份和访问管理系统的设计和实现,普遍存在身份认证失效的问题。会话管理是身份验证和访问控制的基础,并且存在于所有有状态的应用程序中。攻击者可以使用指南手册来检测失效的身份认证,但通常会关注密码转储,字典攻击,或者在类似于钓鱼或社会工程攻击之后,发现失效的身份认证。 确认用户的身份,身份验证和会话

K8s高可用集群二进制部署-V1.20

一、前置知识点 1.1 生产环境部署K8s集群的两种方式 kubeadm Kubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。 二进制包 从github下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群。

中台框架模块开发实践-代码生成器的添加及使用

前言 之前已经分享过几篇关于中台项目框架的文章,相关介绍就不再赘述 所谓工欲善其事必先利其器,一个项目拥有一个代码生成器是很有必要的,能够大大的节省时间,减少手误,提供开发效率(ps:特别小团队搞微服务但是没有代码生成器,简直要了老命) 本文将分享如何在中台框架项目 Admin.Core 中添加代码

kettle从入门到精通 第七十一课 ETL之kettle 再谈http post,轻松掌握body中传递json参数

场景: kettle中http post步骤如何发送http请求且传递body参数? 解决方案: http post步骤中直接设置Request entity field字段即可。 1、手边没有现成的post接口,索性用python搭建一个简单的接口,关键代码如下(安装python环境略): fro

MoneyPrinterPlus:AI自动短视频生成工具,详细使用教程

MoneyPrinterPlus是一款使用AI大模型技术,一键批量生成各类短视频,自动批量混剪短视频,自动把视频发布到抖音,快手,小红书,视频号上的轻松赚钱工具。 之前有出过一期基本的介绍,但是后台收到有些小伙伴说,不知道如何使用。 今天我将会手把手的详细介绍如何使用MoneyPrinterPlus