# SnowJena **Repository Path**: udonn_admin/SnowJena ## Basic Information - **Project Name**: SnowJena - **Description**: SnowJena这个项目想研究研究,但是github老是被墙。我把弄到gitee上来。源地址是https://github.com/onblog/SnowJena 上面有不少isse去看看学习一下吧。这里这个只是一个下载方便的地方 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2022-05-19 - **Last Updated**: 2022-05-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # :gift_heart:SnowJena ## What 基于令牌桶算法实现的分布式无锁限流框架,支持动态配置规则,支持可视化监控,开箱即用。 ## Document 使用文档:[中文](./CN_README.md)|[English](./EN_README.md) ## 功能概要 | 限流 | 降级 | 授权 | 注解 | 监控 | | ------ | ------ | ------ | ------ | ------ | | 黑名单 | 白名单 | 控制台 | 分布式 | 高可用 | ## 设计模式 | 单例模式 | 观察者模式 | 工厂模式 | 建造者模式 | MVC模式 | | -------- | ---------- | ---------- | ---------- | ------- | | 全局配置 | 动态规则 | 生产限流器 | 限流规则 | 控制台 | # Quick Start ## Maven ```xml com.github.onblog snowjena-core 4.0.0.RELEASE ``` ## 本地限流 ```java public class AppTest { Logger logger = LoggerFactory.getLogger(getClass()); /** * 本地限流 */ @Test public void test1() { // 1.配置规则 RateLimiterRule rateLimiterRule = new RateLimiterRuleBuilder() .setLimit(1) .setPeriod(1) .setUnit(TimeUnit.SECONDS) //每秒令牌数为1 .build(); // 2.工厂模式生产限流器 RateLimiter limiter = RateLimiterFactory.of(rateLimiterRule); // 3.使用 while (true) { if (limiter.tryAcquire()) { logger.info("ok"); } } } } ``` # About Email:[codeblog@qq.com](mailto:codeblog@qq.com) 如果帮助到你了,请不吝赞赏!谢谢!