ActvieMQ翻译: VM Transport Reference 基于虚拟机通信的说明

VM Transport Reference 基于虚拟机通信的说明

虚拟机传输允许客户端在虚拟机内部进行通信,这种方式就不需要额外搭建网络通信了。虚拟机传输的连接方式使用的并非socket连接,而是直接连接,这种连接因为是内部的消息通信而带来较高的性能。

 

第一个客户端连接虚拟机时将会启动内嵌的broker。之后的连接继续使用这一相同的broker。一旦连接到broker的连接都关闭,那么对应的内嵌broker将自动关闭。

 

简单的broker配置演示:

以下为配置虚拟机连接的语法,配置简单但只能创建少量的broker。

vm://brokerName?transportOptions

如果你想连接一个已经实例化的内嵌broker(比如在Apache ServiceMix中)

请确保你的 vm://brokerName 配置中的 brokerName 与正在运行的broker一致.

 

配置项说明

Option Name

Default Value

Description

marshal

false

如果为true , 每个传输都需被管理.

wireFormat

default

The name of the WireFormat to use

wireFormat.*

 

所有的前缀配置都将用于wireFormat的配置

create

true

If the broker should be created on demand if it does not already exist.

waitForStart

-1

如1>0 将根据需要自行创建broker

broker.*

 

All the properties with this prefix are used to configure the broker. See Configuring Wire Formats for more information

Example URI

vm://broker1?marshal=false&broker.persistent=false

 

内嵌broker的注意事项

如果你使用虚拟机传输并希望更明白的配置内嵌broker。你可以在borker启动之前,创建一个JMS连接。如果你使用虚拟机传输并没配置的话,ActiveMQ会自动创建一个broker。

如使用Spring,你或许希望能通过depends-on之类的属性配置。这样就能在JMS工厂类就能与内嵌broker一同使用,参考配置如下:

    <bean id="broker" class="org.apache.activemq.xbean.BrokerFactoryBean">

         <property name="config"

             value="classpath:org/apache/activemq/xbean/activemq.xml" />

         <property name="start" value="true" />

    </bean>

 

    <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"

         depends-on="broker">

         <property name="brokerURL" value="vm://localhost" />

    </bean>

  

 

Broker的高级配置

这是虚拟机连接的进阶配置。你可以通过broker配置url的方式进行配置,如:

vm:(broker:(tcp://localhost)?brokerOptions)?transportOptions
or
vm:broker:(tcp://localhost)?brokerOptions

 

配置项说明

Option Name

Default Value

Description

marshal

false

If true, forces each command sent over the transport to be marshalled and unmarshalled using a WireFormat

wireFormat

default

The name of the WireFormat to use

wireFormat.*

 

All the properties with this prefix are used to configure the wireFormat

 

举例:

vm:(broker:(tcp://localhost:6000)?persistent=false)?marshal=false

 

通过外部文件来配置举例:

vm://localhost?brokerConfig=xbean:activemq.xml

 

 

转载于:https://my.oschina.net/u/2253188/blog/892995

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值