今天就跟大家聊聊有关Storm中的URLInjector该怎么理解,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
介绍: URLInjector,我封装了的一个简单的客户端,我们将要放URLs,到一个分片队列里面 【sharded queue】,只有放置到分片队列的数据才会被Storm的管线所处理。
package com.digitalpebble.storm.crawler;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import com.digitalpebble.storm.crawler.util.Configuration;
import com.digitalpebble.storm.fetchqueue.ShardedQueue;
public class URLInjector {
private ShardedQueue queue;
URLInjector() throws Exception {
Configuration config = StormConfiguration.create();
queue = ShardedQueue.getInstance(config);
}
public void add(String url) {
try {
queue.add(url);
} catch (Exception e) {
e.printStackTrace();
}
}
public void close() {
queue.close();
}
public static void main(String[] args) throws Exception {
String messages = args[0];
URLInjector client = new URLInjector();
BufferedReader reader = new BufferedReader(new FileReader(new File(
messages)));
String line = null;
while ((line = reader.readLine()) != null) {
client.add(line.trim());
}
reader.close();
client.close();
}
}
看完上述内容,你们对Storm中的URLInjector该怎么理解有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注天达云行业资讯频道,感谢大家的支持。