没有合适的资源?快使用搜索试试~ 我知道了~
首页ApacheCamel快速入门(上)
ApacheCamel快速入门(上)
539 浏览量
更新于2023-05-26
评论
收藏 183KB PDF 举报
在这个专题中,我们介绍了相当数量技术组件:Flume、Kafka、ActiveMQ、Rabbitmq、Zookeeper、Thrift、Netty、DUBBO等等,还包括本文要进行介绍的ApacheCamel。有的技术组件讲得比较深入,有的技术组件则是点到为止。于是一些读者朋友发来信息向我提到,这个专题的文章感觉就像一个技术名词的大杂烩,并不清楚作者的想要通过这个专题表达什么思想。提出这个质疑的朋友不在少数,所以我觉得有必要进行一个统一的说明。这个专题的名字叫做“系统间通讯”,在这个专题中我的讲解主要是围绕自己在实际工作中所总结的理论结构。。这就是本专题的主旨。要说到本专题中笔者介绍的每一个技
资源详情
资源评论
资源推荐

ApacheCamel快速入门(上)快速入门(上)
1、本专题主旨
1-1、关于技术组件
在这个专题中,我们介绍了相当数量技术组件:Flume、Kafka、ActiveMQ、Rabbitmq、Zookeeper、Thrift 、Netty、DUBBO
等等,还包括本文要进行介绍的Apache Camel。有的技术组件讲得比较深入,有的技术组件则是点到为止。于是一些读者朋
友发来信息向我提到,这个专题的文章感觉就像一个技术名词的大杂烩,并不清楚作者的想要通过这个专题表达什么思想。
提出这个质疑的朋友不在少数,所以我觉得有必要进行一个统一的说明。这个专题的名字叫做“系统间通讯”,在这个专题中我
的讲解主要是围绕自己在实际工作中所总结的理论结构。从系统间通讯最基本的网络从系统间通讯最基本的网络IO模型、消息格式、协议标准开始,再模型、消息格式、协议标准开始,再
到搭建在其上的通讯组件,然后再关注更上层的进行通讯过程协调、统一通讯过程的中间件到搭建在其上的通讯组件,然后再关注更上层的进行通讯过程协调、统一通讯过程的中间件。这就是本专题的主旨。要说到本
专题中笔者介绍的每一个技术组件,如果要做更深入的研究都可以再开新的专题,行业内各自都有很多的著作进行专门介绍。
那么为什么本专题中还要介绍这些技术组件呢?无非有三个原因:其一,是为了说清楚理论结构而服务是为了说清楚理论结构而服务。介绍JAVA对BIO、
NIO和AIO三种网络IO模型的支持,是为了让读者对这三种网络模型的工作过程从感性过渡到理性;介绍RMI、Thrift是为了实
例化笔者介绍的,搭建在网络IO模型上的RPC协议。其二,是笔者认为一些技术组件的设计思路,可以为各位架构师朋友在是笔者认为一些技术组件的设计思路,可以为各位架构师朋友在
实际工作中所借鉴实际工作中所借鉴,例如笔者对DUBBO中一些功能模块的设计进行讲解、对Apache Thrift中序列化方式进行详细讲解就是出
于第二个原因。其三,是因为本专题中设计的实战内容需要对将要用到的技术组件预先进行讲解是因为本专题中设计的实战内容需要对将要用到的技术组件预先进行讲解。在本专题中,我们基于
Thrift、Zookeeper自己设计了一个服务治理框架;我们还基于ActiveMQ、Kafka和Flume阐述了不同场景的日志系统设计方
案。所以为了让更多的读者能够看懂这些技术方案,最好的方式就是将它们快速的介绍一下。
感谢那些在本专题中为了点“赞”的朋友,感谢那些在留言中向我提出修改意见、指出错误的朋友,特别是RMI的那篇文章犯的
错误,太低级了。有你们的支持,让我觉得付出是有收获的;另外,目前这个系列的35片文章一共收到了7个“踩”,点“踩”的
朋友能否在留言中为我指出文章的错误和不足,帮助我重新整理自己的思路,修正知识点的问题。谢谢。
1-2、关于代码示例
本专题中笔者贴出了占文章相当篇幅的代码片段,贴出这些代码片段主要也有三种可能的情况。其一,是为了各位读者快速了
解某一种技术组件的基本使用;其二,是为了实现文章中描述的设计思路;其三,是为了进行技术验证,例如《架构设计:系
统间通信(29)——Kafka及场景应用(中2)》文章中4-4-5小节列出的代码,是为了验证2013年2月2日,Kafka的主要参与
者Neha Narkhede发表的一篇讲解Kafka Replication过程的技术文档。
有的读者向我提出,这些代码片段过于冗长,甚至有故意加长文章篇幅的目的。这个问题可能是我写作经验不足,给大家造成
了困扰。不过,在文章中的贴出的代码为了达到相应的目的,都配有比较详细的注释说明配有比较详细的注释说明,也为了避免各位读者在阅读代码时
打瞌睡^_^。另外,我将在对这个专题文章的第二次整理时,会去掉类似于get/set这种性质的代码片段——它们确实有“占篇
幅”之嫌。
1-3、关于抄袭
最后笔者认为抄袭是最卑劣的行为笔者认为抄袭是最卑劣的行为,所以本专题中的内容均是来源于笔者对键盘做功,涉及到的图例也是笔者一个一个画出来本专题中的内容均是来源于笔者对键盘做功,涉及到的图例也是笔者一个一个画出来
的,所有引用的图片、说明均注明出处的,所有引用的图片、说明均注明出处。笔者欢迎转载,但未经授权请勿用于商业用途。
2、Apache Camel 快速入门
那么这里我们为什么又要花两篇文章的篇幅来介绍Apache Camel呢?因为后续文章中,在我们进行一款简单的ESB中间件设
计时,我们将会依靠Apache Camel提供的协议转换、消息路由等核心能力。那么,就让我们开始吧!
2-1、Apache Camel介绍
Apache Camel的官网地址是 http://camel.apache.org/,在本篇文章成文时最新的版本是V2.17.1,您可以通过多种手段进行下
载。Apache Camel的官网并没有把的官网并没有把Camel定义成一个定义成一个ESB中间件服务中间件服务,因为Camel并不是服务:
Camel empowers you to define routing and mediation rules in a variety of domain-specific languages, including a Java-
based Fluent API, Spring or Blueprint XML Configuration files, and a Scala DSL. This means you get smart completion of
routing rules in your IDE, whether in a Java, Scala or XML editor.
Apache Camel uses URIs to work directly with any kind of Transport or messaging model such as HTTP, ActiveMQ, JMS,
JBI, SCA, MINA or CXF, as well as pluggable Components and Data Format options. Apache Camel is a small library with
minimal dependencies for easy embedding in any Java application. Apache Camel lets you work with the same API
regardless which kind of Transport is used - so learn the API once and you can interact with all the Components provided
out-of-box.
Apache Camel provides support for Bean Binding and seamless integration with popular frameworks such as CDI, Spring,
Blueprint and Guice. Camel also has extensive support for unit testing your routes.
以上引用是Apache Camel官方对它的定义。domain-specific languages指代的是DSL(领域特定语言),首先Apache Camel



















weixin_38717156
- 粉丝: 3
- 资源: 888
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
最新资源
- Xilinx SRIO详解.pptx
- Informatica PowerCenter 10.2 for Centos7.6安装配置说明.pdf
- 现代无线系统射频电路实用设计卷II 英文版.pdf
- 电子产品可靠性设计 自己讲课用的PPT,包括设计方案的可靠性选择,元器件的选择与使用,降额设计,热设计,余度设计,参数优化设计 和 失效分析等
- MPC5744P-DEV-KIT-REVE-QSG.pdf
- 通信原理课程设计报告(ASK FSK PSK Matlab仿真--数字调制技术的仿真实现及性能研究)
- ORIGIN7.0使用说明
- 在VMware Player 3.1.3下安装Redhat Linux详尽步骤
- python学生信息管理系统实现代码
- 西门子MES手册 13 OpcenterEXCR_PortalStudio1_81RB1.pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制

评论0