本文整理汇总了Java中backtype.storm.messaging.IContext.bind方法的典型用法代码示例。如果您正苦于以下问题:Java IContext.bind方法的具体用法?Java IContext.bind怎么用?Java IContext.bind使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类backtype.storm.messaging.IContext
的用法示例。
在下文中一共展示了IContext.bind方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: startDispatchThread
import backtype.storm.messaging.IContext; //导入方法依赖的package包/类
private AsyncLoopThread startDispatchThread() {
Map stormConf = workerData.getStormConf();
int queue_size = Utils.getInt(
stormConf.get(Config.TOPOLOGY_TRANSFER_BUFFER_SIZE), 1024);
WaitStrategy waitStrategy = (WaitStrategy) Utils
.newInstance((String) stormConf
.get(Config.TOPOLOGY_DISRUPTOR_WAIT_STRATEGY));
DisruptorQueue recvQueue = DisruptorQueue.mkInstance("Dispatch", ProducerType.MULTI,
queue_size, waitStrategy);
// stop consumerStarted
//recvQueue.consumerStarted();
IContext context = workerData.getContext();
String topologyId = workerData.getTopologyId();
IConnection recvConnection = context.bind(topologyId,
workerData.getPort());
recvConnection.registerQueue(recvQueue);
RunnableCallback recvDispather = new VirtualPortDispatch(workerData,
recvConnection, recvQueue);
AsyncLoopThread vthread = new AsyncLoopThread(recvDispather, false,
Thread.MAX_PRIORITY, false);
return vthread;
}
示例2: startDispatchThread
import backtype.storm.messaging.IContext; //导入方法依赖的package包/类
private void startDispatchThread() {
// remove dispatch thread, send tuple directly from nettyserver
// startDispatchDisruptor();
IContext context = workerData.getContext();
String topologyId = workerData.getTopologyId();
IConnection recvConnection = context.bind(topologyId, workerData.getPort(), workerData.getDeserializeQueues());
workerData.setRecvConnection(recvConnection);
}
示例3: startDispatchThread
import backtype.storm.messaging.IContext; //导入方法依赖的package包/类
private AsyncLoopThread startDispatchThread() {
// send tuple directly from netty server
// send control tuple to dispatch thread
// startDispatchDisruptor();
IContext context = workerData.getContext();
String topologyId = workerData.getTopologyId();
//create recv connection
Map stormConf = workerData.getStormConf();
long timeout = JStormUtils.parseLong(stormConf.get(Config.TOPOLOGY_DISRUPTOR_WAIT_TIMEOUT), 10);
WaitStrategy waitStrategy = new TimeoutBlockingWaitStrategy(timeout, TimeUnit.MILLISECONDS);
int queueSize = JStormUtils.parseInt(stormConf.get(Config.TOPOLOGY_CTRL_BUFFER_SIZE), 256);
DisruptorQueue recvControlQueue = DisruptorQueue.mkInstance("Dispatch-control", ProducerType.MULTI,
queueSize, waitStrategy, false, 0, 0);
//metric for recvControlQueue
QueueGauge revCtrlGauge = new QueueGauge(recvControlQueue, MetricDef.RECV_CTRL_QUEUE);
JStormMetrics.registerWorkerMetric(JStormMetrics.workerMetricName(MetricDef.RECV_CTRL_QUEUE, MetricType.GAUGE), new AsmGauge(
revCtrlGauge));
IConnection recvConnection = context.bind(topologyId, workerData.getPort(), workerData.getDeserializeQueues(),
recvControlQueue, false, workerData.getTaskIds());
workerData.setRecvConnection(recvConnection);
// create recvice control messages's thread
RunnableCallback recvControlDispather = new VirtualPortCtrlDispatch(
workerData, recvConnection, recvControlQueue, MetricDef.RECV_THREAD);
return new AsyncLoopThread(recvControlDispather, false, Thread.MAX_PRIORITY, true);
}
示例4: test_first_client
import backtype.storm.messaging.IContext; //导入方法依赖的package包/类
@Test
public void test_first_client() throws InterruptedException {
System.out.println("!!!!!!!!Start test_first_client !!!!!!!!!!!");
final String req_msg = setupLargMsg();
final IContext context = TransportFactory.makeContext(storm_conf);
new Thread(new Runnable() {
@Override
public void run() {
lock.lock();
IConnection client = context.connect(null, "localhost", port);
List<TaskMessage> list = new ArrayList<TaskMessage>();
TaskMessage message = new TaskMessage(task, req_msg.getBytes());
list.add(message);
client.send(message);
System.out.println("!!Client has sent data");
JStormUtils.sleepMs(1000);
try {
clientClose.await();
} catch (InterruptedException e) {
e.printStackTrace();
}
client.close();
contextClose.signal();
lock.unlock();
}
}).start();
IConnection server = null;
JStormUtils.sleepMs(1000);
System.out.println("!!server begin start!!!!!");
server = context.bind(null, port);
WaitStrategy waitStrategy = (WaitStrategy) Utils
.newInstance((String) storm_conf
.get(Config.TOPOLOGY_DISRUPTOR_WAIT_STRATEGY));
DisruptorQueue recvQueue = DisruptorQueue.mkInstance(
"NettyUnitTest", ProducerType.SINGLE, 1024, waitStrategy);
server.registerQueue(recvQueue);
TaskMessage recv = server.recv(0);
Assert.assertEquals(req_msg, new String(recv.message()));
lock.lock();
clientClose.signal();
server.close();
contextClose.await();
context.term();
lock.unlock();
System.out.println("!!!!!!!!!!!!End test_first_client!!!!!!!!!!!!!");
}
示例5: test_server_reboot
import backtype.storm.messaging.IContext; //导入方法依赖的package包/类
@Test
public void test_server_reboot() throws InterruptedException {
System.out.println("!!!!!!!!!!Start server reboot test!!!!!!!!");
final String req_msg = setupLargMsg();
final IContext context = TransportFactory.makeContext(storm_conf);
IConnection server = null;
new Thread(new Runnable() {
@Override
public void run() {
final IConnection client = context.connect(null, "localhost", port);
lock.lock();
List<TaskMessage> list = new ArrayList<TaskMessage>();
TaskMessage message = new TaskMessage(task, req_msg.getBytes());
list.add(message);
client.send(message);
System.out.println("Send first");
JStormUtils.sleepMs(10000);
System.out.println("Begin to Send second");
client.send(message);
System.out.println("Send second");
JStormUtils.sleepMs(15000);
client.send(message);
System.out.println("Send third time");
try {
clientClose.await();
} catch (InterruptedException e) {
e.printStackTrace();
}
client.close();
contextClose.signal();
lock.unlock();
}
}).start();
server = context.bind(null, port);
WaitStrategy waitStrategy = (WaitStrategy) Utils
.newInstance((String) storm_conf
.get(Config.TOPOLOGY_DISRUPTOR_WAIT_STRATEGY));
DisruptorQueue recvQueue = DisruptorQueue.mkInstance(
"NettyUnitTest", ProducerType.SINGLE, 1024, waitStrategy);
server.registerQueue(recvQueue);
TaskMessage recv = server.recv(0);
System.out.println("Receive first");
Assert.assertEquals(req_msg, new String(recv.message()));
server.close();
System.out.println("!!shutdow server and sleep 30s, please wait!!");
Thread.sleep(30000);
IConnection server2 = context.bind(null, port);
server2.registerQueue(recvQueue);
System.out.println("!!!!!!!!!!!!!!!!!!!! restart server !!!!!!!!!!!");
TaskMessage recv2 = server2.recv(0);
Assert.assertEquals(req_msg, new String(recv2.message()));
lock.lock();
clientClose.signal();
server2.close();
contextClose.await();
context.term();
lock.unlock();
System.out.println("!!!!!!!!!!End server reboot test!!!!!!!!");
}
示例6: test_first_client
import backtype.storm.messaging.IContext; //导入方法依赖的package包/类
@Test
public void test_first_client() throws InterruptedException {
System.out.println("!!!!!!!!Start test_first_client !!!!!!!!!!!");
final String req_msg = setupLargMsg();
final IContext context = TransportFactory.makeContext(storm_conf);
new Thread(new Runnable() {
@Override
public void run() {
lock.lock();
IConnection client = context.connect(null, "localhost", port);
List<TaskMessage> list = new ArrayList<TaskMessage>();
TaskMessage message = new TaskMessage(task, req_msg.getBytes());
list.add(message);
client.send(message);
System.out.println("!!Client has sent data");
JStormUtils.sleepMs(1000);
try {
clientClose.await();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
client.close();
contextClose.signal();
lock.unlock();
}
}).start();
IConnection server = null;
JStormUtils.sleepMs(1000);
System.out.println("!!server begin start!!!!!");
server = context.bind(null, port);
WaitStrategy waitStrategy = (WaitStrategy) Utils
.newInstance((String) storm_conf
.get(Config.TOPOLOGY_DISRUPTOR_WAIT_STRATEGY));
DisruptorQueue recvQueue = DisruptorQueue.mkInstance(
"NettyUnitTest", ProducerType.SINGLE, 1024, waitStrategy);
server.registerQueue(recvQueue);
TaskMessage recv = server.recv(0);
Assert.assertEquals(req_msg, new String(recv.message()));
lock.lock();
clientClose.signal();
server.close();
contextClose.await();
context.term();
lock.unlock();
System.out.println("!!!!!!!!!!!!End test_first_client!!!!!!!!!!!!!");
}
示例7: test_server_reboot
import backtype.storm.messaging.IContext; //导入方法依赖的package包/类
@Test
public void test_server_reboot() throws InterruptedException {
System.out.println("!!!!!!!!!!Start server reboot test!!!!!!!!");
final String req_msg = setupLargMsg();
final IContext context = TransportFactory.makeContext(storm_conf);
IConnection server = null;
new Thread(new Runnable() {
@Override
public void run() {
final IConnection client = context.connect(null, "localhost", port);
lock.lock();
List<TaskMessage> list = new ArrayList<TaskMessage>();
TaskMessage message = new TaskMessage(task, req_msg.getBytes());
list.add(message);
client.send(message);
System.out.println("Send first");
JStormUtils.sleepMs(10000);
System.out.println("Begin to Send second");
client.send(message);
System.out.println("Send second");
JStormUtils.sleepMs(15000);
client.send(message);
System.out.println("Send third time");
try {
clientClose.await();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
client.close();
contextClose.signal();
lock.unlock();
}
}).start();
server = context.bind(null, port);
WaitStrategy waitStrategy = (WaitStrategy) Utils
.newInstance((String) storm_conf
.get(Config.TOPOLOGY_DISRUPTOR_WAIT_STRATEGY));
DisruptorQueue recvQueue = DisruptorQueue.mkInstance(
"NettyUnitTest", ProducerType.SINGLE, 1024, waitStrategy);
server.registerQueue(recvQueue);
TaskMessage recv = server.recv(0);
System.out.println("Receive first");
Assert.assertEquals(req_msg, new String(recv.message()));
server.close();
System.out.println("!!shutdow server and sleep 30s, please wait!!");
Thread.sleep(30000);
IConnection server2 = context.bind(null, port);
server2.registerQueue(recvQueue);
System.out.println("!!!!!!!!!!!!!!!!!!!! restart server !!!!!!!!!!!");
TaskMessage recv2 = server2.recv(0);
Assert.assertEquals(req_msg, new String(recv2.message()));
lock.lock();
clientClose.signal();
server2.close();
contextClose.await();
context.term();
lock.unlock();
System.out.println("!!!!!!!!!!End server reboot test!!!!!!!!");
}