Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance Google Tag manager对web性能的影响(加载时间)_Performance_Google Tag Manager_Web Performance - Fatal编程技术网

Performance Google Tag manager对web性能的影响(加载时间)

Performance Google Tag manager对web性能的影响(加载时间),performance,google-tag-manager,web-performance,Performance,Google Tag Manager,Web Performance,我正在努力提高我的网站的加载时间和性能。总而言之,这是我在不包括Google Tag Manager的情况下得到的平均加载时间统计数据 然而,当我只包括谷歌标签管理器与下面的代码,这是在我的页面底部 在结束正文标签上方,我可以看到性能的相关影响,如: var gaEnv; 开关(window.location.hostname){ 案例“生产域”: gaEnv='production id';//production 打破 违约: gaEnv='development id';//deve

我正在努力提高我的网站的加载时间和性能。总而言之,这是我在不包括Google Tag Manager的情况下得到的平均加载时间统计数据

然而,当我只包括谷歌标签管理器与下面的代码,这是在我的页面底部 在结束正文标签上方,我可以看到性能的相关影响,如:


var gaEnv;
开关(window.location.hostname){
案例“生产域”:
gaEnv='production id';//production
打破
违约:
gaEnv='development id';//development
}
window.dataLayer=window.dataLayer | |[];
函数gtag(){dataLayer.push(参数);}
gtag('js',新日期());
//分析配置
gtag('config',gaEnv,{'send_page_view':false});
//Adwords的配置
gtag('config','adwords id');
我读过很多关于如何使用async和defer属性来提高这些脚本的性能的博客文章,但很明显,它们仍然对性能有重要影响(加载时间超过2秒,完成时间超过1秒)


有什么我遗漏的或者我能做的吗

Google tag manager为站点增加了性能瓶颈。产品经理喜欢GTM,因为在站点中添加/更新/删除营销层和其他javascript层时,工作流程简单

您可以做的第一件事是在
标记中预加载GTM库

您还可以添加dns预取

第二点也是最重要的一点是不要弄乱GTM中的标签。你必须在GTM中小心地制作标签

例如

  • 从GTM中删除不必要的标签
  • 将很少更新的永久标记移动到html代码本身
  • 优化从GTM注入的javascript代码

你说的“优化从GTM注入的javascript代码”是什么意思?如果它们是由GTM注入的…我们如何优化它呢?通过这一点,Gihan意味着确保在GTM中添加的任何JavaScript都尽可能地优化。您可以直接在GTM中添加自定义代码,因此应该根据我测试的添加标记的使用情况对其进行优化,但它似乎不起作用。它阻止了在谷歌的PageSpeed工具中标记脚本,但是它阻止了对分析事件的跟踪
<script async defer src="https://www.googletagmanager.com/gtag/js?id=myappid"></script>
    <script>
      var gaEnv;
      switch (window.location.hostname) {
        case 'production-domain':
            gaEnv = 'production-id'; // production
            break;
        default:
            gaEnv = 'development-id'; // development
      }
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      gtag('js', new Date());
      // Config for analytics
      gtag('config', gaEnv, { 'send_page_view': false });
      // Config for Adwords   
      gtag('config', 'adwords-id');
    </script>