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

Spring Cloud Stream AggregateApplication与本地数据流服务器

戚同
2023-03-14

我正在尝试创建与Data Flow Web Server一起运行的Spring Cloud Stream聚合应用程序,以便能够通过Web UI管理应用程序。

应用程序运行程序类:

@SpringBootApplication
public class Runner {

public static void main(String[] args) {
    new AggregateApplicationBuilder(args).web(true)
            .from(JSONFileSourceApplication.class).args("--fixedDelay=5000")
            .via(ProcessorOne.class)
            .to(LoggingSinkApplication.class).run(args);
}

这工作正常。现在正在尝试添加数据流服务器。创建类:

@SpringBootApplication
@EnableDataFlowServer
public class WebServer {}

并将其设置为Aggregate Application Builder的父配置:

...
    new AggregateApplicationBuilder(WebServer.class, args).web(true)
...

如果我运行它,将发生以下异常:

BeanCreationException: Error creating bean with name 'initH2TCPServer' ... 
Factory method 'initH2TCPServer' threw exception ... Exception opening port "19092" (port may be in use)

看起来Aggregate Application Builder进程试图创建另一个H2服务器,而不是使用父配置中的服务器。

如果在我的JSONFileSourceApplication、ProcessorOne和LoggingSinkApplication类中用@配置替换@SpringBootApplication注释-流应用程序启动,web服务器启动(http://localhost:9393/dashboard),但我没有看到我的流组件,web UI中的所有选项卡都是空的。

如何运行启用了WebUI的Spring Cloud Stream Aggregate Application?

共有1个答案

刘选
2023-03-14

SCDF目前的情况是,它不支持聚合应用程序的概念。

造成这种情况的主要原因是,SCDF假设应用程序属于已知通道类型;它是输入/输出或两者兼有(对于处理器)。然而,当使用AggregateApplicationBuilder时,有多种方法可以组合频道,并且DSL/UI中的自动发现和绑定频道变得模糊。

也就是说,在即将发布的版本中,

1)我们计划引入“函数链接”的概念。这允许在运行时将“多个”小函数(例如filterNulls、transformToUppercase、splitByHypen、...)组合到单个流应用程序中。作为开发人员,您将专注于独立开发/测试函数并将它们注册到SCDF。一旦在注册表中可用,您将拥有新的DSL原语将它们组合成一个单元,该单元在内部由SCDF链接(在运行时)。

2) 我们计划提高队列/主题的可见性。将有DSL原语与它们直接交互并创建数据管道。考虑到这种灵活性,类似组合的用例将更容易实现。

 类似资料:
  • 我正在尝试使用skipper服务器管理spring云数据流。 我按照这里的指示: https://docs.spring.io/spring-cloud-dataflow/docs/current/reference/htmlsingle/#getting-started-deploying-spring-cloud-dataflow 应用程序注册和流定义/部署进行得非常顺利,但是在我取消部署部署

  • 问题内容: 我需要每周将一个大型(3GB + / 40+个表)本地MySQL数据库同步到服务器数据库。这两个数据库完全相同。本地数据库会不断更新,每周大约需要用本地数据更新服务器数据库。您可以将其称为“镜像数据库”或“主服务器/主服务器”,但是我不确定这是否正确。 现在,数据库仅在本地存在。所以: 1)首先,我需要将数据库从本地复制到服务器。由于数据库大小和PHPMyAdmin的限制,使用PHPM

  • 问题内容: 是否有使用freebase数据转储创建数据库的任何现有方法,类似于freebase所提供的,但是在您自己的服务器上?相当多的免费库,但不是通过API在本地进行的吗? 我想可以创建,但是已经有解决方案了吗?还是没有使用API​​的类似数据的其他替代解决方案?我也没有为dbpedia找到这个: 问题答案: 看一下Google Code上的freebase-quad-rdfize项目。它应该

  • 我正在研究和使用Spring Cloud数据流进行一些概念验证,但遇到了一些问题: 我正在尝试启动本地数据流服务器。为了实现这一点,我创建了一个Spring Boot应用程序,并用< code > @ EnableDataFlowServer 对其进行了注释。 当我尝试运行时,我收到以下错误: 我在寻求帮助,我读到这可能是一个pom的版本问题。实际上我的< code>pom.xml是: 谁能帮我?

  • 我使用PythonGevent的流服务器与另一台机器(远程)进行通信,该机器发送并发TCP/IP请求(平均每秒钟60个请求)。这种通信的本质主要是IO绑定的(短文本,然后是音频流)。我打算使用Postgresql存储每次通信的结果(例如:从远程服务器接收的文件名)。 我认为为Streamserver中生成的每个greenlet调用一个新的db连接是个坏主意(池大小为90所以90 req/sec m

  • 问题内容: 我对本地数据库和基于服务的数据库有一些疑问:使用基于服务的数据库是否要求用户安装SQL Server?如果是这样,有没有解决的办法?本地数据库是否要求用户安装SQL Server?本地数据库和基于服务的数据库之间有什么区别?(我正在谈论Visual Studio中的项目) 问题答案: 客户端不需要安装SQL即可以编程方式连接到其他地方的数据库。无论哪种机制包含连接数据库的代码,通常都会