为什么我的 GAE 应用程序提供静态文件的延迟如此之高?

2024-04-13

我在 GAE 上检查 Go 应用程序的性能,我认为静态文件的响应时间相当长(183 毫秒)。是吗?为什么?我能做什么呢?

64.103.25.105 - - [07/Feb/2013:04:10:03 -0800] "GET /css/bootstrap-responsive.css
HTTP/1.1" 200 21752 - "Go http package" "example.com" ms=183 cpu_ms=0 

对于静态文件来说,“常规”200 毫秒似乎偏高。我从我的应用程序中提供相同“bootstrap-responsive.css”的静态版本,我可以看到两种类型的应答时间:

  • 50-100ms(大多数时间)
  • 150-500ms(有时)

由于我到 google 应用引擎的 ping 往返时间大约为 50 毫秒,因此文件通常在 50 毫秒左右的时间内提供服务。

我猜想 150-300 毫秒的响应时间与谷歌应用程序引擎前端服务器被“冷缓存”有关。我认为从某些持久存储中检索文件会比在前端服务器缓存中检索文件带来更高的延迟。

我还假设您可以访问各种前端服务器并获得零星的较高延迟。

最后,浏览器的总体感知延迟应近似为: (tc)ping 往返 + 前端服务器上的 tcp/http 排队/缓冲 + 文件服务应用程序时间(如您的谷歌应用程序日志中所示)+ 传输文件的时间。

如果前端服务器没有过载并且文件很小,则延迟应该接近 ping + 服务时间。

就我而言,50 毫秒(ping)+ 35 毫秒(服务)= 85 毫秒,与我在浏览器中看到的 95 毫秒非常接近。

