启动sentinel 服务
- sentinel的下载地址:sentinel官方下载地址
小编下载的是1.6.3的版本: sentinel-dashboard-1.6.3.jar - 启动 sentinel 服务
java -jar sentinel-dashboard-1.6.3.jar --server.port=8888
整合 sentinel
- 引入依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
- 在 application.properties 文件中 添加配置
依赖依赖之后,sentinel-core的版本是1.6.3,因此小编的sentinel 服务的版本是sentinel-dashboard-1.6.3.jar。
spring.cloud.sentinel.transport.dashboard=localhost:8888
- 编写测试用例 新建 TestController.java
import com.alibaba.csp.sentinel.annotation.SentinelResource;
import com.example.onlinecommon.utils.R;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/testController")
@Slf4j
public class TestController {
/**
* project 测试 R
* @return
*/
@RequestMapping("/test")
public R test(){
log.info("online-project 测试 R 成功");
return R.ok("online-project 测试 R 成功");
}
/**
* 测试 Sentinel
* @return
*/
@GetMapping(value = "/testSentinel")
@SentinelResource("testSentinel")
public String testSentinel() {
return "测试 Sentinel";
}
}
-
启动项目并访问
-
sentinel 效果
-
修改流控
-
修改规则为:(小编为了测试sentinel, 单机阈值=1)
-
莲须发送请求,出现了 Blocked by Sentinel (flow limiting), 测试流控成功