随笔分类 -  深挖计算机基础

上一页 1 2 3 4 5 6 7 8 9 ··· 11 下一页
摘要:一、今日内容概要 我在第 3 篇文章和你讲事务隔离级别的时候提到过,如果是可重复读隔离级别,事务 T 启动的时候会创建一个视图 read-view,之后事务 T 执行期间,即使有其他事务修改了数据,事务 T 看到的仍然跟在启动时看到的一样。也就是说,一个在可重复读隔离级别下执行的事务,好像与世无争, 阅读全文
posted @ 2019-09-30 09:06 活的潇洒80 阅读(1019) 评论(0) 推荐(0) 编辑
摘要:一、今日内容概要 今天我要跟你聊聊 MySQL 的锁。数据库锁设计的初衷是处理并发问题。作为多用户共享的资源,当出现并发访问的时候,数据库需要合理地控制资源的访问规则。而锁就是用来实现这些访问规则的重要数据结构。 根据加锁的范围,MySQL 里面的锁大致可以分成全局锁、表级锁和行锁三类。今天这篇文章 阅读全文
posted @ 2019-09-30 09:05 活的潇洒80 阅读(1063) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 专栏更新至今,咱们专栏最后一部分——综合案例模块也要告一段落了。很高兴看到你没有掉队,仍然在积极学习思考、实践操作,并热情地分享你在实际环境中,遇到过的各种性能问题的分析思路以及优化方法。 今天是性能优化答疑的第六期。照例,我从综合案例模块的留言中,摘出了一些典型问题,作为今天的答疑内 阅读全文
posted @ 2019-09-26 10:19 活的潇洒80 阅读(810) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我带你一起梳理了,性能问题分析的一般步骤。先带你简单回顾一下。 我们可以从系统资源瓶颈和应用程序瓶颈,这两个角度来分析性能问题的根源。 从系统资源瓶颈的角度来说,USE 法是最为有效的方法,即从使用率、饱和度以及错误数这三个方面,来分析 CPU、内存、磁盘和文件系统 I/O、网 阅读全文
posted @ 2019-09-25 22:28 活的潇洒80 阅读(911) 评论(0) 推荐(1) 编辑
摘要:一、上节回顾 上一节,我们一起学习了,应用程序监控的基本思路,先简单回顾一下。应用程序的监控,可以分为指标监控和日志监控两大块。 指标监控,主要是对一定时间段内的性能指标进行测量,然后再通过时间序列的方式,进行处理、存储和告警。 而日志监控,则可以提供更详细的上下文信息,通常通过 ELK 技术栈,来 阅读全文
posted @ 2019-09-25 16:53 活的潇洒80 阅读(1773) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 在前面的内容中,我为你介绍了很多性能分析的原理、思路以及相关的工具。不过,在实际的性能分析中,一个很常见的现象是,明明发生了性能瓶颈,但当你登录到服务器中想要排查的时候,却发现瓶颈已经消失了。或者说,性能问题总是时不时地发生,但却很难找出发生规律,也很难重现。 当面对这样的场景时,你可 阅读全文
posted @ 2019-09-25 16:53 活的潇洒80 阅读(598) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我带你一起梳理了常见的性能优化思路,先简单回顾一下。我们可以从系统和应用程序两个角度,来进行性能优化。 性能优化最好逐步完善,动态进行。不要追求一步到位,而要首先保证能满足当前的性能要求。 性能优化通常意味着复杂度的提升,也意味着可维护性的降低。 如果你发现单机的性能调优带来过 阅读全文
posted @ 2019-09-24 18:32 活的潇洒80 阅读(907) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我带你学习了,如何使用 USE 法来监控系统的性能,先简单回顾一下。 系统监控的核心是资源的使用情况,这既包括 CPU、内存、磁盘、文件系统、网络等硬件资源,也包括文件描述符数、连接数、连接跟踪数等软件资源。而要描述这些资源瓶颈,最简单有效的方法就是 USE 法。 USE 法把 阅读全文
posted @ 2019-09-24 18:31 活的潇洒80 阅读(718) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我带你一起学习了常见的动态追踪方法。所谓动态追踪,就是在系统或者应用程序正常运行的时候,通过内核中提供的探针,来动态追踪它们的行为,从而辅助排查出性能问题的瓶颈。 使用动态追踪,可以在不修改代码、不重启服务的情况下,动态了解应用程序或者内核的行为,这对排查线上问题、特别是不容易 阅读全文
posted @ 2019-09-24 18:30 活的潇洒80 阅读(3080) 评论(0) 推荐(1) 编辑
摘要:一、上节回顾 上一节,我以 ksoftirqd CPU 使用率高的问题为例,带你一起学习了内核线程 CPU 使用率高时的分析方法。先简单回顾一下。 当碰到内核线程的资源使用异常时,很多常用的进程级性能工具,并不能直接用到内核线程上。这时,我们就可以使用内核自带的 perf 来观察它们的行为,找出热点 阅读全文
posted @ 2019-09-24 18:25 活的潇洒80 阅读(1877) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一期,我们一起梳理了,网络时不时丢包的分析定位和优化方法。先简单回顾一下。网络丢包,通常会带来严重的性能下降,特别是对 TCP 来说,丢包通常意味着网络拥塞和重传,进而会导致网络延迟增大以及吞吐量降低。 而分析丢包问题,还是用我们的老套路,从 Linux 网络收发的流程入手,结合 T 阅读全文
posted @ 2019-09-24 18:18 活的潇洒80 阅读(3190) 评论(2) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我们梳理了,应用程序容器化后性能下降的分析方法。一起先简单回顾下。容器利用 Linux 内核提供的命名空间技术,将不同应用程序的运行隔离起来,并用统一的镜像,来管理应用程序的依赖环境。这为应用程序的管理和维护,带来了极大的便捷性,并进一步催生了微服务、云原生等新一代技术架构。 阅读全文
posted @ 2019-09-23 17:08 活的潇洒80 阅读(2438) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我们一起学习了如何分析网络丢包的问题,特别是从链路层、网络层以及传输层等主要的协议栈中进行分析。 不过,通过前面这几层的分析,我们还是没有找出最终的性能瓶颈。看来,还是要继续深挖才可以。今天,我们就来继续分析这个未果的案例。 在开始下面的内容前,你可以先回忆一下上节课的内容,并 阅读全文
posted @ 2019-09-23 17:03 活的潇洒80 阅读(1685) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 不知不觉,我们已经学完了整个专栏的四大基础模块,即 CPU、内存、文件系统和磁盘 I/O、以及网络的性能分析和优化。相信你已经掌握了这些基础模块的基本分析、定位思路,并熟悉了相关的优化方法。 接下来,我们将进入最后一个重要模块—— 综合实战篇。这部分实战内容,也将是我们对前面所学知识的 阅读全文
posted @ 2019-09-23 15:49 活的潇洒80 阅读(4313) 评论(0) 推荐(1) 编辑
摘要:一、上节总结 专栏更新至今,四大基础模块的第三个模块——文件系统和磁盘 I/O 篇,我们就已经学完了。很开心你还没有掉队,仍然在积极学习思考和实践操作,并且热情地留言与讨论。 今天是性能优化的第四期。照例,我从 I/O 模块的留言中摘出了一些典型问题,作为今天的答疑内容,集中回复。同样的,为了便于你 阅读全文
posted @ 2019-09-20 16:18 活的潇洒80 阅读(802) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我们学习了碰到分布式拒绝服务(DDoS)的缓解方法。简单回顾一下,DDoS利用大量的伪造请求,导致目标服务要耗费大量资源,来处理这些无效请求,进而无法正常响应正常用户的请求。 由于 DDoS 的分布式、大流量、难追踪等特点,目前确实还没有方法,能够完全防御DDoS 带来的问题, 阅读全文
posted @ 2019-09-20 15:01 活的潇洒80 阅读(2151) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我们探究了网络延迟增大问题的分析方法,并通过一个案例,掌握了如何用hping3、tcpdump、Wireshark、strace 等工具,来排查和定位问题的根源。 简单回顾一下,网络延迟是最核心的网络性能指标。由于网络传输、网络包处理等各种因素的影响,网络延迟不可避免。但过大的 阅读全文
posted @ 2019-09-20 15:01 活的潇洒80 阅读(983) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 专栏更新至今,四大基础模块的最后一个模块——网络篇,我们就已经学完了。很开心你还没有掉队,仍然在积极学习思考和实践操作,热情地留言和互动。还有不少同学分享了在实际生产环境中,碰到各种性能问题的分析思路和优化方法,这里也谢谢你们。 今天是性能优化答疑的第五期。照例,我从网络模块的留言中, 阅读全文
posted @ 2019-09-20 14:44 活的潇洒80 阅读(726) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我们学了网络性能优化的几个思路,我先带你简单复习一下。 在优化网络的性能时,你可以结合 Linux 系统的网络协议栈和网络收发流程,然后从应用程序、套接字、传输层、网络层再到链路层等每个层次,进行逐层优化。上一期我们主要学习了应用程序和套接字的优化思路,比如: 在应用程序中,主 阅读全文
posted @ 2019-09-20 12:05 活的潇洒80 阅读(900) 评论(0) 推荐(0) 编辑
摘要:一、上节回顾 上一节,我们了解了 NAT(网络地址转换)的原理,学会了如何排查 NAT 带来的性能问题,最后还总结了 NAT 性能优化的基本思路。我先带你简单回顾一下。 NAT 基于 Linux 内核的连接跟踪机制,实现了 IP 地址及端口号重写的功能,主要被用来解决公网 IP 地址短缺的问题。 在 阅读全文
posted @ 2019-09-20 10:59 活的潇洒80 阅读(1051) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 8 9 ··· 11 下一页
点击右上角即可分享
微信分享提示