scribe概述

scribe并非日志采集工具,而是数据传输软件,它使用thrift协议接收来自各种语言实现的采集器的数据,并将其转发到其他系统、HDFS或磁盘。scribe包含数据接收和发送两大模块,通过thrift线程和缓存机制处理数据流。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        scribe是大名鼎鼎的facebook开源软件,网上很多人喜欢说它是日志采集软件,其实更加准确的说法应该是数据传输软件。scribe本身并没有日志采集的功能,它只能接收别的软件传输过来的数据,并将该数据传输到其他地方。

        既然是传输软件,就要使用一个网络传输协议。scribe使用的thrift协议(后续会有该系列分享)。网络传输协议有了,还需要数据传入软件、数据接收软件和scribe一起搭配才能完成最终的日志或其他数据传输系统。

       日志采集方:可以根据自己的需要使用c++、java或python等任何一种语言实现日志采集功能,并按照thrift协议,调用scribe提供的rpc接口,便可将采集到的数据传输到scribe中。

       日志接受方:scribe可以将接收到的数据发送到另一个实现了scribe数据接rpc接口的其他系统、hdfs或本地磁盘。

       scribe整体可以分为两个大模块:数据接收模块和数据发送模块。

       数据接收模块:此模块是thrift线程进行处理,线程数是可以配置的,因此scribe同一时刻可以接收多个采集器。thrift线程将接收到的数据放到一个缓存中,就结束了它的使命,进而等待下一次的数据接收。

       数据发送模块:主要将接收到的数据从缓存中取出并发送到数据接收方。以多线程的方式进行数据发送。线程数由配置文件决定。

       scribe内部工作原理如下图所示:

      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值