`
flychao88
  • 浏览: 753041 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
大家好,关于博客的内容,后续主要在如下地址中进行发表,这里的博客只是作为同步记录使用,有可能图片会不能显示出来,请大家移足到这里查看,谢谢。        http://www.jianshu.com/users/a9b2d43bb94e/latest_articles   http://blog.csdn.net/u013970991?viewmode=contents
学习大数据,数据挖掘请关注小象学院公众号二维码!!
简书:http://www.jianshu.com/u/a9b2d43bb94e csdn博客:http://blog.csdn.net/u013970991/
  说明:本文不介绍如何使用Diamond,只介绍Diamond的实现原理 一、什么是Diamond diamond是淘宝内部使用的一个管理持久配置的系统,它的特点是简单、可靠、易用,目前淘宝内部绝大多数系统的配置,由diamond来进行统一 ...
玩转Flume之核心架构深入解析 字数2224 阅读29 评论0 喜欢0 前段时间我们分享过玩转Flume+Kafka原来也就那点事儿和Flume-NG源码分析-整体结构及配置载入分析这二篇文章,主要介绍了flume的简单使用和配置文件加载的全过程,那么今天我们重点分析flume核心原理,从而了解Source、Channel和Sink的全链路过程。
Flume-NG源码分析-整体结构及配置载入分析   弦外之音很多朋友都在问我,经常看各种框架的源码会不会感到很枯燥,是什么东西在驱动着我一直看下去。其实我想说的很简单,作为一个程序员,不管你工作了多少年,能够经常学习和借鉴国内外优秀框架设计思想和程序架构,我想对我们来说是最直接的提高。 终于开始Flume源码的分析研究工作了,我也是边学边和大家分享,内容上难免有不足之处,望大家见谅。 在 http://flume.apache.org 上下载flume-1.6.0版本,将源码导入到Idea开发工具后如下图所示:
好久没有写分享了,继前一个系列进行了Kafka源码分享之后,接下来进行Flume源码分析系列,望大家继续关注,今天先进行开篇文章Flume+kafka的环境配置与使用。 一、FLUME介绍 Flume是一个分布式、可靠、和高可用的海量 ...
这篇文章是作为:[跟我学Kafka源码之Consumer分析](http://flychao88.iteye.com/blog/2268481) 的补充材料,看过我们之前源码分析的同学可能知道。 本文将从客户端程序如何调用Consumer获取到最终Kafka消息的全过程以图解的方式作一个源码级别的梳理。    
因为最近工作的关系,要把异步任务从应用服务器中拆分到专门的异步处理服务器中. 方案一 是采用MQ的方式将任务消息发出,在服务端进行处理,如下图所示: Sample Flowchart Template (2).png
我们的kafka源码分享已经进行过很多期了,主要的内容也都分享的差不多了,那么那么在今后的分享中,主要集中在kafka性能优化和使用 Kafka集群中的其中一个Broker会被选举为Controller,主要负责Partition管理和副本状态管理,也会执行类似于重分配Partition之类的管理任务。如果当前的Controller失败,会从其他正常的Broker中重新选举Controller。 进入KafkaController.scala文件看到如下代码: class KafkaController(val config :
一、zookeeper存储结构总图 图片 当我们kafka启动运行以后,就会在zookeeper上初始化kafka相关数据,主要包括六大类: consumers admin config controller brokers controller_epoch 1、brokers节点结构说明
很久没有做技术方面的分享了,今天闲来有空写一篇关于Kafka通信方面的文章与大家共同学习。 一、Kafka通信机制的整体结构 74EACA88-8B9D-45F8-B7BF-202D658205A9.png 这个图采用的就是我们之前提到的SEDA多线程模型,链接如下:http:/ ...
学习过[跟我学Kafka源码之LogManager分析]的同学一定会问为什么Kafka大量使用了磁盘作为传统意义的缓存。 其实Kafka最核心的思想是使用磁盘,而不是使用内存,可能所有人都会认为,内存的速度一定比磁盘快,我也不例外。在看了Kafka的设计思想,查阅了相应资料再加上自己的测试后,发现磁盘的顺序读写速度和内存持平。 而且Linux对于磁盘的读写优化也比较多,包括read-ahead和write-behind,磁盘缓存等。如果在内存做这些操作的时候,一个是JAVA对象的内存开销很大,另一个是随着堆内存数据的增多,JAVA的GC时间会变得很长,使用磁盘操作有以下几个好处: 磁 ...
一、传统并发模型的缺点基于线程的并发 特点:每任务一线程直线式的编程使用资源昂高,context切换代价高,竞争锁昂贵太多线程可能导致吞吐量下降,响应时间暴涨。 基于事件的并发模型
作为一个Java开发人员,有些常用的Linux命令必须掌握。即时平时开发过程中不使用Linux(Unix)或者mac系统,也需要熟练掌握Linux命令。因为很多服务器上都是Linux系统。所以,要和服务器机器交互,就要通过shell命令。 本文并不会对所有命令进行详细讲解,只给出常见用法和解释。具体用法可以使用--help查看帮助或者直接通过google搜索学习。 1.查找文件
Global site tag (gtag.js) - Google Analytics