当前位置: 首页 > news >正文

找人做一个网站需要多少钱wordpress 网站导航

找人做一个网站需要多少钱,wordpress 网站导航,仁寿县建设局网站,音乐网站要怎么做⛰️个人主页: 蒾酒 #x1f525;系列专栏#xff1a;《spring boot实战》 #x1f30a;山高路远#xff0c;行路漫漫#xff0c;终有归途 目录 写在前面 内容简介 实现思路 实现步骤 1.自定义限流注解 2.编写限流拦截器 3.注册拦截器 4.接口限流测试 写在前…  ⛰️个人主页:     蒾酒 系列专栏《spring boot实战》 山高路远行路漫漫终有归途 目录 写在前面 内容简介 实现思路 实现步骤 1.自定义限流注解 2.编写限流拦截器 3.注册拦截器 4.接口限流测试 写在前面 本文介绍了springboot开发后端服务中高并发接口限流设计与实现坚持看完相信对你有帮助。 同时欢迎订阅springboot系列专栏持续分享spring boot的使用经验。 内容简介 本文介绍了一种使用自定义注解结合拦截器和redis实现接口限流方法。这种方法也是企业常用方法是一种比较优雅的解决方案。 优点分析 灵活性和可定制性 通过自定义注解和拦截器可以根据具体的业务需求灵活定义限流规则满足不同接口的限流需求。 性能优化 使用Redis等高性能缓存数据库存储限流计数器能够有效减轻应用程序的压力提高系统的性能表现。 实时性和持久性 Redis具有较高的读写性能可以实时更新限流计数器并且数据持久化保证限流规则的持久性。 分布式支持 对于分布式系统使用Redis等分布式缓存数据库可以方便地实现跨节点的限流策略和计数器共享确保限流的准确性和一致性。 成熟稳定 这种方法经过实践验证在众多企业项目中得到广泛应用被认为是一种成熟、稳定且可靠的解决方案。 实现思路 通过自定义一个注解标注需要进行限流的接口方法通过拦截器对标记改注解的方法进行拦截处理 将同一ip访问同一接口的次数缓存到redis,拦截器中进行判断处理达到访问阈值直接拒绝。 实现步骤 1.自定义限流注解 import java.lang.annotation.*;/*** author mijiupro*/ Retention(RetentionPolicy.RUNTIME) Target({ElementType.METHOD}) Inherited Documented public interface AccessLimit {int limit() default 10; // 限流阈值int seconds() default 60; // 时间窗口 } 2.编写限流拦截器 /*** 接口限流拦截器* author mijiupro*/ Slf4j Component public class AccessLimitInterceptor implements HandlerInterceptor {private final StringRedisTemplate redisTemplate;public AccessLimitInterceptor(StringRedisTemplate redisTemplate) {this.redisTemplate redisTemplate;}Overridepublic boolean preHandle(NotNull HttpServletRequest request, NotNull HttpServletResponse response, NotNull Object handler) {if (!(handler instanceof HandlerMethod handlerMethod)) {return true;}Method method handlerMethod.getMethod();AccessLimit accessLimit method.getAnnotation(AccessLimit.class);// 若方法上没有AccessLimit注解直接放行if (accessLimit null) {return true;}int limit accessLimit.limit();int seconds accessLimit.seconds();String key generateKey(request); // 生成限流key// 使用基本类型long接收计数值并确保不会因自动装箱产生NullPointerExceptionLong countResult redisTemplate.opsForValue().increment(key, 1);long currentCount countResult ! null ? countResult : 0;if (currentCount 1) {// 如果是第一次访问设置过期时间redisTemplate.expire(key, seconds, TimeUnit.SECONDS);log.debug(设置访问限制计数为1{}, key);return true;}if (currentCount limit) {log.error(访问超过限制{}, key);throw new RateLimitException(ResultEnum.ACCESS_LIMIT_REACHED);}log.debug(访问限制计数递增{}, key);return true;}private String generateKey(HttpServletRequest request) {// 组合key的方式可以根据实际业务需要调整例如考虑方法名称、用户ID等return request.getRemoteAddr() : request.getContextPath() : request.getServletPath();}} 3.注册拦截器 Configuration public class WebConfig implements WebMvcConfigurer {private final AccessLimitInterceptor accessLimitInterceptor;public WebConfig( AccessLimitInterceptor accessLimitInterceptor) {this.accessLimitInterceptor accessLimitInterceptor;}Overridepublic void addInterceptors(NotNull InterceptorRegistry registry) {//添加上接口限流拦截器使之生效registry.addInterceptor(accessLimitInterceptor).order(0);} } 4.接口限流测试 随便写个接口标记限流注解进行测试 这里使用swagger3进行测试 Spring Boot3整合knife4j(swagger3)_springboot3 knife4j-CSDN博客文章浏览阅读2.1k次点赞39次收藏52次。Knife4j · 集Swagger2及OpenAPI3为一体的增强解决方案. | Knife4j (xiaominfo.com)作者的使用的spring boot 3.2.2为当前最新版所以依赖导入最新的knife4j 4.4.0。3.1 增强模式 | Knife4j (xiaominfo.com)好一个spring boot项目且版本为3X项目可正常启动。快速开始 | Knife4j (xiaominfo.com)接下来配置以下接口文档的作者等信息。Tag注解标记接口类别。_springboot3 knife4jhttps://blog.csdn.net/qq_62262918/article/details/135761392?spm1001.2014.3001.5502 GetMapping(/get-int)AccessLimit( limit 5, seconds 60)public Integer getInt() {return 1;} 前五次访问 第六次访问 写在最后 spring boot3自定义注解拦截器Redis实现高并发接口限流到这里就结束了本文介绍了一种常见的实现方法。任何问题评论区或私信讨论欢迎指正。
http://www.pierceye.com/news/458292/

相关文章:

  • 网站开发课程报告心得简单的网页设计作品欣赏
  • 网站建设用什么系统华为弹性云做网站
  • 莱芜高端网站建设报价网站色彩策划
  • 房地产项目网站做网站互联网公司有哪些
  • 凡科做网站友情链接怎么做wordpress广告位设置
  • org已经备案的网站wap网站建设服务
  • 企业网站模板免费下载企业网站模板免费完整版的网站模板
  • 外贸网站建设公司价格怎样做触屏版手机网站
  • 南宁站建好就够用秦皇岛微信推广平台
  • 物流公司做网站有用吗河北省住房和城乡建设网站
  • 网站举报官网seo站长论坛
  • 建站工具有哪些论坛网站建设总体要求
  • 公司网页网站建设 pptwordpress php 采集
  • 遵义网站开发公司舟山网站建设企业
  • 外贸网站一站式服务招网站建设销售
  • 绚丽的网站wordpress进入后台显示500
  • 威海城乡与住房建设部网站小颜自助建站系统
  • 域名怎么解析到网站做响应式网站需要学哪些知识
  • wordpress手机端慢seoer是什么意思
  • wordpress添加站点江苏廉政建设网站
  • 网站seo是什么做二维码推送网站
  • win7 iis默认网站设置游戏推广员
  • 湖北二师网站建设排名潍坊专业捞泵电话
  • 个人网站设计内容和要求萍乡网站制作公司
  • 合肥网站seo费用怎么把文章导入wordpress
  • 赣州网站推广哪家最专业阿里云wordpress数据库备份
  • 珠海专业网站建设公司做网站虚拟主机好还是
  • 做美图 网站有哪些wordpress哪些插件
  • 倒计时网站模板全屋定制设计培训学校哪里有
  • 凡客做网站网站排名的重要性