当前位置: 首页 > 知识库问答 >
问题:

在同一项目中实现Spring云网关

董阳平
2023-03-14
        <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web-services</artifactId>
        <exclusions>
            <exclusion>
                <artifactId>spring-boot-starter-web</artifactId>
                <groupId>org.springframework.boot</groupId>
            </exclusion>
        </exclusions>
    </dependency>

我们从应该提供web api服务的项目中删除了核心库:d

如果不可能在同一个项目中使用,那么gateway众所周知的做法应该是怎样的,我应该在每个api微服务前面放一个gateway,还是应该在我的由多个微服务组成的项目中有一个单一的gateway?

共有1个答案

经正祥
2023-03-14

您可以在同一个项目中启动gateway,但这是一个基于webflux的项目。来自文档

Spring Cloud Gateway构建在Spring Boot2.x、Spring WebFlux和Project Reactor上。因此,当您使用Spring Cloud Gateway时,您熟悉的许多同步库(例如Spring Data和Spring Security)和模式可能并不适用。如果您不熟悉这些项目,我们建议您在使用Spring Cloud Gateway之前首先阅读它们的文档,以熟悉一些新概念。

而且

 类似资料:
  • 我一直在读关于spring cloud gateway在我的微服务架构中实现API网关的文章。我需要阻止某些URL我一直在使用一些内部操作。但是,我已经像在Zuul中一样在gateway中使用了IgnoredServices和IgnoredPatterns,但是在Spring cloud gateway链接中没有这样的东西。我的内部API以/internal/{something}开头。 同样,我

  • 正在处理一个庞大复杂的应用程序,该应用程序目前正在使用hibernate LocalSessionFactoryBean、HibernateTransactionManager和HibernateTemplate。有没有可能我可以使用JPA进行我的新特性开发,这样我就可以使用SPRING DATA JPA在我的持久性层上工作了?我的当前配置如下。 但是,我想为新的东西添加LocalContaine

  • 我试图在Spring云网关中设置速率限制。 我试图在应用程序中配置过滤器。yaml如下所示 我得到下面的错误 如何在spring云网关中实现速率限制?

  • 我已经在一个Spring Boot项目中创建了一个Spring云契约存根()。希望调用此存根的客户机不是Spring项目,也不可能是Spring项目。如果我在客户端中运行以下命令: 然后我得到一个错误 显然,我没有,因为这不是一个Spring Boot项目。 这里有什么变通办法?

  • 在我的springboot应用程序中,我想连接到两个数据源,一个cassandra数据库和一个oracle数据库。 因此,我将以下内容添加到我的pom中.xml: 这是orOracle DB的存储库: ReadRepostory扩展存储库 当我注释掉cassandra依赖时,这运行得很好: 但是当我添加cassandra依赖关系时,我开始看到这个错误: 出于调试的目的,我删除了所有与cassand

  • 我一直使用Zuul作为边缘服务和API网关。最近我注意到Spring云平台发布了Spring云网关。这两个网关有什么区别?为什么Zuul没有扩展到支持S-C-Gateway中的功能?一个新图书馆的驱动因素是什么?应该在什么时候使用?