我按照sample中的说明操作并运行:
vertx run eventbus_pointtopoint/receiver.rb -cluster
vertx run eventbus_pointtopoint/sender.rb -cluster
然后我才得到:
➜ ruby vertx run eventbus_pointtopoint/receiver.rb -cluster
Starting clustering...
No cluster-host specified so using address 192.168.56.1
Succeeded in deploying verticle
➜ ruby vertx run eventbus_pointtopoint/sender.rb -cluster
Starting clustering...
No cluster-host specified so using address 192.168.56.1
Succeeded in deploying verticle
但没有收到任何消息。我做错了什么?
答案 0 :(得分:0)
如果您只是想了解事件总线消息的工作原理,您可以将两段代码移动到一个文件中并运行它。
require "vertx"
include Vertx
EventBus.register_handler('ping-address') do |msg|
puts "Received message: #{msg.body}"
# Now reply to it
msg.reply('pong!')
end
Vertx::set_periodic(1000) do
EventBus.send('ping-address', 'ping') do |reply|
puts "Received reply: #{reply.body}"
end
end
运行群集
如果要运行通过群集指定的示例,可能需要更改cluster.xml配置文件,它位于vertx安装的conf文件夹中。我不得不改变两行,先改变
<multicast enabled="true">
为假:
<multicast enabled="false">
然后改变
<tcp-ip enabled="false">
到真
<tcp-ip enabled="true">
并确保接口标记具有正确的IP地址。然后你应该运行上面指定的命令。