江南体育网页设计建设站

性能:性能优化的十大策略

日期:2024-04-15 12:55 / 作者:佚名

在这里插入图片描述

在这里插入图片描述

场景:

操作策略:

这些节省内存空间的方法,一般都需要付出时间的代价。

关于压缩算法的选取,基本上看三个指标:压缩比例、压缩速度、使用内存

注意,这里的“空间换时间”和后面的缓存策略不同。一般“缓存”使用的空间,和原来的空间不再同一个层次上,添加的缓存往往比原来的空间高出一个档次。而这里的“空间换时间”策略,里面的“空间”是和原来的空间相似的空间。

场景:

在这里插入图片描述

场景:

所谓“惰性处理”,就是尽量将操作推迟到必须执行的时刻,这样很可能避免多余的操作,甚至根本不用操作。

场景: COW(Copy On Write,写时复制)

COW应用例子:

异步和并行操作虽然看起来很不一样,其实有异曲同工之妙,就是都把一条流水线和处理过程分成了几条,不管是物理上分还是逻辑上分
在这里插入图片描述

并行是一种物理上把一条流水线分成好几条的策略。

异步操作是一种逻辑上把一条流水线分成几条的策略。

在这里插入图片描述

缓存的本质是加速访问。这是一个用得非常普遍的策略,几乎体现在计算机系统里面每一个模块和领域,CPU、内存、文件系统、存储系统、内容分布、数据库等等,都会遵循这样的策略。比如:

在有IO(比如网络IO和磁盘IO)的时候,合并操作和批量操作往往能够提升吞吐量,提高性能。

这两个策略是紧密配合的,比如先进的算法有时候会需要先进的数据结构;而且它们往往和程序的设计代码直接相关
在这里插入图片描述

同一个问题,肯定会有不同的算法实现,进而就会有不同的性能

对每一种具体的场景(包括输入集合大小、时间空间的要求、数据的大小分布等),总会有一种算法是最适合的。我们需要考虑实际情况,来选择这一最优的算法。

没有一个数据结构是在所有情况下都是最好的。我们要权衡取舍,找出实际场合下最适合的高效的数据结构。

平台注册入口