至少有四种不同的机制,一种Camel路由可以直接将数据传递给另一种. “直接”是指不使用网络或某种形式的中间存储(文件,数据库).可以根据它们是否可以在CamelContext实例之间传递数据以及它们是同步还是异步来对这些机制进行分组.

> direct – 单个CamelContext,同步(块生成器)

> SEDA – 单个CamelContext,异步(不阻止生产者)

> VM – 多个CamelContext,异步(不阻止生产者)

> direct-VM – 多个CamelContext,同步(块生成器)

直接和直接VM机制是同步的,因为生成端点阻塞直到消耗端点以及其路由逻辑的所有其余部分完成. SEDA和VM机制都使用消费者上的线程池,这样生产者发出的每个请求都被分配给池中的一个线程.这允许消费者端点及其相关的路由逻辑独立于生产者行动.

在不同Camel上下文之间进行通信的情况下,两个VM端点都是必需的.在许多情况下,可以将路由组合到相同的CamelContext中.但是,出于模块化或不可能的原因,它有时可能是不可取的,因为某些应用程序框架就是如此.例如,我可能在库(或组件)中实现一些Camel路由逻辑,目的是让库被其他代码使用.为了完整,这个库可能会定义一个包含各种路由的自包含CamelContext.如果我想调用库中的Camel逻辑,我将需要使用VM或Direct-VM,因为直接和SEDA端点不包含在Camel上下文之间路由所需的逻辑.

java seda_java – seda,vm和direct之间有什么区别用camel解释它用一个例子相关推荐

  1. java seda_Java seda,vm和direct之间有什么区别用camel解释它用一个例子

    我曾与seda合作并直接和我一起阅读文档.仍然无法想象seda的使用和直接. vm对我来说是新的.请用一个例子解释一下. 至少有四种不同的机制,一种Camel路由可以直接将数据传递给另一种. &quo ...

  2. Java:利用字母可以组成一些美丽的图形,下面给出了一个例子:ABCDEFGBABCDEFCBABCDEDCBABCDEDCBABC这是一个5行7列的图形,请找出这个图形的规律

    利用字母可以组成一些美丽的图形,下面给出了一个例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的 ...

  3. 深入理解Java虚拟机-常用vm参数分析

    Java虚拟机深入理解系列全部文章更新中- 深入理解Java虚拟机-Java内存区域透彻分析 深入理解Java虚拟机-常用vm参数分析 深入理解Java虚拟机-JVM内存分配与回收策略原理,从此告别J ...

  4. java sdp_[java,SDP] java 7 SDP 技术/Socket Direct Protocol 2

    With Java 7 and Sockets Direct Protocol , Java Now does RDMA ( Remote Direct Memory Access) 有了 SDP 技 ...

  5. java client和servers_“java -server”和“java -client”之间的真正区别?

    这实际上与HotSpot和默认选项值 ( Java HotSpot VM选项 )相关联,这些选项在客户端和服务器configuration之间有所不同. 从白皮书( The Java HotSpot ...

  6. java 嵌套对象转xml_Gson对Java嵌套对象和JSON字符串之间的转换 | 学步园

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,具有良好的跨平台特性.近几年来已经和XML一样成为C/S架构中广泛采用的数据格式.有关JSON的更多知识, ...

  7. Java计算两个字符串日期之间的天数差

    Java计算两个字符串日期之间的天数差 调用方法: public static void main(String[] args) throws ParseException {String a = & ...

  8. java jar包和war包_java中jar包和war包之间有什么区别

    原标题:java中jar包和war包之间有什么区别 jar包 简单地说,JAR(Java Archive)是一种包文件格式.JAR文件具有.jar扩展名,可以包含库.资源和元数据文件. 本质上,它是一 ...

  9. JAVA入门级教学之(类之间究竟有哪几种关系呢)

    关于计算机的一些专业名词的解释 1.泛化关系: 什么是泛化关系呢? 简单来说就是一个子类继承父类,这就是一个泛化关系 图例: 或者说一个子接口继承父接口,这也是一个泛化关系 图例: 2.实现关系: 实 ...

最新文章

  1. 企业运营对 DevOps 的「傲慢与偏见」
  2. 受用一生的高效 PyCharm 使用技巧(五)
  3. MFC中绘制动态曲线
  4. BZOJ1054(搜索)
  5. c# xls 复制一行_C# 复制Excel单元格格式
  6. MySQL的MVCC底层原理
  7. 火狐浏览器jtopo节点切换tab后消失报错NS_ERROR_FAILURE的解决
  8. 简单的中文分词加上kmean聚类 (c++)
  9. linux系统给串口权限,让ubuntu串口和USB设备不用root权限访问
  10. 基于时间窗的AGV调度算法优化
  11. PDF 文字识别网站
  12. 发卡网搭建源码可运营发卡网搭建源码
  13. 软件工程——2021软科中国大学专业排名
  14. Android基础之将毫秒换算成(天/时/分/秒/毫秒)
  15. 笃行务实 布萌区块链选择数字资产作为区块链行业突破口
  16. vue单独设置页面背景
  17. Unity游戏开发:粒子系统
  18. 插值与拟合 (一) : 拉格朗日多项式插值 、Newton插值 、分段线性插值、Hermite插值 、样条插值、 B 样条函数插值、二维插值
  19. 了解node.js模块化和npm包
  20. STM32F429 笔记(一)- Keil 创建HAL工程

热门文章

  1. 惠惠软件|经验分享:路由器如何设置对接入无线设备的控制
  2. Java调用高德地图API根据详细地址获取经纬度
  3. 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java校内考研吧hd450
  4. 【Python数学建模常用算法代码(二)之BP神经网络】
  5. MATLAB解决线性规划问题,学会使用linprog函数,在一个实例中演示linprog函数各参数的用法
  6. 诊所预约就医信息管理系统java_基于JAVA的医院门诊信息管理系统设计及实现.doc...
  7. leetcode 31.下一个排列
  8. 乔迁誌喜•焕新启程 | 优积科技三周年庆典及表彰大会盛大举办
  9. Unity 伤害值的显示
  10. myeclipse2017下载安装 破解以及汉化