shenyu
https://github.com/apache/shenyu
Java
Apache ShenYu is a Java native API Gateway for service proxy, protocol conversion and API governance.
Triage Issues!
When you volunteer to triage issues, you'll receive an email each day with a link to an open issue that needs help in this project. You'll also receive instructions on how to triage issues.
Triage Docs!
Receive a documented method or class from your favorite GitHub repos in your inbox every day. If you're really pro, receive undocumented methods or classes and supercharge your commit history.
Java not yet supported2 Subscribers
Add a CodeTriage badge to shenyu
Help out
- Issues
- [BUG] — `BaseDataCache.selectorAccept`/`ruleAccept`: O(n² log n) re-scan + re-sort on EVERY sync event
- [BUG] — Selector DELETE fails to invalidate the RULE match cache → stale rule reads
- [BUG] — Dubbo & Sofa reference caches: `key.contains(id)` substring invalidation → mass spurious rebuilds + O(n) full scan per event
- [BUG] — `ApacheDubboProxyService`: per-request `GsonUtils` parse of selector handle into `List<DubboUpstream>`
- [BUG] — `String.matches(...)` (Pattern.compile per call) per line per AI request/response (multiple sites)
- [BUG] — `AiTokenLimiterPlugin`: `chunk.split("\\r?\\n")` (3-char regex, no fast path) per SSE chunk
- [BUG] — `LoggingConsolePlugin`: per-request `new KeyWordMatch(...)` (→ `Pattern.compile`) + `static dataDesensitizeAlg` reassigned per request (race/cross-request leak)
- [BUG] — `LoggingServerHttpResponse`: `new KeyWordMatch(...)` per response across ALL async-logging plugins
- [BUG] — `ComposableSignService.skipSignExchange`: 3× `String.format` per signed request
- [BUG] — Divide/WebSocket context decorators: `String.format` per request
- Docs
- Java not yet supported