YouTube API v3 上传速度

2024-02-14

我一直在使用 YouTube API v3 进行一些测试,使用以下命令上传 Apache 服务器(在 Virtuozzo 上运行 CENTOS 6.7 x86_64 的 VPS、2GB RAM 和大量 CPU)上现有的视频文件提供断点续传脚本 https://developers.google.com/youtube/v3/code_samples/php?hl=en#upload_a_video.

在尝试了所有方法后,我能够达到的最大上传速度不超过 120KB/s。

我一直在玩输出缓冲区,关闭 GZipping https://github.com/google/google-api-php-client/issues/59,改变块大小(从 1 到 30MB),并检查服务器带宽速度(上传方向始终超过 250 Mb/s)。

考虑到您通过浏览器上传的速度有多快(我现在无法测试这个理论,因为我的互联网连接速度非常慢 - 但这是基于过去的经验),我很难相信这是 YouTube 的限制,除非是故意节流。我在 YouTube 文档或互联网上的任何地方都找不到通过 API 实现预期速度的任何文档。

有其他人遇到过上传速度慢的情况吗?有什么办法可以解决吗?提前致谢。


做了更多的测试后,我得出的结论是,速度慢的原因不是 YouTube 端的节流,而是 PHP 本身的核心基础设施内部的限制。然而,我确实通过改变 Google 的示例方法,使用 PHP 将速度从 ~120KB/s 提高到 ~770KB/sstream_get_contents代替fread (归功于这篇文章 https://stackoverflow.com/a/14670761/3596962).

但是,如果您仍然需要更多,我建议采用 Python 方法。通过 API,我在 83 秒内上传了 2GB 文件,速度约为 24MB/s。如果有人知道的话,了解速度巨大差异背后的基本编程原因会很有趣,尽管这超出了我的范围,我会赶紧补充。

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

YouTube API v3 上传速度 的相关文章

  • 带单引号的 XPATH 查询[重复]

    这个问题在这里已经有答案了 有人知道如何解决这个问题吗 单引号让我陷入困境 nodes xml gt xpath item contains catalog Billy s Blogs title 我尝试以各种方式逃避它 但都抛出错误 no
  • PHP 7.2 计数错误

    警告 count 参数必须是数组或对象 实现 Countable in 我在以下行中收到上述错误 if 0 gt count this gt xprop 有人可以帮助我理解这一点吗 我对 PHP 还很陌生 问题显然是 this gt xpr
  • 如何访问带有美元符号的 PHP 对象属性?

    我有一个 PHP 对象 其属性中有一个美元 符号 如何访问该属性的内容 例子 echo object gt variable Ok echo object gt variable WithDollar Syntax error With 变
  • 显示带有 id 的内部连接的名称[重复]

    这个问题在这里已经有答案了 我有这个查询 select from countrysegments inner join country on countrysegments country id country id inner join
  • 使用 Laravel Socialite 登录 facebook

    然而 我是 Laravel 的新手 我正在遵循以下教程http www codeanchor net blog complete laravel socialite tutorial http www codeanchor net blog
  • php - 致命错误:调用 AppServ 中未定义的函数 mcrypt_get_iv_size()

    当我通过以下方式使用 mcrypt get iv size 函数时发现一个问题AppServ https www appserv org 我尝试寻找与解决问题相关的主题 但是 我尝试将 libmcrypt dll 下载到 symtem32
  • CodeIgniter加入选择为

    我的数据库中有 2 个表需要加入 一张表是 artikelen 表 另一张表是 Collections 表 我目前有 this gt db gt select this gt db gt from collecties this gt db
  • php / phpDoc - @return $this 类的实例?

    如何在 phpDoc 中将方法标记为 返回当前类的实例 在下面的示例中 我的 IDE Netbeans 将看到 setSomething 始终返回foo object 但如果我扩展对象 情况就不是这样了 它会返回 this 在第二个示例中是
  • 根据product_id获取magento产品的浏览次数

    我想在 Magento 的类别列表页面上显示查看计数 这些数据看起来过去可以通过 reports product collection 访问 但我找不到正确访问它的方法 我基本上想提供一个产品 ID 并获取返回给我的所述产品的观看次数 您可
  • 统计数据库中的注册用户数

    我想反映在我的网站上注册的人数 只有我拥有的代码不起作用 它让我知道它不可能 转换为字符串 另外 当我将其设置为在 HTML 中调用的函数时 我收到 connection 未定义的错误 require once connect php sq
  • Laravel 5.7:维护模式的自定义刀片模板,但不是 503.blade.php

    每次php artisan down开启后 Laravel 显示 503 页面 好的 我可以通过创建名为的新文件来自定义它503 blade php inside resources views errors 关键是 我在任何时候都不认为维
  • 多维数组中的数组排列保留键 PHP

    这两天我一直在疯狂地尝试完成这个任务 也许你可以启发我 这是针对赛马投注排列的 每次用户玩游戏时 我都会得到一个多维数组 2 个级别 第一级包含比赛 ID 第二级包含用户为该比赛选择的马匹 它看起来像这样 play array 4 gt a
  • 将我的 Laravel 连接到外部数据库

    如何将 Laravel 连接到外部数据库 示例 我的本地计算机上有一个 Laravel 它在 xampp 上运行 我希望它连接到云服务器数据库 打开 env文件并编辑它 只需设置正确的外部数据库凭据 DB CONNECTION mysql
  • Php Curl HTTP POST REQUEST 使用嵌套键值对设置自定义标头

    如何使用 Curl 在 php 中设置此标头 CustomInfo 元素是数组 嵌套键值对 AuthenticationInfo 元素是数组 嵌套键值对
  • 验证 LDAPS 连接的自签名证书

    我想从 Linux Linux 3 2 0 4 amd64 1 SMP Debian 3 2 51 1 x86 64 GNU Linux 客户端到 Windows 2012 服务器建立安全的 ldap 连接 ldaps 以更改活动中的用户密
  • 多维数组 PHP 内爆 [重复]

    这个问题在这里已经有答案了 就我的数据结构而言 我有一个 communications 数组 每个 communications id 本身包含三部分信息 id score 和 content 我想内爆这个数组以获得逗号分隔的 id 列表
  • Yii2 组件将数据传递给 __construct

    我有一个库 我想将其用作组件 在配置文件中我这样设置 components gt superLib gt class gt SuperLib construct gt first second Maybe Yii 2 have proper
  • 如何使用 PHP 将字符串按大写字母分解?

    我有一个字符串 CamelCaseString 我想对大写字母进行explode split 或一些更好的方法来将该字符串分解为单个单词 最简单的方法是什么 解决方案更新 此链接指向一个略有不同的问题 但我认为答案通常比本页当前问题的答案更
  • WordPress 子主题包括包含文件

    我在一家WordPress使用 AMPPS 作为本地主机在我的本地计算机上进行设置 使用 Delta 主题 我创建了一个子主题 delta2 child 初始设置效果很好 但是 我需要更改包含文件夹中名为 home slider php 的
  • mysql_query 保留返回时在表中创建的数据类型?

    我在mysql中有一个表 CREATE TABLE user id INT name VARCHAR 250 我查询表 result mysql query SELECT id name FROM user 我收集结果 while row

随机推荐

  • Python中如何查找引发异常的位置

    如何确定在哪个函数中引发了异常 例如存在两个函数 foo 和 bar 在 foo 中 异常将随机引发 import random def foo if random randint 1 10 2 raise Exception bar de
  • 在doctrine2中是否可以有一个不是主键的自动增量列?

    在doctrine2中 我有一个实体 它有一个从Web服务提供的主键 并且还有一个应该是自动增量的索引 我可以在mysql中手动设置 但无法在doctrine2中进行此设置 I used columnDefinition of INT AU
  • Windbg lm:“延迟”是什么意思?

    我正在 WinDbg 中调试 NET 2 0 程序集的故障转储文件 当我在 WinDbg 中输入 lm 时 我会得到一长串已加载的模块 如下所示 723c0000 72950000 mscorwks deferred 这里的 延期 是什么意
  • 接口和@RequestBody

    我目前正在开发一个项目 该项目允许用户 通过网络 预订在给定时间段内使用所选资源 在这个程序中 我试图遵循 Spring 的接口编程哲学 以及一般的最佳实践 因此我尝试在具体类中重复功能的任何地方使用接口 我创建的一个接口称为 Bookab
  • 当我从 Process.Start(url) 打开 url 时,c# Google chrome 在某些 PC 上崩溃

    在某些 PC 上 当我想显示网址时 Google Chrome 会崩溃 我用了Process Start url and UseShellExecute true 请注意 它在我尝试过的大多数电脑上都能正常工作 但在某些电脑上却不能 Chr
  • 使用 requirejs + uglify 限制行长度

    我们正在使用requirejs optimize config 在我们的构建脚本中使用 uglify2 来缩小我们的生产 JavaScript 代码 我们希望将缩小后的行长度限制为大约 80 个字符 这样即使在生产代码中也可以更轻松地调试
  • Angular 5 中 value 和 ngValue 的区别

    今天 我意识到 Angular 5 中的反应式表单出现了意外的 对我来说 行为 服务器从应用程序接收到一个值为 null 的字符串 而不是我想要的 null 值 我做了以下测试 https stackblitz com edit angul
  • 如何减少 androidx.compose.material3.OutlinedTextField 的高度

    我在降低高度时遇到困难OutlinedTextField在撰写中 我正在尝试在里面做一个搜索栏TopAppBar就像许多谷歌应用程序 Gmail Play Store 中所做的那样 我无法在材料3中实现这一点 我尝试复制OutlinedTe
  • Chrome扩展从内容脚本到后台html的sendMessage错误

    我刚刚将我的 chrome 扩展更新为 json 版本 2 并尝试让我的扩展再次工作 问题是 sendRequest 一路上被贬值了 所以我复制代码https developer chrome com extensions messagin
  • 确定 C 可执行文件名称

    当我们编译 C 程序时 输出存储在 a out 中 我们如何将编译后的输出重定向到另一个文件 大多数 C 编译器为此提供了一个选项 例如 o选项gcc和其他一些 gcc o gentext gentext c cc o mainprog L
  • 如何获取neo4j路径中的最后一个节点?

    在这个密码查询中 将返回与 STATUS on 属性有关系的节点之间的最长路径 但我还想获取路径的最后一个节点 query START n node MATCH p n rels INCLUDE gt m WHERE ALL rel IN
  • 具有负权重的 Dijkstra 算法

    我们可以使用具有负权重的 Dijkstra 算法吗 STOP 在你认为 哈哈 你可以在两点之间无休止地跳跃并获得一条无限便宜的路径 之前 我更倾向于考虑单向路径 其应用是具有点的山区地形 显然 从高到低并不需要能量 事实上 它会产生能量 因
  • Facebook 身份验证对话框:开发人员关于使用“显示”类型“弹出窗口”的警告

    从今天开始 我们在身份验证对话框中收到开发人员警告 其中包含以下消息 您在大型浏览器窗口或选项卡中使用 弹出窗口 显示类型 为了获得更好的用户体验 请使用我们的 JavaScript SDK 显示此对话框 而不指定显式显示类型 SDK 将为
  • Windows 上的 Data.ByteString.Lazy.Char8 换行符转换——文档是否具有误导性?

    我对字节串库中的 Data ByteString Lazy Char8 库有疑问 具体来说 我的问题涉及 readFile 函数 其记录如下 将整个文件延迟读取到 ByteString 中 在 Windows 上使用 文本模式 来解释换行符
  • 从动态元素获取动态Id

    我有带有动态 ID 的 div 元素 div div div div div div div div div div div div 所有元素id parent 除外 可由用户从输入字段进行编辑 因此 parent 的最后一个子级可能具有用
  • C. Break、Switch、If 中的愚蠢错误。 1990 年电话网络崩溃 [已关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我犹豫着要不要问这个问题 因为这看起
  • sed 创建重复行而不是替换现有行

    我有一个包含以下内容的文件 foo txt some text 0 我使用以下 sed 命令将 0 替换为 1 search text some text sed s search text 0 search text 1 i foo tx
  • 从我的网络服务缓存图像 url 的最佳方法?

    我已经实现了一个 ARC 格式的应用程序 但我想在库的缓存文件夹中缓存一些图像网址 任何想法 提前致谢 我希望它能帮助你 我用SDWeb图像 https github com rs SDWebImage与我的所有项目 using 添加您的视
  • 如何在 Selenium 中更改 Google Chrome 用户代理?

    我正在尝试找出一种方法 每当我在这个特定的脚本中通过 Selenium Python 打开 Chrome 时 Chrome 页面就会自动打开并选择另一个用户代理 在本例中为 Microsoft Edge Mobile 但我将从桌面访问它 因
  • YouTube API v3 上传速度

    我一直在使用 YouTube API v3 进行一些测试 使用以下命令上传 Apache 服务器 在 Virtuozzo 上运行 CENTOS 6 7 x86 64 的 VPS 2GB RAM 和大量 CPU 上现有的视频文件提供断点续传脚