gitmyhub

Sentinel

Java ★ 23k updated 23d ago

A powerful flow control component enabling reliability, resilience and monitoring for microservices. (面向云原生微服务的高可用流控防护组件)

Sentinel is a Java library from Alibaba that protects microservices from being overwhelmed by traffic. In a world where software is built from many small services talking to each other, a single slow or failing service can cause a chain reaction that brings down the whole system. Sentinel stops that from happening.

It works by acting as a traffic cop around pieces of your code. You wrap critical sections with Sentinel's API, then set rules that define limits — for example, allow at most 20 requests per second, or stop calling a downstream service if it is failing too often. When traffic exceeds those limits, Sentinel blocks or slows down excess requests, protecting the system from overload. This is sometimes called rate limiting, circuit breaking, or load shedding.

Sentinel also includes a real-time dashboard where you can see how many requests are passing and how many are being blocked, and update rules on the fly without restarting your application.

You would use this if you are building or maintaining Java-based backend services that need to stay reliable under high or unpredictable traffic — for example, during flash sales, API spikes, or when dependent services become unreliable. It integrates with Spring Cloud, Apache Dubbo, and other common Java frameworks. It was battle-tested by Alibaba during their Double-11 shopping festival.