Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问clear审计未展示

spring-cloud-alibaba阿里巴巴春云

Agent Skill

用于辅助 Java 项目开发、面向对象设计、Spring 生态、Maven 或 Gradle 依赖和后端工程实践。它适合让 Agent 分析类结构、设计接口、整理服务分层、生成测试或检查常见代码坏味道。使用时需要结合项目已有架构、包结构和依赖版本,不应只按通用教程改代码;涉及数据库、事务、并发或框架配置时,应先确认运行环境和回归测试范围。

总安装

399

周安装

16

GitHub Stars

公开资料未说明

下载量

129
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:spring-cloud-alibaba(阿里巴巴春云)
来源仓库:https://github.com/teachingai/agent-skills
仓库路径:skills/spring-cloud-alibaba
安装命令:
npx skills add teachingai/agent-skills --skill "spring-cloud-alibaba"
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

AgentSkills.tonpx skills
npx skills add teachingai/agent-skills --skill "spring-cloud-alibaba"

简介

spring-cloud-alibaba 用于微服务架构下的组件集成,如 Nacos、Sentinel 和 RocketMQ 等中间件接入。

  • 它协助 Agent 编写服务注册、熔断降级或消息队列相关配置代码。
  • 安装方式:npx skills add teachingai/agent-skills --skill "spring-cloud-alibaba",需确认网络连通性和许可证状态。
  • 生产环境中应严格区分配置中心和本地缓存,避免动态刷新导致服务抖动。
  • 涉及分布式事务时应优先采用补偿机制而非强一致性方案。

SKILL.md

Spring Cloud Alibaba 开发指南

概述

Spring Cloud Alibaba 是阿里巴巴提供的微服务解决方案,提供了 Nacos(服务注册与配置)、Sentinel(流量控制)、RocketMQ(消息队列)、Seata(分布式事务)等组件。

核心组件

1. Nacos(服务注册与配置中心)

Nacos Server 安装

# 下载 Nacos
wget https://github.com/alibaba/nacos/releases/download/2.2.0/nacos-server-2.2.0.tar.gz

# 解压并启动
tar -xzf nacos-server-2.2.0.tar.gz
cd nacos/bin
sh startup.sh -m standalone

服务注册

@SpringBootApplication
@EnableDiscoveryClient
public class UserServiceApplication {
    public static void main(String[] args) {
        SpringApplication.run(UserServiceApplication.class, args);
    }
}

application.yml

spring:
  application:
    name: user-service
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
        namespace: dev
        group: DEFAULT_GROUP

配置管理

spring:
  cloud:
    nacos:
      config:
        server-addr: localhost:8848
        file-extension: yaml
        namespace: dev
        group: DEFAULT_GROUP
        shared-configs:
          - data-id: common-config.yaml
            group: DEFAULT_GROUP
            refresh: true

动态配置刷新

@RestController
@RefreshScope
public class ConfigController {
    @Value("${app.name:default}")
    private String appName;

    @GetMapping("/config")
    public String getConfig() {
        return appName;
    }
}

2. Sentinel(流量控制)

依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>

配置

spring:
  cloud:
    sentinel:
      transport:
        dashboard: localhost:8080
        port: 8719
      datasource:
        flow:
          nacos:
            server-addr: localhost:8848
            dataId: ${spring.application.name}-flow-rules
            groupId: SENTINEL_GROUP
            rule-type: flow

流量控制

@Service
public class UserService {
    @SentinelResource(value = "getUser", blockHandler = "getUserBlockHandler")
    public User getUser(Long id) {
        return userRepository.findById(id)
            .orElseThrow(() -> new UserNotFoundException(id));
    }

    public User getUserBlockHandler(Long id, BlockException ex) {
        return new User(); // 降级处理
    }
}

熔断降级

@SentinelResource(
    value = "getUser",
    fallback = "getUserFallback",
    blockHandler = "getUserBlockHandler"
)
public User getUser(Long id) {
    // 业务逻辑
}

public User getUserFallback(Long id, Throwable ex) {
    // 降级处理
    return new User();
}

3. RocketMQ(消息队列)

依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-rocketmq</artifactId>
</dependency>

配置

spring:
  cloud:
    stream:
      rocketmq:
        binder:
          name-server: localhost:9876
        bindings:
          output:
            producer:
              group: user-service-group

消息发送

@Service
public class UserService {
    private final RocketMQTemplate rocketMQTemplate;

