WSO2 MB用于拥有可扩展的mqtt代理
现在由WSO2 EI 6.1.1取代。 当我必须提供经纪人或在产品内部运行时,我不清楚。 虽然有些文件似乎暗示经纪人已经在那里,但其他一些例子要求蚊子或wso2 mb(现在不可用)单独安装。
https://docs.wso2.com/display/EI611/Sample+906%3A+Inbound+Endpoint+MQTT+Protocol+Sample
使用mqtt客户端进行的简单测试表明,在正常的EI安装和运行之后,配置的参数127.0.0:1883中没有运行mqtt代理。
<mqtt enabled="true">
<bindAddress>0.0.0.0</bindAddress>
<defaultConnection enabled="true" port="1883" />
我应该安装一个单独的mqtt代理吗?或者有办法在旧版MB中运行已经存在的代理? 谢谢!
答案 0 :(得分:0)
您可以使用位于{EI_HOME} / bin目录的 broker.sh 文件,使用WSO2 EI运行代理。
另一个值得注意的区别是,一旦启动代理,您就可以看到以下日志
Declare @YourTable Table ([Parent] varchar(50),[Child] varchar(50))
Insert Into @YourTable Values
(null ,'S-1')
,('S-1','S-11')
,('S-1','S-12')
,('S-1','S-13')
,('S-1','S-14')
,('S-1','S-15')
,('S-11','S-111')
,('S-11','S-112')
;with cteP as (
Select Child
,Parent
,PathID = cast(Child as varchar(500))
From @YourTable
Where Parent is Null
Union All
Select Child = r.Child
,Parent = r.Parent
,PathID = cast(p.PathID+','+cast(r.Child as varchar(25)) as varchar(500))
From @YourTable r
Join cteP p on r.Parent = p.Child)
Select [Group] = Child
,B.*
From cteP A
Cross Apply (
Select Level1 = xDim.value('/x[1]','varchar(max)')
,Level2 = xDim.value('/x[2]','varchar(max)')
,Level3 = xDim.value('/x[3]','varchar(max)')
,Level4 = xDim.value('/x[4]','varchar(max)')
,Level5 = xDim.value('/x[5]','varchar(max)')
From (Select Cast('<x>' + replace(PathID,',','</x><x>')+'</x>' as xml) as xDim) as X
) B
Order By PathID
在WSO2 EI产品中,代理以3的偏移量运行。因此,您必须使用1886端口进行连接。
如果您愿意,可以使用{EI_HOME} /wso2/broker/conf/carbon.xml文件中找到的偏移元素来更改偏移量
希望这会有所帮助。