关于springcloud的gateway网关的orderservice服务无法无法访问

基于上一篇,在将nacos集群的时候,我把orderservice的服务名命名为了order_service是因为这个下划线"_"导致的。

 

 

而在gateway网关目标路由地址是不能用_的,所以这才导致我们访问orderservice。

只要我们把服务名称改掉就好了:

 

 

访问试一下:

 成功了!

本人为初学者,有哪里说的不对的地方欢迎前辈们帮忙纠正,如果额帮你解决了问题那希望同行的你点个赞支持呀

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Cloud和Seata都是在分布式系统中使用的开源框架。Spring Cloud提供了许多分布式系统的解决方案,如服务注册和发现、负载均衡、断路器、分布式配置等。Seata则是一个分布式事务解决方案,可以解决分布式环境下的事务一致性问题。 Spring Cloud可以与Seata整合,以实现分布式事务管理。下面是整合步骤: 1.添加Seata依赖 在Spring Boot应用程序的pom.xml文件中添加Seata依赖: ```xml <dependency> <groupId>io.seata</groupId> <artifactId>seata-all</artifactId> <version>1.4.1</version> </dependency> ``` 2.配置Seata 在应用程序的application.yml文件中添加Seata的配置: ```yml seata: #TC 服务的 ip,多个使用 , 分隔 server: 127.0.0.1:8091 #事务组名称,需要与 Seata 服务端配置的名称相同 tx-service-group: my_tx_group ``` 3.配置数据源代理 在Spring Boot应用程序中,需要将数据源的代理替换为Seata的代理。为此,需要添加一个数据源代理类: ```java @Configuration public class DataSourceProxyConfig { @Bean @ConfigurationProperties(prefix = "spring.datasource") public DataSource druidDataSource() { return new DruidDataSource(); } @Bean public DataSourceProxy dataSourceProxy(DataSource dataSource) { return new DataSourceProxy(dataSource); } } ``` 4.开启Seata事务注解 在Spring Boot应用程序中,需要在配置类上添加@EnableTransactionManagement注解,并在需要开启分布式事务的方法上添加@GlobalTransactional注解: ```java @SpringBootApplication @EnableTransactionManagement public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } @Service public class OrderServiceImpl implements OrderService { @Autowired private OrderMapper orderMapper; @Autowired private AccountService accountService; @GlobalTransactional @Override public void createOrder(Order order) { orderMapper.createOrder(order); accountService.decrease(order.getUserId(), order.getMoney()); } } ``` 这样就可以使用Seata来管理分布式事务了。在实际应用中,需要根据具体情况进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值