# 本地模式
本地模式是一種在本地進程中模擬Storm集群的工作模式,對開發和測試 topologies(拓撲) 非常有用.本地模式運行 topologies(拓撲)和在[集群上](Running-topologies-on-a-production-cluster.html)運行 topologies 一樣。
創建一個進程內的集群,只需要使用 LocalCluster 類. 例如:
```
import org.apache.storm.LocalCluster;
LocalCluster cluster = new LocalCluster();
```
然后,您可以使用 `LocalCluster` 對象的 `submitTopology` 方法提交topologies(拓撲),和 [StormSubmitter](javadocs/org/apache/storm/StormSubmitter.html)中的一些方法相似, `submitTopology` 以 拓撲名稱,topology configuration,和 topology 對象作為參數. 你可以使用 `killTopology` 方法 kill a topology,killTopology 方法接受 topology name 為參數 使用以下語句關閉本地模式集群:
```
cluster.shutdown();
```
### 本地模式的常用配置
您可以在這里看到所有的配置 [config列表](javadocs/org/apache/storm/Config.html).
1. **Config.TOPOLOGY_MAX_TASK_PARALLELISM**: 該配置項設置了單個組件(bolt/spout)的線程數上限。生產環境上的 topology 往往含有很高的并行度(數百個線程),導致在本地模式下測試 topology(拓撲)時會有較大的負載。這個配置項可以讓你很容易地控制并行度。
2. **Config.TOPOLOGY_DEBUG**: 此配置項設置為 true 時,spout 或者 bolt 每一次發送 tuple 的時候,Storm都會打印日志。這個功能對于調試很有用。
- Storm 基礎
- 概念
- Scheduler(調度器)
- Configuration
- Guaranteeing Message Processing
- 守護進程容錯
- 命令行客戶端
- Storm UI REST API
- 理解 Storm Topology 的 Parallelism(并行度)
- FAQ
- Layers on Top of Storm
- Storm Trident
- Trident 教程
- Trident API 綜述
- Trident State
- Trident Spouts
- Trident RAS API
- Storm SQL
- Storm SQL 集成
- Storm SQL 示例
- Storm SQL 語言參考
- Storm SQL 內部實現
- Flux
- Storm 安裝和部署
- 設置Storm集群
- 本地模式
- 疑難解答
- 在生產集群上運行 Topology
- Maven
- 安全地運行 Apache Storm
- CGroup Enforcement
- Pacemaker
- 資源感知調度器 (Resource Aware Scheduler)
- 用于分析 Storm 的各種內部行為的 Metrics
- Windows 用戶指南
- Storm 中級
- 序列化
- 常見 Topology 模式
- Clojure DSL
- 使用沒有jvm的語言編輯storm
- Distributed RPC
- Transactional Topologies
- Hooks
- Storm Metrics
- Storm 狀態管理
- Windowing Support in Core Storm
- Joining Streams in Storm Core
- Storm Distributed Cache API
- Storm 調試
- 動態日志級別設置
- Storm Logs
- 動態員工分析
- 拓撲事件檢查器
- Storm 與外部系統, 以及其它庫的集成
- Storm Kafka Integration
- Storm Kafka 集成(0.10.x+)
- Storm HBase Integration
- Storm HDFS Integration
- Storm Hive 集成
- Storm Solr 集成
- Storm Cassandra 集成
- Storm JDBC 集成
- Storm JMS 集成
- Storm Redis 集成
- Azue Event Hubs 集成
- Storm Elasticsearch 集成
- Storm MQTT(Message Queuing Telemetry Transport, 消息隊列遙測傳輸) 集成
- Storm MongoDB 集成
- Storm OpenTSDB 集成
- Storm Kinesis 集成
- Storm Druid 集成
- Storm and Kestrel
- Container, Resource Management System Integration
- Storm 高級
- 針對 Storm 定義一個不是 JVM 的 DSL
- 多語言協議
- Storm 內部實現
- 翻譯進度