最后,如果您的应用程序正在处理大量请求,它们可能会排队,从而引入应用程序日志中“不可见”的延迟。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么我的 GAE 应用程序提供静态文件的延迟如此之高? 的相关文章

  • 在单个 mongodb 查询中查找并计数

    我的文档看起来像这样 id ObjectId 572c4bffd073dd581edae045 name What s New in PHP 7 description PHP 7 is the first new major versio
  • 优化 LATERAL join 中的慢速聚合

    在我的 PostgreSQL 9 6 2 数据库中 我有一个查询 该查询根据一些股票数据构建计算字段表 它为表中的每一行计算 1 到 10 年的移动平均窗口 并将其用于周期性调整 具体来说 CAPE CAPB CAPC CAPS 和 CAP
  • Google App Engine Flexi 上 Django 的 Postgres 设置

    我正在尝试在应用程序引擎灵活环境中使用 postgres 设置 django 我按照这里的说明进行操作 https cloud google com appengine docs flexible python using cloud sq
  • Pandas dataframe:每批行的操作

    我有一个熊猫数据框df我想计算每批行的一些统计信息 例如 假设我有一个batch size 200000 对于每批batch sizerows 我想要一列的唯一值的数量ID我的数据框 我怎样才能做这样的事情呢 这是我想要的一个例子 prin
  • crypto++ / pycrypto 与谷歌应用程序引擎

    我正在使用 crypto 将 AES 加密的 http 请求发送到应用程序引擎 计划在那里解密它们 我的计划是加密 之后的部分所以它是这样的 http myurl com Command eiwjfsdlfjldkjfs http myur
  • Rails Windows Vagrant 响应时间非常慢

    我在跑 Vagrant 1 7 1 Rails 4 1 4 Thin 1 6 1 Windows 7 每个静态文件的发送时间都超过一秒 在我的 PC 上加载一个页面可能需要大约 20 秒 而在同事的 Linux 机器上则只需瞬间 有一些帖子
  • 如何将 Unicode 字符转换为简单形式? [复制]

    这个问题在这里已经有答案了 有没有一个Go库可以Sj str m作为输入和返回Sjostrom作为输出 您可以使用golang org x text unicode norm来处理这个问题 package main import fmt i
  • 有队列实现吗?

    任何人都可以建议使用 Go 容器来实现简单快速的 FIF 队列 Go 有 3 种不同的容器 heap list and vector 哪一种更适合实现队列 事实上 如果您想要的是一个基本且易于使用的 fifo 队列 slice 可以满足您所
  • 添加冗余赋值可以在未经优化的情况下编译时加快代码速度

    我发现一个有趣的现象 include
  • * 到底有多慢?

    大家都表示 选择器非常慢 但它到底有多慢呢 我总是试图避免它 但有时它非常有用 例如 h1 margin top 1em 简单来说 通用选择器 速度只与页面上的元素一样慢 Since 从右到左匹配浏览器获取每个元素并将其与所有候选规则进行匹
  • 如何在golang中解析JSON而不需要解组两次

    我有一个 Web 套接字连接 它在 JSON 对象中发送不同类型的消息 并且我想将内容解组到一些已知的结构中 为此 我认为我应该执行以下操作 步骤 1 将 JSON 解组为通用映射 字符串 接口 步骤 2 找到我要找的钥匙 步骤 3 尝试将
  • R、Rcpp 与 Armadillo 中矩阵 rowSums() 与 colSums() 的效率

    背景 来自 R 编程 我正在扩展到 C C 形式的编译代码Rcpp 作为循环交换 以及一般的 C C 效果的实践练习 我实现了 R 的等效项rowSums and colSums 矩阵的函数Rcpp 我知道它们以 Rcpp 糖的形式存在 并
  • 为什么n++执行速度比n=n+1快?

    在C语言中 为什么n 执行速度快于n n 1 int n n int n n n 1 我们的老师在今天的课堂上问了这个问题 这不是家庭作业 如果您正在开发一个 石器时代 编译器 的情况下 石器时代 n比n 比n n 1 机器通常有incre
  • mysql表中的数据非常大。即使 select 语句也需要很多时间

    我正在开发一个数据库 它是一个相当大的数据库 有 13 亿行和大约 35 列 这是我检查表状态后得到的结果 Name Table Name Engine InnoDB Version 10 Row format Compact Rows 1
  • linux perf:如何解释和查找热点

    我尝试了linux perf https perf wiki kernel org index php Main Page今天很实用 但在解释其结果时遇到了困难 我习惯了 valgrind 的 callgrind 这当然是与基于采样的 pe
  • Erlang 中的接受器池和负载平衡?

    From http www erlang org doc man gen tcp html accept 1 http www erlang org doc man gen tcp html accept 1 值得注意的是 accept 调
  • 如何检查设备是否“快”足够

    我找不到更好的措辞来回答我的问题 在我的应用程序中的某个时刻 我设置了一些非常密集的动画 事实是 在高端设备上 动画运行流畅且赏心悦目 另一方面 我测试的一款低端设备在制作动画时的性能非常糟糕 为了将用户体验放在第一位 我想在计算能力足够的
  • os.Mkdir 和 os.MkdirAll 权限

    我正在尝试在程序开始时创建一个日志文件 我需要检查是否 log如果不创建目录 则目录存在 然后继续创建日志文件 好吧 我尝试使用os Mkdir 也os MkdirAll 但无论我在第二个参数中输入什么值 我都会得到一个没有权限的锁定文件夹
  • Swift 使用哪种通用排序算法?它在排序数据上表现不佳

    我一直在挑选和探索 Swift 标准库sort 其函数为Array类型 令我惊讶的是 我注意到它在已经排序的数据上表现不佳 对数组进行排序Int打乱顺序似乎比对已经排序的同一个数组进行排序快 5 倍 对已打乱顺序的对象数组进行排序比对已按排
  • 为什么 Collections.counter 这么慢?

    我正在尝试解决罗莎琳德的基本问题 即计算给定序列中的核苷酸 并在列表中返回结果 对于那些不熟悉生物信息学的人来说 它只是计算字符串中 4 个不同字符 A C G T 出现的次数 我期望collections Counter是最快的方法 首先

