use of backtype.storm.topology.TopologyBuilder in project jstorm by alibaba.
the class WordCountTopology method main.
/**
* Main method
*/
public static void main(String[] args) throws AlreadyAliveException, InvalidTopologyException {
if (args.length != 1) {
throw new RuntimeException("Specify topology name");
}
int parallelism = 10;
TopologyBuilder builder = new TopologyBuilder();
builder.setSpout("word", new WordSpout(), parallelism);
builder.setBolt("consumer", new ConsumerBolt(), parallelism).fieldsGrouping("word", new Fields("word"));
Config conf = new Config();
conf.setNumStmgrs(parallelism);
/*
Set config here
*/
StormSubmitter.submitTopology(args[0], conf, builder.createTopology());
}
use of backtype.storm.topology.TopologyBuilder in project jstorm by alibaba.
the class TridentMapExample method test.
public static void test() {
TopologyBuilder builder = new TopologyBuilder();
builder.setSpout("spout", new InOrderSpout(), 8);
builder.setBolt("count", new Check(), 8).fieldsGrouping("spout", new Fields("c1"));
Config conf = new Config();
conf.setMaxSpoutPending(20);
String[] className = Thread.currentThread().getStackTrace()[1].getClassName().split("\\.");
String topologyName = className[className.length - 1];
if (isLocal) {
drpc = new LocalDRPC();
}
try {
JStormHelper.runTopology(buildTopology(drpc), topologyName, conf, 60, new DrpcValidator(), isLocal);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
Assert.fail("Failed");
}
}
use of backtype.storm.topology.TopologyBuilder in project jstorm by alibaba.
the class TridentMinMaxOfVehiclesTopology method test.
public static void test() {
TopologyBuilder builder = new TopologyBuilder();
builder.setSpout("spout", new InOrderSpout(), 8);
builder.setBolt("count", new Check(), 8).fieldsGrouping("spout", new Fields("c1"));
conf.setMaxSpoutPending(20);
String[] className = Thread.currentThread().getStackTrace()[1].getClassName().split("\\.");
String topologyName = className[className.length - 1];
if (isLocal) {
drpc = new LocalDRPC();
}
try {
JStormHelper.runTopology(buildVehiclesTopology(), topologyName, conf, 60, new JStormHelper.CheckAckedFail(conf), isLocal);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
Assert.fail("Failed");
}
}
use of backtype.storm.topology.TopologyBuilder in project jstorm by alibaba.
the class ManualDRPCTest method testManualDRPC.
@Test
public void testManualDRPC() {
TopologyBuilder topologyBuilder = new TopologyBuilder();
LocalDRPC localDRPC = new LocalDRPC();
DRPCSpout spout = new DRPCSpout("exclamation", localDRPC);
topologyBuilder.setSpout("drpc", spout);
topologyBuilder.setBolt("exclaim", new ManualDRPC.ExclamationBolt(), 3).shuffleGrouping("drpc");
topologyBuilder.setBolt("return", new ReturnResults(), 3).shuffleGrouping("exclaim");
Config config = new Config();
config.put(Config.TOPOLOGY_NAME, "ManualDRPCTest");
JStormUnitTestValidator validator = new JStormUnitTestDRPCValidator(localDRPC) {
@Override
public boolean validate(Map config) {
assertEquals("hello!!!", executeLocalDRPC("exclamation", "hello"));
assertEquals("good bye!!!", executeLocalDRPC("exclamation", "good bye"));
return true;
}
};
try {
JStormUnitTestRunner.submitTopology(topologyBuilder.createTopology(), config, 60, validator);
} finally {
localDRPC.shutdown();
}
}
use of backtype.storm.topology.TopologyBuilder in project jstorm by alibaba.
the class FastWordCountTest method testFastWordCount.
@Test
public void testFastWordCount() {
int spout_Parallelism_hint = 1;
int split_Parallelism_hint = 1;
int count_Parallelism_hint = 2;
TopologyBuilder builder = new TopologyBuilder();
boolean isLocalShuffle = false;
builder.setSpout("spout", new FastWordCountTopology.FastRandomSentenceSpout(), spout_Parallelism_hint);
if (isLocalShuffle)
builder.setBolt("split", new FastWordCountTopology.SplitSentence(), split_Parallelism_hint).localFirstGrouping("spout");
else
builder.setBolt("split", new FastWordCountTopology.SplitSentence(), split_Parallelism_hint).shuffleGrouping("spout");
builder.setBolt("count", new FastWordCountTopology.WordCount(), count_Parallelism_hint).fieldsGrouping("split", new Fields("word"));
Map config = new HashMap();
config.put(Config.TOPOLOGY_NAME, "FastWordCountTest");
JStormUnitTestRunner.submitTopology(builder.createTopology(), config, 60, null);
}
Aggregations