FW 分布式實時計算storm 原理

2021-06-20 05:18:20 字數 1466 閱讀 4105

fw:分布式實時計算storm 原理簡介及單機版安裝指南(3)

下面是以本地模式執行exclamationtopology的**:

1config conf =newconfig();

2conf.setdebug(true);

3conf.setnumworkers(2);

4

5localcluster cluster =newlocalcluster();

6cluster.submittopology("test", conf, builder.createtopology());

7utils.sleep(10000);

8cluster.killtopology("test");

9cluster.shutdown();

首先, 這個**定義通過定義乙個localcluster物件來定義乙個程序內的集群。提交topology給這個虛擬的集群和提交topology給分布式集群是一樣的。通過呼叫submittopology方法來提交topology, 它接受三個引數:要執行的topology的名字,乙個配置物件以及要執行的topology本身。

topology的名字是用來唯一區別乙個topology的,這樣你然後可以用這個名字來殺死這個topology的。前面已經說過了, 你必須顯式的殺掉乙個topology, 否則它會一直執行。

conf物件可以配置很多東西, 下面兩個是最常見的:

topology_workers(setnumworkers) 

定義你希望集群分配多少個工作程序給你來執行這個topology. topology裡面的每個元件會被需要執行緒來執行。每個元件到底用多少個執行緒是通過setbolt和setspout來指定的。這些執行緒都執行在工作程序裡面. 每乙個工作程序包含一些節點的一些工作執行緒。比如, 如果你指定300個執行緒,60個程序, 那麼每個工作程序裡面要執行6個執行緒, 而這6個執行緒可能屬於不同的元件(spout, bolt)。你可以通過調整每個元件的並行度以及這些執行緒所在的程序數量來調整topology的效能。

執行中的topology主要由以下三個元件組成的:

worker processes(程序)

executors (threads)(執行緒)

tasks

《Storm分布式實時計算模式》 導讀

目 錄 前言 第1章 分布式單詞計數 1.1 storm topology的組成部分 stream spout和bolt 1.2 單詞計數topology的資料流 1.3 實現單詞計數topology 1.4 storm的併發機制 1.5 理解資料流分組 1.6 有保障機制的資料處理 總結 第2章 ...

分布式實時計算系統

reference 1 批處理在大資料世界有著悠久的歷史。批處理主要操作大容量靜態資料集,並在計算過程完成後返回結果。批處理模式中使用的資料集通常符合下列特徵 批處理非常適合需要訪問全套記錄才能完成的計算工作。例如在計算總數和平均數時,必須將資料集作為乙個整體加以處理,而不能將其視作多條記錄的集合。...

原 Storm分布式RPC

分布式 rpc drpc 的設計目標是充分利用 storm 的計算能力實現高密度的並行實時計算。storm 接收若干個函式引數作為輸入流,然後通過 drpc 輸出這些函式呼叫的結果。嚴格來說,drpc 並不能算作是 storm 的乙個特性,因為它只是一種基於 storm 原語 stream spou...