90 - 实战之限流框架(分析篇)

2021-10-29  本文已影响0人  舍是境界

如果说前面的开源实战是学习别人怎么做,那现在我们自己来项目实战就是自己做。在这个过程中,会实践之前学过的设计思想、原则和模式,展示怎么应用这些理论知识,开发出跟前面那些著名开源项目一样优秀的软件。

项目背景

需求背景

需求分析

configs:
- appId: app-1
  limits:
  - api: /v1/user
    limit: 100
  - api: /v1/order
    limit: 50
- appId: app-2
  limits:
  - api: /v1/user
    limit: 50
  - api: /v1/order
    limit: 50
String appId = "app-1"; // 调用方APP-ID
String url = "http://www.eudemon.com/v1/user/12345";// 请求url
RateLimiter ratelimiter = new RateLimiter();
boolean passed = ratelimiter.limit(appId, url);
if (passed) {
  // 放行接口请求,继续后续的处理。
} else {
  // 接口请求被限流。
}

小结

上一篇下一篇

猜你喜欢

热点阅读