Sentinel 无感接入步骤

目标

实现 HTTP 服务端 & 客户端、MyBatis 执行 SQL 的流控能力。

前置条件

  1. 已部署 Sentinel 控制台 (Sentinel Dashboard)
  2. 已部署 Nacos

接入步骤

一、PaaS 平台:独立部署 Token Server

  1. 进入 权限管理 > 项目管理,进入对应项目,新建服务(名称自定义)

    1.1.1创建token服务

  2. 进入 CI/CD > codeFlow,创建 codeFlow

    1.1.2.1创建CodeFlow

    1.1.2.2创建CodeFlow2

    java -jar -Xms512m -Xmx512m \
      -Dcsp.sentinel.dashboard.server=sentinel-dashboard.dfbg-infra-arch.paas.test:80 \
      -Dproject.name={名称自定义} \
      /app/jar/ROOT/sentinel-token-server.jar \
      --nacos.serverAddr=nacos-test.paas.test:8848 \
      --nacos.namespace=insMall_dev \
      --nacos.username=insMall \
      --nacos.password=insMall_test \
      --token.server.port=18730 \
      --token.server.namespaces=microloan-microcredit-test-ff,sentinel-agent-example
    
    • csp.sentinel.dashboard.server:按需指定 Sentinel Dashboard 域名+端口
    • token.server.namespaces:指定提供流控的业务名(逗号分隔)
  3. 进入 服务管理 > 服务,新建服务

    1.3.1新建服务管理

  4. codeFlow 执行构建并部署

  5. 部署完成后获取 Token Server 的 IP


    1.5.1查询tokenServerIp+端口

二、PaaS 平台:业务服务添加 JavaAgent

  1. 进入 CI/CD > codeFlow,编辑目标业务服务
    • 添加 JavaAgent 所需 tar 包依赖
    • JVM 参数建议显式添加,或采用隐式方式 JAVA_TOOL_OPTIONS
      2.1.1添加依赖文件
  2. 添加 JVM 参数 环境变量


    2.2.1添加JVM参数
    -javaagent:/app/sentinel-agent/sentinel-agent-core.jar \
    -Dproject.name=microloan-microcredit-test-ff \
    -Dcsp.sentinel.log.dir=/root/logs \
    -Dcsp.sentinel.log.file.size=10485760 \
    -Dsentinel.app.name=microloan-microcredit-test-ff \
    -Dcsp.sentinel.dashboard.server=sentinel-dashboard.dfbg-infra-arch.paas.test:80 \
    -Dsentinel.dashboard.username=sentinel2 \
    -Dsentinel.dashboard.password=sentinel2 \
    -Dsentinel.nacos.serverAddr=nacos-test.paas.test:8848 \
    -Dsentinel.nacos.namespace=insMall_dev \
    -Dsentinel.nacos.username=insMall \
    -Dsentinel.nacos.password=insMall_test \
    -Dsentinel.cluster.role=client
    
  3. 构建、部署,在 Dashboard 验证增添出新应用


    2.3.1验证
  4. Token Server 配置
    • 进入 Dashboard > 业务应用名 > 集群配置,点击编辑配置,配置对应Token Server 地址
      2.4.1配置tokenServer地址

三、添加流控规则

  1. 进入 簇点链路,点击目标资源名下的 +流控
    • 建议单独添加单机规则
    • 集群规则中不勾选「失败退化」(退化单机时会按集群阈值作为单机阈值)
      3.1.1添加集群模式规则

      3.1.2添加单机模式规则

功能补充说明

  1. Token Server 是单点,断连时 Client 自动退化到本地限流
  2. Token Server 需与所有 Token Client 保持 TCP 长连接,内网低延迟很关键
  3. Token Server 纯内存计数,无持久化,512MB~1GB JVM Heap 通常足够

核心参数详细说明

1. Token Server 启动参数 (独立部署)

此类参数主要用于配置 Token Server 自身的应用标识、Dashboard 连接以及动态规则的 Nacos 数据源。

  • -Dcsp.sentinel.dashboard.server: Sentinel 官方参数。指定 Sentinel Dashboard 的地址 (IP:Port),Token Server 启动后会将自己注册到该 Dashboard 上。
  • -Dproject.name: Sentinel 官方参数。Token Server 自身在 Dashboard 上展示的应用名称。
  • --nacos.serverAddr: 自定义参数。Nacos 服务端地址,Token Server 通过它获取集群限流规则。
  • --nacos.namespace: 自定义参数。Nacos 命名空间 ID,用于环境隔离(如开发、测试、生产)。
  • --nacos.username / --nacos.password: 自定义参数。Nacos 的认证账号密码。
  • --token.server.port: 自定义参数。Token Server 暴露给 Client 连接的 TCP 监听端口(默认 18730)。
  • --token.server.namespaces: 自定义参数。指定该 Token Server 托管/提供流控服务的业务应用名称列表(逗号分隔,如 microloan-microcredit-test-ff)。Token Server 只会加载这些指定应用的集群限流规则。

2. 业务服务 Java Agent 参数 (Client 端)

此类参数用于业务侧无感接入 Sentinel,配置应用标识、日志、Nacos 规则拉取及集群限流客户端角色。

  • -Dproject.name: Sentinel 官方参数。业务服务的应用名称,用于在 Dashboard 注册及资源监控归类。
  • -Dcsp.sentinel.log.dir: Sentinel 官方参数。Sentinel 核心日志及监控指标(Metrics)的输出目录。
  • -Dcsp.sentinel.log.file.size: Sentinel 官方参数。Sentinel 单个日志文件的大小限制(字节)。
  • -Dsentinel.app.name: Agent 自定义参数。业务应用名称,Agent 内部会将其与 project.name 同步,并作为 Nacos 规则配置 DataId 的前缀。
  • -Dcsp.sentinel.dashboard.server: Sentinel 官方参数。指定 Dashboard 地址,业务应用借此上报心跳和监控数据。
  • -Dsentinel.dashboard.username / -Dsentinel.dashboard.password: Agent 自定义参数 (AuthHeartbeatSender)。如果 Dashboard 开启了安全认证,用于业务服务向 Dashboard 发送心跳和通信时的鉴权。
  • -Dsentinel.nacos.serverAddr: Agent 自定义参数。Nacos 服务端地址。Agent 识别到此参数后,会自动注册 Nacos 数据源,从 Nacos 动态拉取单机/集群流控规则。
  • -Dsentinel.nacos.namespace / username / password: Agent 自定义参数。Nacos 的命名空间及认证信息。
  • -Dsentinel.cluster.role=client: Agent 自定义参数。指定当前业务节点在集群流控中的角色为 client(即 Token Client)。配置后,Agent 会自动初始化 ClusterStateManager 并连接到对应的 Token Server 以请求集群令牌。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容