11. Fluentd部署:性能优化
如果你的日志请求达到了5000条/秒,这里描述的技术点可用于调优。
检查操作系统配置
在安装Fluentd之前,进行操作系统参数优化。通过top查看系统瓶颈
如果发现Fluentd运行效率不佳,可先查看一下当前系统瓶颈在哪里:CPU?内存?磁盘IO?避免额外运算
不要在Fluentd中执行过多的额外运算。这其实也是一个通用的使用建议。虽然Fluentd可以进行各种过滤、格式化等操作,但是过于复杂的配置难于理解和维护,也会降低其性能和健壮性。配置文件应保持尽可能的简单。使用flush_thread_count参数
如果Fluentd输出的日志目的地是一个远端的服务器或者服务,可打开配置文件中的flush_thread_count参数,此参数默认值为1. 使用多个flush线程会掩盖网络延迟,增加并发输出。
该参数适用于所有的output插件。参考配置如下:
<match test>
@type output_plugin
<buffer ...>
flush_thread_count 8
...
</buffer>
...
</match>
- 对S3/TD插件使用外部gzip
Ruby使用GIL控制多线程的执行,同一时刻只能有一个线程运行,这在一定程度上降低了系统的并发性能。
S3/TD插件允许异步调用外部的gzip程序来进行数据压缩,这可释放CPU的部分算力来执行其他处理逻辑。
配置如下所示:
# S3
<match ...>
@type s3
store_as gzip_command
<buffer ...>
flush_thread_count 8
...
</buffer>
...
</match>
# Treasure Data
<match ...>
@type tdlog
use_gzip_command
<buffer ...>
flush_thread_count 8
...
</buffer>
...
</match>
减少内存使用
Ruby可配置GC参数以优化内存使用性能,可通过环境变量进行配置。为减少内存使用,可调整RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR为较小的值,默认为2.0,可将其调整为0.9或1.2等。具体可参考Ruby官方文档。多worker模式
对于日志量级很大的场景,CPU通常会是Fluentd的性能瓶颈。此时可启用多worker模式,通过多个worker进程并行处理日志事件。
<system>
workers 8
</system>
11. Fluentd部署:性能优化的更多相关文章
- 11 MySQL之性能优化
01-优化简介 MySQL数据库优化是多方面的,原则是减少系统瓶颈,减少资源的占用,增加系统的反应速度. 1.通过优化文件系统,提高磁盘I\O的速写速度: 2.通过优化操作系统的调度策略,提高MySQ ...
- Android性能优化问题总结
性能优化这块,分为UI性能优化.内存优化.数据库优化.网络优化.耗电优化等等.可以从1.如何发现问题,2.怎么解决问题,3.解决效果对比,这几个方面去描述.举个简单例子——UI优化,可以从 UI出现什 ...
- Android性能优化的方方面面
通常项目比较大的APP都面临着如下性能问题,APP启动慢.界面跳转慢.事件相应慢.滑动和动画卡顿.展现内容慢等,有的公司处理的很好,有的还有很大的优化空间,对于性能优化,怎么去做,我总结了一下性能优化 ...
- 服务器小白的我,是如何将 node+mongodb 项目部署在服务器上并进行性能优化的
前言 本文讲解的是:做为前端开发人员,对服务器的了解还是小白的我,是如何一步步将 node+mongodb 项目部署在阿里云 centos 7.3 的服务器上,并进行性能优化,达到页面 1 秒内看到 ...
- vue-小爱ADMIN系列文章(二):微信微博等分享,国际化,前端性能优化,nginx服务器部署
最近在做我的小爱ADMIN后台管理系统,结合当前市场后台管理系统对相关功能的需求,我又开始新增了一些新的功能和组件,如分享功能组件,项目国际化功能:项目完成后,部署在nginx服务器,发现首次访问的速 ...
- Android进阶笔记11:ListView篇之ListView性能优化
1. 首先思考一个问题ListView如何才能提高效率 ? 当convertView为空时候,用setTag()方法为每个View绑定一个存放控件的ViewHolder对象.当convertView不 ...
- CSS3与页面布局学习总结(八)——浏览器兼容与前端性能优化
一.浏览器兼容 1.1.概要 世界上没有任何一个浏览器是一样的,同样的代码在不一样的浏览器上运行就存在兼容性问题.不同浏览器其内核亦不尽相同,相同内核的版本不同,相同版本的内核浏览器品牌不一样,各种运 ...
- (转) Android开发性能优化简介
作者:贺小令 随着技术的发展,智能手机硬件配置越来越高,可是它和现在的PC相比,其运算能力,续航能力,存储空间等都还是受到很大的限制,同时用户对手机的体验要求远远高于PC的桌面应用程序.以上理由,足以 ...
- CSS3与页面布局学习笔记(八)——浏览器兼容性问题与前端性能优化方案
一.浏览器兼容 1.1.概要 世界上没有任何一个浏览器是一样的,同样的代码在不一样的浏览器上运行就存在兼容性问题.不同浏览器其内核亦不尽相同,相同内核的版本不同,相同版本的内核浏览器品牌不一样,各种运 ...
随机推荐
- Ubuntu 隐藏所有窗口快捷键不生效问题
在绑定界面卡住时,切换到一个tty窗口,再切回来 gsettings reset-recursively org.gnome.settings-daemon.plugins.media-keys gs ...
- 线程池ThreadPoolExector核心ctl, execute, addWorker, reject源码分析
线程池核心方法execute()解析: public void execute(Runnable command) {//#1 if (command == null) throw new NullP ...
- 开发实践丨昇腾CANN的推理应用开发体验
摘要:这是关于一次 Ascend 在线实验的记录,主要内容是通过网络模型加载.推理.结果输出的部署全流程展示,从而快速熟悉并掌握 ACL(Ascend Computing Language)基本开发流 ...
- 深入剖析(JDK)ArrayQueue源码
深入剖析(JDK)ArrayQueue源码 前言 在本篇文章当中主要给大家介绍一个比较简单的JDK为我们提供的容器ArrayQueue,这个容器主要是用数组实现的一个单向队列,整体的结构相对其他容器来 ...
- Solution -「二项式定理与组合恒等式」一些练习
Task 1 \(\mathcal{Prob:}\) \((3x - 2y)^{18}\) 的展开式中, \(x^5y^{13}\) 的系数是什么?\(x^8y^9\) 的系数是什么? \(\math ...
- AtCoder Beginner Contest 248 E - K-colinear Line // 计算几何
原题链接:E - K-colinear Line (atcoder.jp) 题意: 给出直角坐标系上N个点(N <= 300),求经过这些点中至少K个点的直线数量,若有无穷多条,则输出" ...
- springmvc源码笔记-HandlerMethodReturnValueHandler
返回值解析器 用于对controller的返回值进行二次处理 结构 // 返回值解析器 public interface HandlerMethodReturnValueHandler { // 判断 ...
- mysql 之full join
首先,mysql中是不支持full join的,如果要实现类似的功能可以用union all,union会剔除重复.以下是实现实例 create table if not exists t1(`id` ...
- SkiaSharp 之 WPF 自绘 粒子花园(案例版)
此案例包含了简单的碰撞检测,圆形碰撞检测方法,也可以说是五环弹球的升级版,具体可以根据例子参考. 粒子花园 这名字是案例的名字,效果更加具有科技感,很是不错,搞搞做成背景特效也是不错的选择. Wpf ...
- pat甲级考试+pat1051+1056
同上一篇博客: 贪心题目我已经刷了将近30道了,由于那几天考驾照就没写,以后有空的时候补过来吧,都在codeblock里 pat的题也刷了点,acwing 的题也刷了点,基本都攒下了.以后也会慢慢补过 ...