草庐IT

camel-hdfs

全部标签

java - 在 Apache Camel 应用程序中,单元测试如何注入(inject)模拟端点来代替真实端点?

我正在实现messagetranslatorpattern使用ApacheCamel,使用来自RESTful端点的消息并将它们发送到AMQP端点。封闭的应用程序基于SpringBoot,因此我使用Camel的“spring-boot”组件来集成这两个框架。正如这个spring-boot链接中的文档所建议的,我正在一个@Configuration中实现我的Camel路由-扩展RouteBuilder的注释类:@ComponentpublicclassMyRestToAmqpRouterextendsRouteBuilder{@Overridepublicvoidconfigure()th

java - Apache Camel : What is actually being routed?

ApacheCamel路由中的“提升单元”或流程是什么?意思是,实际被路由的对象是什么?消息?交易所?我问是因为我认为Route由1+个Processor端点组成,而Exchange(包含Message)实际上是跨所有端点路由的。但是Exchange似乎可以同时具有入站和出站Message,这表明消息可以通过交换(相反通过处理器/端点进行交换)。有人可以帮助澄清为什么交换有入站和出站消息,以及实际传递到每个处理器/端点的路由是什么? 最佳答案 交换只是单个路由中消息的包装器对象。交换中的输入和输出消息用于处理不同的交换模式(MEP)

java - EIP/Apache Camel - 如何同时处理消息,但按组原子处理?

我有以下情况:有固定数量的组。有一个传入消息的TCP流。每条消息只与一个组相关。我开始Camel路线如下:publicclassMyMessageimplementsRunnable{publicvoidrun(){//omittedhere}}from("netty:tcp://localhost:7777?textline=true&sync=false")...//omittedhere:parsemessagetopojoMyMessage,setheader"group-identifier".to(seda:process);这个Camel路由消耗TCP流,解析每个传入消息

HDFS的架构优势与基本操作

目录写在前面一、HDFS概述1.1HDFS简介1.2HDFS优缺点1.2.1优点1.2.2缺点1.3HDFS组成架构1.4HDFS文件块大小二、HDFS的Shell操作(开发重点)2.1基本语法2.2命令大全2.3常用命令实操2.3.1上传2.3.2下载2.3.3HDFS直接操作三、HDFS的API操作3.1配置Windows3.2HDFS的API案例实操3.2.1HDFS文件上传3.2.2HDFS文件下载3.2.3HDFS文件更名和移动3.2.4HDFS删除文件和目录3.2.5HDFS文件详情查看3.2.6HDFS文件和文件夹判断写在最后写在前面如今,数据正以指数级增长,各行各业都在追求更多

HDFS集群的常见命令(一)

切记在hadoop用户下进行,记得从root切换(su-hadoop)一,启停命令1.一键启停  #一键启动hdfs集群start-dfs.sh#一键关闭hdfs集群stop-dfs.sh2.单进程启停1.$HADOOP_HOME/sbin/hadoop-daemon.sh,此脚本可以单独控制所在机器的进程的启停用法:hadoop-daemon.sh(start|status|stop)(namenode|secondarynamenode|datanode)2.$HADOOP_HOME/bin/hdfs,此程序也可以用以单独控制所在机器的进程的启停用法:hdfs--daemon(start|

java - Apache Camel - 路由事务

我有一个关于ApacheCamel的一般性问题。我无法找到聚合器是否已进行交易。如果是交易,交易是如何实现的,聚合的速度有多快? 最佳答案 将消息发送到聚合器可以在事务中运行。您需要一个带有聚合器的持久存储,让传出消息充当事务。请参阅有关持久性的文档http://camel.apache.org/aggregator2例如,开箱即用的基于JDBC和HawtDB(基于文件)持久性支持。它是可插拔的,因为您也可以构建您的自定义。CamelinAction书第8章和第9章对此进行了更详细的讨论。

java - Camel 是否为每条路线创建一个线程

最近我开始使用camel,我发现它有可能解决我的很多集成层需求。我创建了一个java客户端应用程序(不在任何容器中运行),我在其中定义了两条路由:路线1:将文件从传入的文件夹1移动到文件夹2route2:将文件内容从folderx移动到mq队列。我启动了我的应用程序,这些路由正在执行它们的工作,轮询这些文件夹并相应地路由消息。任何人都可以向我解释路线的工作原理。camel(context)是否为每条路线创建一个线程。到底发生了什么?注意:我在camel网站上找不到关于此的直接注释。 最佳答案 这取决于你在路由中使用的组件,创建和使用

Hadoop之HDFS——【模块一】元数据架构

一、元数据是什么在HDFS中,元数据主要指的是文件相关的元数据,通过两种形式来进行管理维护,第一种是内存,维护集群数据的最新信息,第二种是磁盘,对内存中的信息进行维护与持久化,由namenode管理维护。从广义的角度来说,因为namenode还需要管理众多的DataNode结点,因此DataNode的位置和健康状态信息也属于元数据。二、文件的组成meta:文件的索引,文件和目录是文件系统的基本元素,HDFS将这些元素抽象成INode,每一个文件或目录都对应一个唯一的INode。block:真实的数据存储的位置,Block是对于文件内容组织而言的,按照固定大小,顺序对文件进行划分并编号,划分好的

java - Apache Camel Http 和 SSL

我一直在尝试获得一个与Camel一起工作的双向ssl/https代理。我已经能够使用2-wayssl设置Jetty组件,现在正尝试让它与Http4组件一起工作以完成代理的客户端。当我将jetty流量路由到日志组件时,一切都很好,而且2路ssl信任链也很好。当我放入Http4组件时,它会因对等未验证异常而爆炸。我正在使用Camel2.7.0这是我目前的情况publicstaticvoidmain(String[]args)throwsException{CamelContextcontext=newDefaultCamelContext();JettyHttpComponentjetty

java - 如何使用 spring DSL 在 Camel 中记录 header 值

这看起来应该很简单,请原谅双关语。我正在尝试在SpringDSL路由中用Camel记录标题。我已经看到了JavaDSL的答案但我一直在徒劳地寻找如何让它在springDSL中工作。我试过:还有:和其他几个排列/变体,但它们都只是逐字记录该文本(即它们不替换实际的标题名称)。我错过了什么?更新:这是我的xml文件的较大部分:${body}${body.batchNumber}.xml 最佳答案 一段时间前问过这个问题,并意识到我最终找到了答案,所以应该将其张贴在这里,以防其他人在搜索中找到这个话题。这有效: