消息队列介绍

Kafka分布式消息系统被认为是一种消息引擎系统,或者消息队列中间件。 队列(Queque)是一种先入先出(Fist In First Out - FIFO)的线性表数据结构, 可以使用数组或者链表实现队列, 一个队列需要维护两个指针, head指向队首, tail指向队尾, 移动队尾添加元素(入队), 移动队首指针删除元素(出队). 实际生活中,队列的应用随处可见,比如排队、挂号、传递过程都可以用队列来描述或者实现。 什么是消息队列 生产出美味的巧克力需要三道工序:首先将可可豆磨... ... [查看更多]

Views: 231

1- 初识Storm

什么是Storm? Storm为分布式实时计算提供了一组通用原语,可被用于“流处理”之中,实时处理消息并更新数据库。这是管理队列及工作者集群的另一种方式。 Storm也可被用于“连续计算”(continuous computation),对数据流做连续查询,在计算时就将结果以流的形式输出给用户。它还可被用于“分布式RPC”,以并行的方式计算。 Storm可以方便地在一个计算机集群中编写与扩展复杂的实时计算,Storm用于实时处理,就好比 Hadoop 用于批处理。Storm保证每个... ... [查看更多]

Views: 243

Spark RDD 实战案例

IDEA 创建基于Maven的Spark项目 三台虚拟机搭建的集群 启动集成如下: 本地环境由于需要打包放到虚拟机运行,因此scala版本需要和虚拟机中编译spark所用的scala的版本一致。如何知道虚拟机中spark是用的什么版本scala编译的呢?可以进入虚拟机的spark-shell查看: 可见2.4.8并不是官网所说的使用scala2.12,实际上是2.11 接下来使用IDEA创建一个MAVEN项目,使用scala模板 配置项目名称 配置有效的maven环境 修改... ... [查看更多]

Views: 79

Spark核心源码分析

01 Spark集群启动原理 Spark集群启动时,会在当前节点(脚本执行节点)上启动Master,在配置文件conf/slave中指定的每个节点上启动一个Worker。而Spark集群是通过脚本启动的。 查看启动脚本的内容: 内容: 从启动脚本的内容和注释可以看出,start-all.sh脚本主要做了四件事: (1)检查并设置环境变量 (2)加载Spark配置 Spark配置的加载,使用了脚本文件sbin/spark-config.sh。 (3)启动Master进程 Maste... ... [查看更多]

Views: 86