gpt4 book ai didi

algorithm - 用于压缩的 HTML 属性的优化顺序

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:27:54 24 4
gpt4 key购买 nike

我在某处读到,以特定顺序组织 HTML 属性可以提高 HTML 文档的压缩率。 (我想我是从谷歌或雅虎推荐的更快网站上读到的)。如果我没记错的话,建议是将最常见的属性放在第一位(例如 id 等),然后将其余属性按字母顺序排列。

我对此有点困惑。例如,如果 id属性被放在每个 p 之后标记,id将包含唯一值。因此,重复的字符串将限于此:<p id=" (假设有 <p id="1"><p id="2"/> )。因为 id 的值需要是唯一的,我认为这实际上会对压缩造成不利影响。

我错了吗?

如果我需要浏览一个属性随机排序的静态网页,我应该使用什么逻辑来组织属性以实现最大压缩?

注意:我说的是 GZIP 压缩(如果重要的话):http://www.gzip.org/algorithm.txt

最佳答案

您的目标是鼓励重复内容。所以<p class="foo" id="a">bar</p>...<p class="foo" id="b">bof</p>可能确实比 <p id="a" class="foo">bar</p>...<p id="b" class="foo">bof</p> 更容易压缩,并且两者通常都比 <p class="foo" id="a">bar</p>...<p id="b" class="foo">bof</p> 更容易压缩.

但实际上,差异将是微乎其微的。为了您自己的利益,您最好以最易读的方式编写您的标记,然后让 mod_deflate 继续其工作。使用这种微观优化,即使是单个 TCP 数据包,您也将不得不走很长的路,而在微观层面对压缩器进行事后猜测通常会产生意想不到的、可能是负面的结果。

对于某些元素,可读性也可能意味着将“公共(public)”属性放在首位,例如 <input type>通常是第一个列出的属性;通常你会制定出你自己的属性顺序样式,如果它是一致的,我想这会在这里和那里为你节省几个字节。我不会选择原始字母顺序作为一致的顺序。所有的一切都是 Canonical XML 将产生的。

即使是 google.com 的首页,以牺牲可读性、基本验证和各种良好实践为代价来减少字节而臭名昭著,也不会为属性使用一个一致的顺序。

关于algorithm - 用于压缩的 HTML 属性的优化顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3951372/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com