IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:网络延迟

共 2 篇相关文章

IT 累计浏览 1,914

libmemcached的MEMCACHED_MAX_BUFFER问题

这篇讲的是作者在服务监控中发现一个异常:使用libmemcached向Memcached写入约10KB数据时,延迟竟高达7ms。为定位问题,作者分别用shell脚本(通过nc直接发送命令)和C++程序(调用libmemcached API)进行测试。结果出人意料——更“底层”的C++版本耗时远超shell脚本。 通过ltrace跟踪,作者发现数据发送很快,但等待服务端响应的时间很长。深入排查后,根源浮出水面:libmemcached库内部定义了一个名为`MEMCACHED_MAX_BUFFER`的常量,其值为8196字节。对于超过此大小的数据,库会将其拆分为两次`write`系统调用发送。这种拆分机制导致了显著的网络往返开销,成为了性能瓶颈。 解决方法相对直接:重新编译libmemcached,将该常量值从8196调大至81960。修改后,延迟从7ms锐减至1ms左右。作者也分析了服务端日志,确认时间主要消耗在连接状态切换的等待上。这个案例生动说明了第三方库中某个未公开的硬编码限制,可能对性能产生难以预料的影响。

IT 累计浏览 2,534

网站性能评测点

这篇讲的是如何科学评测网站性能,核心聚焦在“时间”这个终极度量上。作者开宗明义,指出性能的归宿就是让用户在最短时间内看到页面并顺畅交互,由此引出了评测的具体维度。 文章围绕“时间”这条主线,拆解了关键的评测指标。比如首字节时间、内容绘制时间、交互延迟等,这些分别对应了服务器响应、资源加载和浏览器渲染的不同阶段。同时,也提到了总资源大小、请求数这些与时间密切相关的基础指标。文章没有停留在罗列概念,而是解释了每个指标背后代表的用户体验环节,以及它们之间的关联。 最后,文章点明了做这些评测的目的:它能帮开发者定位性能瓶颈的具体位置——是网络传输慢了,还是代码执行效率低,亦或是资源体积过大。通过量化的时间数据,性能优化就不再是模糊的“感觉更快”,而是有了明确的方向和可衡量的目标。