从谷歌网络字体加载字体或从自己的服务器加载字体,哪一种在页面加载时间方面更有效?

Soa*_*abh 3 css fonts webfonts font-face google-font-api

在使用一些自定义字体时,我有两个选择,要么从我自己的服务器加载表单,要么加载谷歌网络字体。但我关心的是哪一个在页面加载时间方面有效?

我使用css的方式是

@font-face {
    font-family: 'MyWebFont';
    src: url('webfont.eot'); /* IE9 Compat Modes */
    src: url('webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('webfont.woff') format('woff'), /* Modern Browsers */
    } 
Run Code Online (Sandbox Code Playgroud)

在这里,在加载字体时,我还使用字体版本进行缓存并从 CDN 加载字体。

我尝试加载的字体大小接近 36k。

h1 {
       font-family: 'MyWebFont', Fallback, sans-serif;
}
Run Code Online (Sandbox Code Playgroud)

谷歌字体的实现

<link href='http://fonts.googleapis.com/css?family=Caesar+Dressing' rel='stylesheet' type='text/css'>

h1{
  font-family: 'Caesar Dressing', cursive;
}
Run Code Online (Sandbox Code Playgroud)

有人可以帮助我了解应该使用谷歌网络字体还是自定义表单自己的服务器中的哪一个。就页面加载时间而言,哪一个最好?

Edw*_*d A 5

从 google cdn 下载字体总是会更快,如果不是为了你(如果你的服务器在局域网中),对于其他人来说,原因很简单,google cdn 服务器可能会更近给他们而不是你的服务器。

另外,如果你想更进一步,Google 还在他们的 CDN 上托管了一些其他有用的东西,你甚至可以从他们那里获取 jquery,具有上面列出的相同优势。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

  • 大多数网站无法获得来自世界各地的流量。至少,他们只从与网站使用相同语言的人那里获得流量。对于我正在处理的遇到此问题的网站,谷歌的服务器需要大约 1 秒的时间来响应字体文件,而我们自己的服务器则接近 30 毫秒。我们运行自己的服务器,我知道谷歌在与我们同一城市有一个数据中心。如果他们不将其用于字体,那么大概字体服务通常不会像其他服务那样在全球范围内广泛分布。 (5认同)