Spring Boot MVC用户使用CSE/ServiceComb必读

Spring MVC应用切换CSE的差异与建议
博客介绍了将Spring MVC应用切换为CSE的相关内容,给出两个重要差异信息文档说明的链接,包括Spring MVC说明及Spring Boot集成CSE和自带MVC的原理介绍。还指出Spring MVC与CSE在支持功能上的差异,并提供微服务架构中界面程序部署建议的链接。

有些项目是把spring mvc的应用切换为cse, 这里有两个重要的差异信息文档说明:

  1. spring mvc的说明,参考末尾: https://docs.servicecomb.io/java-chassis/zh_CN/build-provider/springmvc.html

  2. spring boot集成cse和自带mvc的原理介绍: https://bbs.huaweicloud.com/blogs/eca98a6f399a11e9bd5a7ca23e93a891  

建议开始改造前先了解下,少走些弯路。 

因为spring mvc除了支持REST,还支持界面, CSE不支持, 在微服务架构上有个建议方案,关于界面程序如何部署的介绍: https://bbs.huaweicloud.com/blogs/8bb2c3b8366c11e9bd5a7ca23e93a891

由于CSE基于ServiceComb提供微服务框架,且Dubbo和Java chassis底层都使用Spring的依赖注入和bean管理系统,所以使用Dubbo的服务迁移到ServiceComb工作量较小,主要改动在依赖和配置方面。而Seata是一个开源的分布式事务解决方案。以下是集成CSEServiceComb)、Dubbo和Seata的大致方法: #### 依赖配置 在项目的`pom.xml`文件中添加相关依赖。 ```xml <!-- CSEServiceComb)依赖 --> <dependency> <groupId>com.huaweicloud</groupId> <artifactId>cse-sdk-all</artifactId> <version>最新版本号</version> </dependency> <!-- Dubbo依赖 --> <dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo</artifactId> <version>对应的版本号</version> </dependency> <!-- Seata依赖 --> <dependency> <groupId>io.seata</groupId> <artifactId>seata-all</artifactId> <version>对应的版本号</version> </dependency> ``` #### 服务提供方配置 如果是服务提供方,需要进行如下配置改动。 - **替换依赖**:将Dubbo相关依赖替换为CSEServiceComb)相关依赖,同时保留必要的Dubbo配置以实现平滑过渡。 - **配置文件**:在配置文件中添加CSEServiceComb)和Seata的相关配置。例如,在`application.properties`或`application.yml`中配置CSE的服务注册中心地址、Seata的事务组等信息。 ```properties # CSE服务注册中心地址 cse.service.registry.address=http://127.0.0.1:30100 cse.service.name=my-service # Seata相关配置 seata.tx-service-group=my_tx_group seata.service.vgroup-mapping.my_tx_group=default ``` #### 服务调用方配置 服务调用方同样要进行依赖替换和配置调整。在调用服务时,需要使用CSEServiceComb)的服务发现机制来定位服务,同时结合Seata实现分布式事务管理。 #### Seata配置 需要启动Seata Server,并根据业务需求配置Seata的事务模式(如AT、TCC等)。在应用中添加Seata的全局事务注解,确保业务逻辑在分布式事务的管理下执行。 ```java import io.seata.spring.annotation.GlobalTransactional; import org.springframework.stereotype.Service; @Service public class MyService { @GlobalTransactional public void businessMethod() { // 业务逻辑 } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值