随机推荐

  • 如何使 Django slugify 与 Unicode 字符串正常工作?

    我能做什么来预防slugify过滤器去除非 ASCII 字母数字字符 我使用的是 Django 1 0 2 编程网 http cnprog com有问题的网址中有中文字符 所以我查看了他们的代码 他们没有使用slugify在模板中 相反 他
  • Ace 代码编辑器动态设置语言 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我正在尝试通过下拉菜单来选择语言来实现 Ace 代码编辑器 我的下拉菜单有一个模式 ID 我已经让编辑器正常工作 但我无法像我希望
  • JNI 和 Java:ant 调用 make 还是 make 调用 ant?

    我即将第一次进入 JNI Java 本机接口 的世界 以提供从平台特定的 C C 代码到 Java 的文件系统更改通知 除非有人推荐一些我错过的出色的图书馆来做这件事 作为 JNI 的新手 我已经设法找到了很多关于 JNI 接口方面和库生成
  • 避免从存储过程返回结果集

    假设我有一些返回结果集的存储过程 并且我无法更改它 create procedure test procedure as begin select 1 end 我知道我可以将结果集插入表中 因此它将对调用代码隐藏 declare t tab
  • Worklight 在线 + 离线身份验证

    我正在尝试通过 Worklight 实现以下目标 我的应用程序有两组功能 仅当应用程序连接到服务器并且用户经过身份验证时才能访问一组功能 另一组功能可以离线访问 但它们需要来自加密 JSONStore 的数据 我在客户端设备上有一个 JSO
  • 距离矩阵的并行构造

    我对大量多维向量进行层次凝聚聚类 我注意到最大的瓶颈是距离矩阵的构造 此任务的简单实现如下 此处使用 Python v an array N d where rows are the observations and columns the
  • 运行 Jest 时 NextJS 中未定义环境变量

    我设置了一个简单的 NextJS 项目 但在让 Jest 识别我的环境变量时遇到问题 我已按照以下说明进行操作https nextjs org docs basic features environment variables test e
  • 微服务版本控制

    就在运行时支持同一服务的多个版本化部署以及消费者如何使用不同版本而言 适应基于微服务的架构中的版本控制的最佳实践是什么 1 如果我们使用基于路由的版本控制作为提到的方法之一here http niels nu blog 2016 micro
  • 选择除第一个之外的所有“tr”

    我怎样才能选择全部tr除第一个元素之外的元素tr在带有 CSS 的表格中 我尝试使用this http www daniel lemire com blog archives 2008 08 22 how to select even or
  • 如何将函数中的多个变量移至全局范围?

    我是Python新手 我正在努力创建一个类似游戏的垄断 并且正在研究程序的设置方面 我有一个函数询问用户他们想要为每个设置输入什么 然后我使用另一个函数将这些设置导入到文本文件中 以便可以存储它们以供以后使用 也可以让程序将它们用作设置 这
  • 如何识别 RDP / MSTSC 登录失败的情况?

    我正在使用 RDP MSTSC 的 C 实现MsRdpClient9NotSafeForScripting 类 https learn microsoft com en us windows win32 termserv imstscaxe
  • 如何决定使用什么——双精度还是小数? [复制]

    这个问题在这里已经有答案了 可能的重复 十进制与双精度 我应该使用哪一种以及何时使用 https stackoverflow com questions 1165761 decimal vs double which one should
  • 如何将列表与 JPA Hibernate 中存在的所有值完全匹配?

    我有一个User实体与skills属性作为类型列表 我想查询的是User表格对照技能列表 如果所有技能都出现在技能列中 则仅找到匹配项 除非没有 我为此使用了 JPQL 但它使用以下命令逐一匹配列表中的每个元素IN clause 用户等级
  • 生成一个sql server表中不存在的随机数

    我正在寻找生成一个随机数 该生成的数字不存在于另一个表上 例如 如果一个表名为randomNums具有价值观10 20 30 40 50 我喜欢生成一个除上述值之外的数字 我尝试了以下查询 Query WITH CTE AS SELECT
  • 按列表中的值对查询集进行排序

    是否可以通过查询中提供的元素列表对 django 查询集进行排序 例如 如果我这样做 m objects filter id in 3 1 8 我不希望查询集的顺序是 id 3 的元素 id 1 的元素和 id 8 的元素 Thanks 既
  • React-router-dom 中的 Router 与 Route 有何不同

    在 React Router 中文档 https reacttraining com react router web guides quick start我已经看到它同时导入Route and Router模块来自react router
  • Grails 3.0.0.M1 - 将脚手架模板安装到我的 Grails 项目中

    我在 Grails 3 中可以获得的唯一模板install form fields templates are create gsp and edit gsp来自fields plugin 有没有机会再次安装和使用旧的 form gsp 字
  • 我们可以在 Xamarin 表单的选项卡页面上方添加内容吗?

    I want to add some label and image above tabbed page in xamarin forms so when i slide to another tabbed page the content
  • Visual Studio 2015:Ctrl+Shift+8 (View.PopBrowseContext) 导航回来不起作用?

    A keyboard shortcut that I ve used frequently going back several Visual Studio versions is Ctrl Shift 8 to go back to wh
  • 为什么我的 GAE 应用程序提供静态文件的延迟如此之高?

    我在 GAE 上检查 Go 应用程序的性能 我认为静态文件的响应时间相当长 183 毫秒 是吗 为什么 我能做什么呢 64 103 25 105 07 Feb 2013 04 10 03 0800 GET css bootstrap res