在深入Linux系统的复杂世界中,性能优化始终是SRE关注的热点。最近在拜读国际著名的 LINUX 性能专家 Brendan Gregg 的个人博客和技术书籍。他的工作不仅涵盖了系统性能的监控和分析,还深入探讨了性能问题的根源及其解决方案。通过他的个人博客和技术书籍,我们可以窥见Linux性能优化的精髓,学习到如何利用各种工具和方法来提升系统效率,确保应用的顺畅运行。将会结合 Brendan Gregg博文与个人理解 出一个拜读系列博文。
BPF 是近年来Linux 系统技术领域一个巨大的创新。作为 Linux 内核的一个关键发展节点,其重要程度不亚于虚拟化、容器、SDN 等技术。
在 Linux 服务器中,可以通过内核调优、DPDK 以及 XDP 等多种方式提高服务器的抗攻击能力,降低 DDoS 对正常服务的影响。在应用程序中,可以使用各级缓存、WAF、CDN 等来缓解 DDoS 对应用程序的影响。
原文:https://blog.devgenius.io/linux-troubleshoot-network-latency-a6da740f5cb8
了解Linux的流量控制的目的:一是为了更好地理解底层对报文的处理逻辑,二是在流量控制中使用了很多很好的流量处理方法,可以学习一下这些方法和思想,翻译自:https://tldp.org/en/Traffic-Control-HOWTO/index.html。
常用的 ping,tracert,nslookup 一般用来判断主机的网络连通性,其实 Linux 下有一个更好用的网络联通性判断工具,它可以结合ping nslookup tracert 来判断网络的相关特性,这个命令就是 mtr。mtr 全称 my traceroute,是一个把 ping 和 traceroute 合并到一个程序的网络诊断工具。traceroute默认使用UDP数据包探测,而mtr默认使用ICMP报文探测,ICMP在某些路由节点的优先级要比其他数据包低,所以测试得到的数据可能低于实际情况。
笔者有一个需要搭建弱网环境来复现某个网络问题的需求,因此开始在网络中寻找能够快速搭建弱网环境的方式。
本文基于 Joe Mario 的一篇博客 改编而成。 Joe Mario 是 Redhat 公司的 Senior Principal Software Engineer,在系统的性能优化领域颇有建树,他也是本文描述的 perf c2c 工具的贡献者之一。 这篇博客行文比较口语化,且假设读者对 CPU 多核架构,Cache Memory 层次结构,以及 Cache 的一致性协议有所了解。 故此,笔者决定放弃照翻原文,并且基于原博客文章做了一些扩展,增加了相关背景知识简介。 本文中若有任何疏漏错误,责任在于编译者。有任何建议和意见,请回复内核月谈微信公众号,或通过 oliver.yang at linux.alibaba.com 反馈。
最近碰到一个Oracle DG备库延迟的问题,经过排查,定位是磁盘性能问题,用的是普通磁盘,而不是SSD,且性能较差,存在读写等待。
常用的 ping,tracert,nslookup 一般用来判断主机的网络连通性,其实 Linux 下有一个更好用的网络联通性判断工具,它可以结合ping nslookup tracert 来判断网络的相关特性,这个命令就是 mtr。mtr 全称 my traceroute,是一个把 ping 和 traceroute 合并到一个程序的网络诊断工具。
作者:Deepak Charan Logavaseekaran, Rakshith Macha Billava
邢孟棒,曾供职于阿里、网易,目前在腾讯云专职做性能优化方向。Linux 业余爱好者,偏好钻研各类工具源码与底层技术原理。在日常的性能工程实践中,比较注重方法论的探索、优化案例的沉淀。热衷于 eBPF 技术,擅长传统工具与 BPF 工具的结合应用。
前不久Redis宣布从 Redis 7.4 开始,将原先比较宽松的 BSD 源码使用协议修改为 RSALv2 和 SSPLv1 协议,该协议变化意味着Redis不再开源。今天给大家分享一款完全开源(MIT协议)、免费的Redis替代性项目产品:Garnet。
在现代计算机系统中,了解系统的内部运行情况对于诊断问题、优化性能以及进行安全监控至关重要。bpftrace作为一款强大的跟踪工具,为开发人员和系统管理员提供了一种独特的方式来监视和分析Linux系统的内部运行。本文描述bpftrace的原理和使用。
作者 | 苏欣 来源 | https://cloud.tencent.com/developer/article/1491610 常用的 ping,tracert,nslookup 一般用来判断主机的网络连通性,其实 Linux 下有一个更好用的网络联通性判断工具,它可以结合ping nslookup tracert 来判断网络的相关特性,这个命令就是 mtr。 mtr 全称 my traceroute,是一个把 ping 和 traceroute 合并到一个程序的网络诊断工具。 traceroute 默
OpenTelemetry可以用于生成和收集遥测数据,如日志、指标和追踪。使用OpenTelemetry进行可观测性的优点是其开源免费,能够避免您受制于某一供应商。您可以把OpenTelemetry应用于多个场景中。
因生产环境mysql中有较多复杂sql且运行效率低,因此采用tidb作为生产环境的从库进行部分慢sql及报表的读写分离。其中MySQL至TIDB采用Syncer工具同步。
在性能测试中,服务器资源是值得关注一项内容,目前,市面上已经有很多的服务器资源监控方法和各种不同的监控工具,方便在各个项目中使用。
curl和wget都是命令行工具,用于从Web服务器下载文件或数据。它们之间的区别在于:
容器的隔离主要是依赖 Linux 操作系统的 Namespace 和 Cgroup,与依赖硬件辅助虚拟化的虚拟机隔离不同,前者存在不少隔离漏洞。随着云原生场景的大规模使用,大量应用的容器化暴露出了容器隔离性问题。
为了让大家更容易「看得见」 TCP,我搭建不少测试环境,并且数据包抓很多次,花费了不少时间,才抓到比较容易分析的数据包。
原文发表于2023年6月28日,链接 https://www.elastic.co/blog/open-sourcing-sysgrok-ai-assistant
看过黑客帝国的朋友想必对那一大片黑底绿色的画面印象颇深,其实在Linux中有一个工具可能展示出黑客帝国风格的画面,还可以当作屏保使用。
导读:OpenCloudOS 社区是由操作系统、软硬件厂商与个人共同倡议发起的操作系统社区项目,提供自主可控、绿色节能、安全可靠、高性能的下一代云原生操作系统,与生态伙伴一起打造中立的操作系统开源生态。 作为社区重要的技术方向,OpenCloudOS 社区的云原生操作系统自研了一系列的云原生特性,本文主要介绍 CgroupFS 和 SLI。 一、CgroupFS 特性 1、方案背景 容器的隔离主要是依赖 Linux 操作系统的 Namespace 和 Cgroup,与依赖硬件辅助虚拟化的虚拟机隔离不同,前者
1.计算延迟时间: 使用–latency参数 以下参数表示平均超时时间0.03ms。 redis-cli --latency -h 127.0.0.1 -p 6800 min: 0, max: 4, avg: 0.03 (12235 samples) 注意:由于使用的是本机的回环地址,所以这样其实忽略了带宽上的延迟 使用redis内部的延迟检测子系统测试:见上一篇文章中“启用延迟监控系统“部分。 2.延迟标准: 使用–intrinsic-latency参数 需要运行在redis serv
本文摘自“ Docker in Action ”(Docker实战)一书,将向您展示在容器之间共享内存的方法。
Zipkin是Twitter的一个开源项目,是一个致力于收集Twitter所有服务的监控数据的分布式跟踪系统,它提供了收集数据,和查询数据两大接口服务。 部署Zipkin环境的操作记录: 部署Zipkin,比较麻烦的是前期环境的准备,只有先把前期环境安装好了,后面的部署就顺利多了。(部署机ip为192.168.1.102) 一、环境准备: 1)java环境安装(Centos中yum方式安装java) -----------------------------------------------------
如何在 Linux 上安装 tcpping 测量到远程主机的网络延迟的一种常用方法是使用ping应用程序。该ping工具依赖 ICMP ECHO 请求和回复数据包来测量远程主机的往返延迟。但是,在某些情况下,ICMP 流量可能会被防火墙阻止,这使得该ping应用程序对于受限制的防火墙后面的主机毫无用处。在这种情况下,你将需要依赖使用 TCP/UDP 数据包的第 3 层测量工具,因为这些第 3 层数据包更有可能绕过常见的防火墙规则。 一种这样的第 3 层测量工具是tcpping. 为了测量延迟,tcpping
llamafile 是一个开源项目,旨在通过将 lama.cpp 与 Cosmopolitan Libc 结合成一个框架,将 LLM (Large Language Models) 的复杂性折叠到单个文件可执行程序中,并使其能够在大多数计算机上本地运行而无需安装。该项目的主要功能和核心优势包括:
今天看到微软研究院开源了一个新的C#项目,叫Garnet,它实现了Redis协议,可以直接将Redis替换为Garnet,客户端不需要任何修改。根据其官网的信息,简单的介绍一下它。
有很多新手朋友在买来服务器之后不知道自己的服务器到底好不好,有时候快有时候又慢得令人发指;或者刚买来的时候速度不错,用久了却越用越卡;又或者总是间歇性的抽风。
本文带来的是基于全志T507-H(硬件平台:创龙科技TLT507-EVM评估板),Linux-RT内核的硬件GPIO输入和输出实时性测试及应用开发案例的分享。本次演示的开发环境如下:
了解更多BPF技术内幕,推荐阅读《BPF之巅:洞悉Linux系统和应用性能》一书。 ▼ BPF是近年来Linux 系统技术领域一个巨大的创新。作为 Linux 内核的一个关键发展节点,其重要程度不亚于虚拟化、容器、SDN 等技术。 ▼BPF 的工作方式十分有趣 : 最终用户使用 BPF 虚拟机的指令集(也称 BPF 字节码)定义过滤器表达式,然后传递给内核,由解释器执行。这使得包过滤可以在内核中直接进行,避免了向用户态进程复制每个数据包,从而提升了数据包过滤的性能,tcpdump(8) 就是这样工作的。
本文为Linux-RT内核应用开发教程的第一章节——Linux-RT内核简介、Linux系统实时性测试,欢迎各位阅读!本期用到的案例板子是创龙科技旗下的A40i工业级别开发板,是基于全志科技A40i处理器设计,4核ARM Cortex-A7的高性能低功耗国产开发板,每核主频高达1.2GHz。
Yelp 础设施团队的主要目标之一就是为了尽可能接近零停机时间。那也就是说当用户访问www.yelp.com作出动作的时候,网站的响应速度必须尽可能的快。一种方法是使用 HAProxy 负载均衡能够保持 www.yelp.com 网站的响应速度。通常我们在任何地方都使用 HAProxy 来保持网站的外部负载均衡、内部负载均衡,甚至运用到构建面向服务的架构中。我们发现在 Yelp 的每台机器上运行 HAProxy,均可作为 SmartStack 的一部分。 我们喜欢在发展 SOA 的时候使用 SmartSt
就目前的 IT 市场而言,DevOps 领域是 IT 从业者薪资和职业发展的最佳选择之一。也因此,我经常会被问到的一个问题就是:“如何才能成为一名 DevOps 工程师?”在本博客中,我将尝试用自己在
BPF是近年来Linux 系统技术领域一个巨大的创新。作为 Linux 内核的一个关键发展节点,其重要程度不亚于虚拟化、容器、SDN 等技术。
如果你正在使用 Apache Web 服务器,并且迫切需要一些可观测性工具来监控你的 Web 服务器,那么OpenTelemetry Apache 模块[1]是你的合适选择:它能够追踪对服务器的传入请求,并且它将捕获这种传入请求中涉及的许多模块(包括 mod_proxy)的响应时间。这样你就可以得到每个模块的时间消耗。本文展示了 Apache OpenTelemetry 模块的监控功能,以及使用该模块的快速指南。
eBPF 是 Linux Kernel 3.15 中引入的全新设计,将原先的 BPF 发展成一个指令集更复杂、应用范围更广的“内核虚拟机”。
在嵌入式系统设计中,选择合适的处理器架构是至关重要的决策。微控制器(Microcontroller)和微处理器(Microprocessor)是两种常见的解决方案,它们各自具有优势和特点。本文将介绍微控制器和微处理器的区别,并提供一些代码实例,帮助你更好地选择适合你项目的解决方案。
RT-Linux(Real-Time Linux)亦称作实时Linux,是Linux中的一种硬实时操作系统,它最早由美国墨西哥理工学院的V.Yodaiken开发。
FinalShell介绍 官网:http://www.hostbuf.com/ http://www.hostbuf.com/?install_fs FinalShell 简介: FinalShe
如果我们站在本机机器作为参考物的话,应该拆分成下面三个阶段: 1.消息入口流量部分的处理流程
根据官方文档的介绍,dstat是一个用Python语言实现的多功能系统资源统计工具,用来取代Linux下的vmstat、iostat、netstat和ifstat等命令。并且,dstat克服了这些命令的限制,增加了额外的功能,以及更多的计数器与更好的灵活性。dstat可以在一个界面上展示非常全面的监控信息,因此,在系统监控、基准测试和故障排查等应用场景下特别有用。
本文将为各位工程师演示全志T507-H工业评估板(TLT507-EVM)基于IgH EtherCAT控制伺服电机方法,生动说明Linux-RT + Igh EtherCAT的强大之处!
领取专属 10元无门槛券
手把手带您无忧上云