    public UserService(RocketMQTemplate rocketMQTemplate) {
        this.rocketMQTemplate = rocketMQTemplate;
    }

    public void sendUserCreatedEvent(User user) {
        rocketMQTemplate.convertAndSend("user-topic", user);
    }
}

消息接收

@Component
@RocketMQMessageListener(
    topic = "user-topic",
    consumerGroup = "user-consumer-group"
)
public class UserEventListener implements RocketMQListener<User> {
    @Override
    public void onMessage(User user) {
        // 处理消息
        System.out.println("Received user: " + user.getName());
    }
}

4. Seata(分布式事务)

依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
</dependency>

配置

spring:
  cloud:
    alibaba:
      seata:
        tx-service-group: my-tx-group
        enabled: true

seata:
  enabled: true
  application-id: ${spring.application.name}
  tx-service-group: my-tx-group
  config:
    type: nacos
    nacos:
      server-addr: localhost:8848
      namespace: ""
      group: SEATA_GROUP
  registry:
    type: nacos
    nacos:
      server-addr: localhost:8848
      namespace: ""
      group: SEATA_GROUP

使用 @GlobalTransactional

@Service
public class OrderService {
    @GlobalTransactional
    public void createOrder(Order order) {
        // 1. 创建订单
        orderRepository.save(order);

        // 2. 扣减库存
        productService.reduceStock(order.getProductId(), order.getQuantity());

        // 3. 扣减余额
        accountService.deductBalance(order.getUserId(), order.getAmount());
    }
}

5. Dubbo(RPC 框架)

依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-dubbo</artifactId>
</dependency>

配置

spring:
  cloud:
    dubbo:
      application:
        name: user-service
      registry:
        address: nacos://localhost:8848
      protocol:
        name: dubbo
        port: 20880

服务提供者

@Service
@org.apache.dubbo.config.annotation.Service
public class UserServiceImpl implements UserService {
    public User getUser(Long id) {
        return userRepository.findById(id).orElseThrow();
    }
}

服务消费者

@Service
public class OrderService {
    @org.apache.dubbo.config.annotation.Reference
    private UserService userService;

    public Order createOrder(Long userId, Order order) {
        User user = userService.getUser(userId);
        // 创建订单逻辑
        return order;
    }
}

微服务架构示例

项目结构

microservices/
├── nacos-server/           # Nacos 服务
├── gateway/                # API 网关
├── user-service/           # 用户服务
├── order-service/          # 订单服务
└── product-service/        # 商品服务

配置示例

统一配置管理

# Nacos 配置中心
spring:
  cloud:
    nacos:
      config:
        server-addr: localhost:8848
        file-extension: yaml
        namespace: ${spring.profiles.active}
        group: DEFAULT_GROUP
        extension-configs:
          - data-id: common-datasource.yaml
            group: DEFAULT_GROUP
            refresh: true
          - data-id: common-redis.yaml
            group: DEFAULT_GROUP
            refresh: true

最佳实践

1. 服务注册

  • 使用 Nacos 作为服务注册中心
  • 配置合适的命名空间和分组
  • 设置健康检查

2. 配置管理

  • 使用 Nacos 配置中心统一管理
  • 区分环境配置(dev、test、prod)
  • 支持动态刷新

3. 流量控制

  • 使用 Sentinel 进行流量控制
  • 配置限流、熔断、降级规则
  • 监控服务调用情况

4. 分布式事务

  • 使用 Seata 处理分布式事务
  • 合理使用 @GlobalTransactional
  • 避免长事务

常用依赖

<!-- Nacos Discovery -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

<!-- Nacos Config -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

<!-- Sentinel -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>

<!-- RocketMQ -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-rocketmq</artifactId>
</dependency>

<!-- Seata -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
</dependency>

示例 Prompt

  • "如何使用 Spring Cloud Alibaba 构建微服务架构?"
  • "Nacos 如何配置服务注册和配置管理?"
  • "如何在 Spring Cloud Alibaba 中使用 Sentinel 进行流量控制?"
  • "Spring Cloud Alibaba 中如何使用 Seata 处理分布式事务?"
  • "如何配置 RocketMQ 消息队列?"

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

30.36%
按下载量换算39

OpenCode

22.13%
按下载量换算29

Antigravity

17.1%
按下载量换算22

Codex

12.7%
按下载量换算16

windsurf

8.09%
按下载量换算10

Gemini CLI

3.47%
按下载量换算4

安全审计

暂无安全审计结果可展示。

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills