iLogtail的架构发展经历了三个主要阶段:
第一阶段——单一文件采集(2013年起):作为飞天5K项目的日志收集组件,功能单一,仅采集日志文件、支持单一格式解析、只能投递至SLS。完全由C++实现,架构偏向单体,类间依赖严重。
第二阶段——Golang插件扩展:引入Go语言插件系统,扩展了输入输出通道和处理能力。但C++高性能处理能力仍局限于特定场景,无法与Go插件组合使用,存在"性能"和"灵活性"二选一的困境。
第三阶段——架构通用化升级:通过数据模型通用化、C++能力插件化、引入流水线概念等措施,解决了模块组合受限问题,实现了性能与灵活性的统一,为开源生态和产品演进奠定基础。




