问题标签 [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.
spring-xd - 在 Spring XD 中通过远程传输传递 Java 对象
如果在 Spring XD 流中从一个“过滤器”传递到下一个“过滤器”的消息有效负载是自定义 Java 类实例,我想如果中间的“管道”是远程传输,则需要某种序列化机制。
- 对于这种情况,Spring XD 中提供了什么样的“序列化”/“转换”?
- Java 序列化是否适用于这种情况?而如果自定义类是可序列化的,Spring XD会自动对对象进行序列化/反序列化,还是我们还需要在流定义/模块定义中给出一些提示呢?
谢谢,西蒙
sql-server - 如何使用 Spring XD 将数据从 oracle 和 sql server 加载到 HAWQ
嗨,我在 Oracle 和 SQL Server 中有表。我需要使用 Spring XD 将数据从 oracle 和 sql server 加载到 Pivotal HAWQ 中。在文档中找不到。
java - 如何使用 Spring Batch 查看集群中的所有作业?
我正在尝试确定将作业部署到集群环境时需要考虑的所有事项。
目前我并不关心并行处理或其他缩放问题;我更感兴趣的是如何让一切都像在单个服务器上运行一样。
所以因为我已经确定应该通过消息来触发工作。
现在让我陷入困境的是如何在集群部署中使用 Spring Batch Admin UI(即使它是手动解决方案)之类的东西。从 JobExplorer 获取工作信息似乎是关键之一。
Schipp 的spring-batch-cluster项目是答案吗,还是有更一致的社区答案?
或者我什至不需要担心因为 JobRepository 将从共享数据库中提取?
或者我是否需要将作业执行信息发布到消息队列以更新单独的作业存储库?
还有其他我应该关注的事情吗,比如jobIncrementers?
顺便说一句,如果不清楚我是 Spring 批次的菜鸟,现在就让大家知道 :-)
spring-xd - SpringXD:partitionPath 和 hdfs-dataset 可以共存吗?
我使用新partitionPath
选项定义了几个流,以便文件最终位于 Hadoop 中的每日目录中:
所有的流都被创建和部署了,除了XXXX
上面:
请注意,其数据以 avro 格式进行处理和存储。和 FWIW,其他流被放入的地方/xd/<NAME>/<rest of path>
,使用hdfs-dataset --format=avro
组合导致文件进入/xd/<NAME>/string
我在没有选项的情况下重新定义了它partitionPath
,并部署了流。
我们这里有错误,还是我做错了什么?
spring-batch - Spring XD ExecutionContext 反序列化器
我有一个带有隔离类路径的作业模块。我已将 POJO 从隔离上下文添加到序列化的步骤执行上下文中。当这个上下文被反序列化时,由于默认的执行上下文反序列化器使用应用程序上下文类加载器而不是父第一个类加载器,因此无法加载该类,因此引发异常。解决方法是将带有 POJO 的 jar 添加到主类路径而不是隔离的类路径中。有没有办法将它们保存在隔离的类路径中并使用 ParentFirstClassloader?
堆栈跟踪
spring-xd - spring-xd 纱线管理员纱线容器失败
版本:spring-xd-1.0.1
分布式模式:yarn
Hadoop版本:cdh5
我已修改 config/servers.yml 以指向正确的 applicationDir、zookeeper、hdfs、resourcemanager、redis、mysqldb
但是在推送之后,当我启动管理员时,它会在一段时间后被纱线杀死。我不明白为什么容器会消耗 31G 的内存。请指出我正确的方向来调试这个问题。另外,如何提高日志级别
在日志中观察到以下错误:
得到 ContainerStatus=[container_id { app_attempt_id { application_id { id: 432 cluster_timestamp: 1415816376410 } attemptId: 1 } id: 2 } state: C_COMPLETE 诊断:“Container [pid=19374,containerID=container_1415816376410_0432_01_000002] 正在运行超出物理内存限制。 :使用了 1.2 GB 的 1 GB 物理内存;使用了 31.7 GB 的 2.1 GB 虚拟内存. 正在杀死容器。\n容器_1415816376410_0432_01_000002 的进程树转储:\n\t|- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME(MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE\n\t|- 193748 19374 (java) 3903 121 33911242752 303743 /usr/java/jdk1.7.0_45-cloudera/bin/java -DxdHomeDir=./spring-xd-yarn-1.0.1.RELEASE.zip -Dxd.module.config.location=文件:./modules-config.zip/ -Dspring.application.name=admin -Dspring.config.location=./servers.yml org.springframework.xd.dirt.server.AdminServerApplication \n\t|- 19374 24125 19374 19374 (bash) 0 0 110804992 331 /bin/bash -c /usr/java/jdk1.7.0_45-cloudera/bin/java -DxdHomeDir=./spring-xd-yarn-1.0.1.RELEASE.zip -Dxd. module.config.location=file:./modules-config.zip/ -Dspring.application.name=admin -Dspring.config.location=./servers.yml org. springframework.xd.dirt.server.AdminServerApplication 1>/var/log/hadoop-yarn/container/application_1415816376410_0432/container_1415816376410_0432_01_000002/Container.stdout 2>/var/log/hadoop-yarn/container/application_1415816376410_0432/container_1415816376410_0432_01_000002/Container.stderr \ n\n容器应请求终止。退出代码为 143\n容器以非零退出代码 143\n" exit_status: 143 退出
java - Spring Integration Kafka适配器不产生消息
我现在为此苦苦挣扎了好几天。
我在 Spring-boot 容器下为 kafka 使用 SI 适配器。
我已经在我的机器上配置了 zookeeper 和 kafka。我还创建了控制台生产者和消费者对其进行了测试,一切正常(我设法生成控制台消息并让控制台消费者使用它们)。
我现在尝试通过 Spring 集成 kafka 出站适配器生成消息,但控制台使用者不会使用该消息
SI/弹簧 xd xml:
爪哇:
这就是我运行 kafka 控制台消费者的方式:
日志:
我尝试在同一个应用程序中使用官方 Kafka 客户端生产者,它工作得很好:
知道为什么消息从未通过 Spring Integration kafka 适配器到达我的消费者吗?
spring-batch - 当 Spring XD 被杀死时,作业从注册表中删除
我将 Spring XD 作为 Sandbox 环境的单节点运行,并为批处理表使用 MySQL DB。如果我杀死 -15 Spring XD 进程,那么我的作业和流的所有当前定义都将丢失(在作业的情况下,XD_JOB_REGISTRY 显然被删除)。因此,如果我再次启动 Spring XD,我将丢失所有以前的作业和流定义。
我想知道这是否是在 Spring XD 中故意的,或者可能是因为我在单节点模式下运行?或者它是一个错误?
编辑添加 SERVERS.YML 的要点:
hadoop-yarn - 如何在 Yarn 中成功部署 Spring-XD?
我有一个有 2 个节点的 YARN 集群。我已经验证 YARN 集群运行良好。我正在尝试部署 XD。
我按照最新的 XD 指南中的步骤配置 Zk、Postgres、Redis 并相应地修改了 servers.yml。执行启动命令后没有错误消息。但是在执行 start admin 和 start container 之后,我没有看到任何应用程序在 YARN 中运行。applicationDir
在我配置的纱线中也没有看到任何东西。
另外我在哪里可以看到日志消息?
关于安装的几个一般问题
我应该在哪里复制 YARN 二进制文件?在任何 YARN 集群节点中?还是全部?或者我可以只在本地复制,然后 yarn-push 会负责实际安装吗?
应该applicationDir
在所有 YARN 节点上创建还是仅在资源管理器上创建?
如果 XD 指南可以明确指出这些,那就太好了。
spring-xd - Spring XD - 事件交付保证
当我创建一个由多个模块组成的流时,是否为每个模块的事件传递提供了任何保证。是否有可能重播事件?
如果处理器模块需要很长时间来处理一个事件,但在处理过程中崩溃了怎么办?当模块在容器中重新启动时,该事件会发生什么?