返回
Sentinel源码1-源码环境搭建(控制台)
后端
2024-01-19 01:54:41
Sentinel 简介
Sentinel 是阿里巴巴开源的分布式系统流量防卫兵,提供高可用、弹性化的流量控制、熔断、降级等功能,旨在保障微服务的稳定性。Sentinel 的特点包括:
- 高可用: Sentinel 采用分布式架构,由多个 Sentinel 节点组成,即使部分节点出现故障,也不会影响整个系统。
- 弹性: Sentinel 可以根据系统的实际情况动态调整流量控制、熔断和降级策略,以保障系统的稳定性。
- 简单易用: Sentinel 提供友好的控制台和丰富的 API,方便用户配置和使用。
搭建 Sentinel 源码环境(控制台)
1. 前提条件
搭建 Sentinel 源码环境需要满足以下要求:
- JDK 1.8 或更高版本
- Maven 3.3 或更高版本
- Git
- ZooKeeper 3.4.10 或更高版本
- Redis 5.0 或更高版本
2. 下载 Sentinel 源码
使用 Git 命令将 Sentinel 源码克隆到本地:
git clone https://github.com/alibaba/Sentinel.git
3. 安装 ZooKeeper 和 Redis
按照 ZooKeeper 和 Redis 的官方文档安装并启动 ZooKeeper 和 Redis。
4. 配置 Sentinel
修改 Sentinel/conf/sentinel.properties
文件,配置 ZooKeeper 和 Redis 的连接信息:
zookeeper.address=127.0.0.1:2181
redis.address=127.0.0.1:6379
5. 编译 Sentinel
使用 Maven 命令编译 Sentinel:
mvn clean package -DskipTests=true
6. 启动 Sentinel
使用以下命令启动 Sentinel 控制台:
mvn spring-boot:run
访问 http://localhost:8080
即可打开 Sentinel 控制台。
Sentinel 子项目
Sentinel 由多个子项目组成,每个子项目都有不同的功能。以下是对 Sentinel 子项目的介绍:
sentinel-core
:Sentinel 的核心组件,提供流量控制、熔断、降级等功能。sentinel-transport-common
:Sentinel 的传输层,支持 TCP 和 UDP 协议。sentinel-transport-simple
:Sentinel 的简单传输层,提供 HTTP 和 HTTPS 协议的支持。sentinel-transport-command
:Sentinel 的命令传输层,支持通过命令行控制台管理 Sentinel。sentinel-transport-dubbo
:Sentinel 的 Dubbo 扩展,提供 Dubbo 服务的流量控制和熔断。sentinel-transport-sofa
:Sentinel 的 Sofa 扩展,提供 Sofa 服务的流量控制和熔断。sentinel-transport-spring-cloud
:Sentinel 的 Spring Cloud 扩展,提供 Spring Cloud 服务的流量控制和熔断。sentinel-dashboard
:Sentinel 的控制台,提供友好的 UI 界面。
总结
本文详细介绍了如何在本地搭建 Sentinel 源码环境,并使用控制台来管理和监控 Sentinel。此外,还介绍了 Sentinel 的子项目,以便您更深入地了解 Sentinel 的各个组件。