问题标签 [spring-xd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - Spring XD - 工作中的 UDP
我一直在使用 Spring XD 来持续摄取传感器数据,它运行良好。
我的新要求是能够“重放”部分数据。在我的特殊情况下,它将从 MongoDB 读取(带有特定查询),生成具有特定条目字段的 UDP 数据包,并在固定的时间间隔内将其发送到 SocketAddress。
我正在实施的第一次尝试是通过 spring-batch 作业。读者很简单,因为它只是查询 MongoDB 的数据,但我担心 UDP 部分。使用 spring-batch 发送 UDP 数据包感觉不自然,所以我想知道是否有人可以建议我实现这个的想法。
谢谢
hibernate - MS Sql 和 Hibernate entityManagerFactory 与 Spring XD 中的 DAO
是否可以在 Spring XD 中将 entityManagerFactory 与 DAOMS Sql
一起使用?Hibernate
我的项目中有一个配置类,我在其中编写了项目所需配置所需的 Bean,例如我的DataSource
和JDBCTemplate
.
我也有豆类
当我在 Spring XD 中部署我的项目时,
我得到异常:
然后,我添加了 spring-boot-starter-data-jpa 的依赖,我得到了异常
我试图在提供和不提供范围的情况下包括对 Spring Boot 的依赖。我什至尝试添加依赖项
到本地 POM。
我还将依赖项直接移动到 Spring XD lib 文件夹,然后我得到了异常:
当我设置 hibernate.dialect 我的异常看起来像:
16:39:23,344 错误 DeploymentsPathChildrenCache-0 server.ContainerRegistrar - 异常部署模块 java.lang.IllegalArgumentException:无法实例化接口 org.springframework.boot.SpringApplicationRunListener:org.springframework.boot.context.event.EventPublishingRunListener 在 org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:381) 在 org.springframework.boot.SpringApplication.getRunListeners(SpringApplication.java:352) 在 org.springframework.boot.SpringApplication.run(SpringApplication.java:274 ) 在 org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:142) 在 org.springframework.xd.module.core.SimpleModule.initialize(SimpleModule.java:203) 在 org.springframework.xd.dirt。 module.ModuleDeployer.deploy(ModuleDeployer.java:98) at org.springframework.xd.dirt.module.ModuleDeployer.deployAndStore(ModuleDeployer.java:88) at org.springframework.xd.dirt.module.ModuleDeployer.deployAndStore(ModuleDeployer. java:78) 在 org.springframework.xd.dirt.server.ContainerRegistrar.deployModule(ContainerRegistrar.java:231) 在 org.springframework.xd.dirt.server.ContainerRegistrar.onChildAdded(ContainerRegistrar.java:447) 在 org.springframework.xd 的 org.springframework.xd.dirt.server.ContainerRegistrar.deployJobModule(ContainerRegistrar.java:530) .dirt.server.ContainerRegistrar.access$800(ContainerRegistrar.java:95) 在 org.springframework.xd.dirt.server.ContainerRegistrar$DeploymentListener.childEvent(ContainerRegistrar.java:826) 在 org.apache.curator.framework.recipes。 cache.PathChildrenCache$5.apply(PathChildrenCache.java:509) at org.apache.curator.framework.recipes.cache.PathChildrenCache$5.apply(PathChildrenCache.java:503) at org.apache.curator.framework.listen.ListenerContainer$1 .run(ListenerContainer.java:92) at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:297) at org.apache.curator.framework.listen.ListenerContainer.forEach(ListenerContainer.java:83) 在 org.apache.curator.framework.recipes.cache.PathChildrenCache.callListeners(PathChildrenCache.java:500) 在 org.apache.curator.framework。 recipes.cache.EventOperation.invoke(EventOperation.java:35) at org.apache.curator.framework.recipes.cache.PathChildrenCache$10.run(PathChildrenCache.java:762) at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:471) 在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 在 java.util.concurrent.FutureTask.run(FutureTask.java:166) 在 java.util.concurrent。 Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java .util.并发。ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722) 原因:java.lang .IllegalArgumentException:类 org.springframework.boot.context.event.EventPublishingRunListener 不能分配给 org.springframework.util.Assert.isAssignable(Assert.java:369) 的 org.springframework.util 的接口 org.springframework.boot.SpringApplicationRunListener .Assert.isAssignable(Assert.java:352) 在 org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:375) ... 29 更多lang.IllegalArgumentException:类 org.springframework.boot.context.event.EventPublishingRunListener 不能分配给 org.springframework.util.Assert.isAssignable(Assert.java:369) 处的接口 org.springframework.boot.SpringApplicationRunListener。 org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:375) 上的 util.Assert.isAssignable(Assert.java:352) ... 还有 29 个lang.IllegalArgumentException:类 org.springframework.boot.context.event.EventPublishingRunListener 不能分配给 org.springframework.util.Assert.isAssignable(Assert.java:369) 处的接口 org.springframework.boot.SpringApplicationRunListener。 org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:375) 上的 util.Assert.isAssignable(Assert.java:352) ... 还有 29 个getSpringFactoriesInstances(SpringApplication.java:375) ... 还有 29 个getSpringFactoriesInstances(SpringApplication.java:375) ... 还有 29 个
是否有人知道可能导致此异常的原因?
非常感谢有关 Spring-XD 的上述工作示例的帮助。
谢谢
hibernate - Spring-Data-jpa 与 Spring XD
我有我的带有 Beans 的配置类,如下所述
和 Maven 依赖项看起来像:
当我在 Spring XD 中部署模块时,出现以下异常
是否可以在 Spring XD 环境中使用带有上述 Bean 的配置类?
任何尽快的帮助将不胜感激。
谢谢
spring - Spring XD 使用 redis 作为传输时性能非常差
我在本地机器上部署了分布式配置。
1 个管理员 1 个容器 1 个动物园管理员 1 个 hsql 1 个 redis
我有以下流:
我想使用以下部署描述符进行部署:
消息是 json 对象。
这个想法是为使用来自 apache kafka 的消息的容器设置一个任意编号,但是对于该示例,使用了一个简单的尾部。
我一一部署,我可以看到使用 redis 作为传输的性能在部署第 4 个流后下降了很多。我使用视觉 vm 观察到 inbound.*redis:queue-inbound-channel-adapter1 中存在某种竞争条件。如果我部署更多流(水龙头),它将变得无法使用。
(我尝试在此处添加来自 Visual VM 的线程视图图像,但我需要 10 个声望:s)
它似乎被锁定在这里:
如果部署的流少于 4 个,则永远不会发生等待条件:
我的第一个问题是为什么 spring-xd 不能使用 redis 作为传输来处理更多的水龙头。我尝试使用rabbitMq,它可以工作。
我的第二个问题是为什么它首先使用redis,因此我部署在内存配置中。再次在内存配置中使用,但这次使用rabbitMQ,我可以跟踪传递的消息,我认为这是不应该发生的。
--已编辑--
因此,关于第一个问题,我发现 org.apache.commons.pool2.GenericObjectPool 中的 maxTotal 参数默认为 8。我进入调试模式并在运行时更改了该值(无限制 = -1),这似乎解决了问题。为了能够将其配置为使用该 hack 进行部署,我需要创建一个扩展(来自文档)并覆盖以下 bean:
我一开始只是想定义一个 redisConnectionFactory bean,它会覆盖默认的,但是它没有那样工作。
我不确定解决方案是在 servers.yml 中配置 maxTotal 以允许增加该值,或者是否存在无法释放池的错误。无论如何,我会打开一个jira,希望这可以帮助那些没有完成我所做的所有工作的人:-)
spring-batch - 从 Spring XD M5 移动到版本 1.0.0 时使用和 Spring Data 的 Cglib 代理错误
我们正在将一些批处理作业从 Spring XD M5 移至 1.0.0 版本。
在创建和部署作业时,我们在自动装配 Spring Data 存储库(在本例中为 Neo4J)时遇到了 cglib 代理功能的问题。
堆栈跟踪的尾部:
Spring Data repository 接口注释@Repository
如下:
以及触发异常的 bean 类中相应的 autowired 属性:
bean 本身在我们的 XD 作业 XML 中定义如下:
以及配置 bean(在作业 cfg XML 中扫描的组件):
我们部署到 XD lib 文件夹中的 Spring Data Neo4J 版本如下:
设置全部在开发 PC 上(目前),XD 在分布式模式下运行:
- redis 服务器
- Zookeeper 服务器 (1x)
- Oracle 作业存储库(目前为本地 XE 实例)
- 1x 管理员和 1x 容器
任何有关作业配置、Spring Data 存储库或 XD 容器的帮助将不胜感激。
谢谢
spring-xd - 使用直接绑定部署的流仍然向 rabbitMQ 发送消息
我使用“module.*.count=0”部署描述符部署了一个流,以强制直接绑定。通过使用 rabbitmq-trace 会发生通过 rabbit 的消息,但是我看到的消息比禁用直接绑定选项时要少。这是预期的行为吗?
通过阅读文档,我认为在这种特殊情况下没有任何东西会通过外部总线。
spring-xd - Spring XD:带有日期参数的文件接收器
我刚刚安装了 spring xd 来进行 POC。我最初的目标是在所有应用程序服务器上安装 spring xd,收集当天的日志并将其转储到 NFS 挂载中的某个位置。我已经在分发模式下设置了 spring xd。我的流看起来像这样
流创建--名称测试流--定义“文件--dir=|文件--dir=”
我希望文件接收器根据当前日期转储到目录。例如 /tmp/xd/output_9242014
我该如何做到这一点?今天有日期功能吗?请帮忙
spring-xd - Spring XD 恢复语义
Spring XD 的恢复语义是什么。我已经浏览了所有公开可用的资源,但仍然无法得到任何明确的答案。
详细说明我的问题并保持简单。
a) 当 Source 失败时会发生什么?
b) 当处理器发生故障时会发生什么?
c) 当接收器发生故障时会发生什么?
apache-spark - Apache Spark 流与 Spring XD 流
我正在寻找适合 Apache Spark 流的用例以及最适合 Spring XD 流的情况。
这里有技术重叠吗?有人遇到过两者都被使用的情况吗?
spring-xd - Spring XD 演示 - 联网汽车 - 开源?
在联网汽车上看到这个 Spring XD 演示 - 认为它很有趣 ( https://www.youtube.com/watch?v=qkm2GV57hzY )。
想知道源代码是否是 OSS,可以在 github 上或其他地方获得。