原文:SpringCloud微服务实战——搭建企业级开发框架(三十九):使用Redis分布式锁(Redisson)+自定义注解+AOP实现微服务重复请求控制

通常我们可以在前端通过防抖和节流来解决短时间内请求重复提交的问题,如果因网络问题 Nginx重试机制 微服务Feign重试机制或者用户故意绕过前端防抖和节流设置,直接频繁发起请求,都会导致系统防重请求失败,甚至导致后台产生多条重复记录,此时我们需要考虑在后台增加防重设置。 考虑到微服务分布式的场景,这里通过使用Redisson分布式锁 自定义注解 AOP的方式来实现后台防止重复请求的功能,基本实 ...

2022-04-13 12:48 1 837 推荐指数:

查看详情

SpringCloud微服务实战——搭建企业级开发框架(八):使用注解校验微服务消息参数

  平时开发过程中,经常要用到参数校验,如果直接在代码逻辑里面写参数校验,代码有点冗余且用起来不是非常方便,显得代码逻辑复杂且重复代码太多,这里我们使用注解的方式进行参数校验,SpringBoot中常用的用于参数校验的注解如下: 1、在GitEgg-Platform工程的子工程 ...

Thu Oct 28 19:56:00 CST 2021 0 866
SpringCloud微服务实战——搭建企业级开发框架(二十六):自定义扩展OAuth2实现短信验证码登录

现在手机验证码登录似乎是每个网站必备的功能,OAuth2支持扩展自定义授权模式,前面介绍了如何在系统集成短信通知服务,这里我们进行OAuth2的授权模式自定义扩展,使系统支持短信验证码登录。 1、在gitegg-oauth中新增SmsCaptchaTokenGranter 自定义短信验证码令牌 ...

Wed Dec 01 20:17:00 CST 2021 1 923
SpringCloud微服务实战——搭建企业级开发框架(三十一):自定义MybatisPlus代码生成器实现前后端代码自动生成

  理想的情况下,代码生成可以节省很多重复且没有技术含量的工作量,并且代码生成可以按照统一的代码规范和格式来生成代码,给日常的代码开发提供很大的帮助。但是,代码生成也有其局限性,当牵涉到复杂的业务逻辑时,简单的代码生成功能无法解决。   目前市面上的代码生成器层出不穷,大多数的原理是基于已有的代码 ...

Wed Dec 08 19:57:00 CST 2021 0 796
SpringCloud微服务实战——搭建企业级开发框架(十六):集成Sentinel高可用流量管理框架自定义返回消息】

Sentinel限流之后,默认的响应消息为Blocked by Sentinel (flow limiting),对于系统整体功能提示来说并不统一,参考我们前面设置的统一响应及异常处理方式,返回相同的格式的消息。 1、在自定义Sentinel返回消息之前,需要调整一下代码结构,因为这里要用到统一 ...

Mon Nov 15 21:39:00 CST 2021 0 208
SpringCloud微服务实战——搭建企业级开发框架(三十七):微服务日志系统设计与实现

  针对业务开发人员通常面对的业务需求,我们将日志分为操作(请求)日志和系统运行日志,操作(请求)日志可以让管理员或者运营人员方便简单的在系统界面中查询追踪用户具体做了哪些操作,便于分析统计用户行为;系统运行日志又分为不同的级别(Log4j2): OFF > FATAL > ERROR ...

Fri Feb 18 21:04:00 CST 2022 0 1168
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM