所谓异步日志系统与以往日志系统不同的是:我们通过前后端分离+数据缓冲区,实现一次写多个数据而不是一个一个数据的写,因此在性能上要优于普通日志系统,普通日志系统相当于串行写入,而异步日至属于并行。
属于多生产者单消费者场景:多个生产者把日志写入缓冲区,单消费者负责把缓冲区数据写入文件。如果只是一个缓冲区,不光要同步各个生产者,还要同步生产者和消费者。这种可以保证生产者的并发,也就是前端不断写日志到缓冲区的同时,后端可以把缓冲区写入文件。
下面是网上找到的模块图
前端

Logger是桥接模式,详细由内部类Impl提供。
后端:

2213

被折叠的 条评论
为什么被折叠?



