storm号称是实时领域的hadoop,作为一个平台型系统,他提供了实时计算,线性扩展,ack机制,事务型Tom,DRPC,Trident等等强大的服务,应用场景也非常广泛,作为一个storm的爱好者,第一步肯定是迫不及待的想编译一下源代码,下面简单的介绍一下storm的在线编译过程,离线编译过程稍微有点复杂(有需求的可以单独联系)。
1.编译storm源代码之前需要先安装好以下软件:
jdk1.6.0_37.tgz(clojure就是运行在jvm之上,这个不用多说)
Python-2.6.tgz(可以使用python编写Topology)
e2fsprogs-1.42.3_tlinux.tar.gz(zmq依赖的uuid就在里面了)
zeromq-2.1.7.tar.gz(storm的源代码用到了zmq做数据传输,c++编写)
nathanmarz-jzmq-dd3327d.zip(storm通过jzmq对zmq的接口进行调用jni实现)
clojure-1.4.0.zip(storm使用clojure编写)
apache-maven-3.0.4-bin.tar.gz(lein构建于maven之上)
lein1.7.1(storm工程使用lein来构建)
ps:以上软件一定要最好按照顺序安装,以上版本是经过测试的,其他版本不保证正确,以上这些全是开源软件,可想而知开源现在的力量有多大,都是免费获取的。lein的安装有些特殊,这一块需要特别注意
2.准备Strom源代码
storm源代码可以从github上下载,github被GFW墙了的同学google一下怎么弄吧。Storm源代码下载地址:https://github.com/nathanmarz/storm,最新的可以选master分支。
3. 编译源代码
3.1下载依赖库
lein deps
看到下面这个说明依赖库下载成功
图1<!--[endif]-->
3.2 编译源代码
lein compile
看到下面这个就说明编译成功了:
图2<!--[endif]-->
3.3 部署源代码(主要就是打包的过程)
lein Install
会将storm的源代码打包为一个jar文件并安装到本地的maven库中去。
图3
当然了,你还可以跑一些lein test测试啥的,你可以通过lein help在查看可选项。
相关推荐
"makefiles.zip"则包含了构建和编译源代码的配置文件,这使得开发者能在不同操作系统环境下顺利编译程序。通过修改Makefile,可以调整编译参数,优化代码执行效率,或者添加新的模块。 针对城市黑臭水体问题,...
### Storm的文档详解 #### 一、Storm基础概念 **1.1 什么是Storm?** Apache Storm 是一款免费且开源的分布式实时计算系统。它专为处理无界数据流而设计,能够实现实时数据处理任务,具备低延迟、高可用、分布式...
只给出了"stormdemo"这一文件名,这可能是项目的根目录,其中可能包含了项目的源代码、配置文件、README文档等。通常,一个基于Maven的Java项目会包含以下结构: - `pom.xml` - Maven的项目对象模型(POM),包含了...
而"jar"文件则可能是指编译后的Java应用程序,它包含了所有必要的类和依赖,可以直接在Storm集群上运行,展示实时数据流处理的工作流程。 【标签】"Storm"进一步强调了这个压缩包与Apache Storm技术的关联。Apache ...
内含适用于Simple32BGC和Storm32BGC三轴无刷云台的源代码,且含有详细自己在编译时所作的中文注释和原理解释;此外还提供了在做项目时总结的关于三轴无刷云台的资源以及相关网站。希望本资源对您有用!
源码版本的Apache Storm允许开发者查看和修改源代码,以便进行以下操作: - **自定义行为**:根据特定需求调整核心组件或实现新的功能。 - **性能优化**:分析和改进代码以提高处理速度或降低资源消耗。 - **调试和...
这个压缩包 "apache-storm-2.0.0-src.tar.gz" 包含了 Apache Storm 的源代码,版本号为 2.0.0,这通常意味着它是经过广泛测试和优化的稳定版本。 在深入了解 Storm 的核心概念和功能之前,让我们先了解一下源代码的...
9. **测试与部署**:在本地环境中编译和测试这个项目后,可以通过提交拓扑到Storm集群来部署和运行。 通过学习这个"storm集成kafka插demo.zip",开发者可以了解到如何在实际项目中构建一个实时数据处理系统,将实时...
通过阅读和运行这些代码,你将更好地理解Storm的实战应用。 总的来说,"Storm编程实例"提供了一个动手学习Storm的好机会,无论你是初学者还是有一定经验的开发者,都能从中受益。通过实际操作,你可以深入理解Storm...
为了运行这个storm例子,用户需要先解压文件,然后使用Maven或者类似的构建工具编译源代码,最后使用Storm CLI或本地模式启动拓扑。在运行过程中,可以观察到数据如何在Spouts和Bolts之间流动,以及如何进行实时处理...
这个名为"apache-storm-2.1.0.tar.gz"的压缩包包含了Apache Storm的2.1.0版本,这是一个非源码的发行版,意味着它包含了编译后的二进制文件,可以直接在Linux环境中运行。该版本是由Apache软件基金会维护的,最初由...
Message-Driven Bean EJB实例源代码 2个目标文件 摘要:Java源码,初学实例,EJB实例 Message-Driven Bean EJB实例源代码,演示一个接收购物订单的消息驱动Bean,处理这个订单同时通过e-mail的形式 //给客户发一个感谢...
接下来,下载Apache Storm 1.2.1的源码或预编译二进制包。你可以访问Apache Storm的官方网站或通过Git克隆其GitHub仓库来获取。一旦下载完成,解压缩文件到你选择的目录,例如`/usr/local/storm`。 配置Storm环境。...
开发者可以利用其强大的调试工具进行程序编写、编译和调试,提高开发效率。 Storm32BGC三轴云台控制系统的软件部分主要包括数据采集、滤波处理、姿态解算和电机控制四大部分。数据采集阶段,STM32F1读取MPU6050和...
Nimbus会分发代码,分配任务给各个工作节点,并持续监控集群的状态。Nimbus与工作节点之间的协调借助于Zookeeper集群进行,确保高可用性和一致性。 2. 工作节点(Work Node)运行Supervisor服务,Supervisor接收...
安装过程通常包括编译源代码、配置服务器参数以及启动服务。 综合这两个组件,用户可能正在搭建一个实时数据处理系统,其中Storm负责数据的实时处理,而Redis则作为中间件提供快速的数据存储和检索。这样的组合在大...
3. DigausTrackingSketches 很可能是Arduino编程的源代码文件,包含控制STorM32云台进行目标跟踪的具体程序。这些代码可能包括数据解析、PID控制算法、电机驱动逻辑等内容。 4. schemes 文件可能包含电路原理图,...
apache-atlas-1.1.0源码编译成品,包括如下文件: apache-atlas-1.1.0-bin.tar.gz apache-atlas-1.1.0-server.tar.gz apache-atlas-1.1.0-falcon-hook.tar.gz apache-atlas-1.1.0-sources.tar.gz apache-atlas-1.1.0...
接下来,学习如何编译和链接SWMM的源代码,这可能需要用到Makefile或CMake等构建工具。最后,实践编写代码来读取和解析inp、out文件,以实现特定的功能需求。 在实际操作中,学习者可以先从简单的任务开始,比如...