BACK

what does throttled mean on shopify

Introduction to rate limits - 1 of 3 大家好 我是Zameer Masjedee,Shopify解决方案工程师 谢谢大家观看本视频,今天我们要谈谈,API限流的最佳

ShopifyDevs

Updated on Feb 12,2023

Introduction to rate limits - 1 of 3

The above is a brief introduction to what does throttled mean on shopify

Let's move on to the first section of what does throttled mean on shopify

Let TThunt's experts help you find the best TikTok product on your Shopify business!

Find TikTok products (It's Free)
No difficulty
No complicated process
Find winning products
3.5K Ratings

WHY YOU SHOULD CHOOSE TTHUNT

TThunt has the world's largest selection of TikTok products to choose from, and each product has a large number of advertising materials, so you can choose advertising materials for TikTok ads or Facebook ads without any hassle.

what does throttled mean on shopify catalogs

Introduction to rate limits - 1 of 3

大家好 我是Zameer Masjedee,Shopify解决方案工程师 谢谢大家观看本视频,今天我们要谈谈,API限流的最佳做法,此视频分成三部分,首先我们介绍到底什么是限流,以及关注限流的原因,还有Shopify用的漏桶算法是什么,说到工具 我们要有一个开发商店,有Shopify合作伙伴账户的话 就可以免费注册使用,开发商店中还要有专有应用 我们之后会介绍如何设置,还有您最爱的代码编辑器,我的话就用VS Code 但您喜欢什么就用什么,最后 如果您想完全跟我们用的一样,我会用Ruby和Sinatra框架,但您可以随意使用 自己喜欢的任何编程语言,在这个系列最后 我们会在Shopify上,打造一个完整的端到端专有应用,在其上试着调用API 设置限流,然后处理它,如果您对这类内容感兴趣,并且第一次看我们的视频,记得订阅我们的频道 打开通知,这样一有新视频发布 就会收到通知 咱们开始吧,先说重要的 什么是API限流?,要解释这个 我们要看一些文档,今天提到的任何帮助文档里包含的内容,我还会在视频描述中提供相应链接 注意查看,API限流基本上就是Shopify,用于保证平台稳定性的一种方法,我们提供的API选项相当灵活 既支持REST这一Web标准,也支持GraphQL这个新标准,如果没有实施限流,用户最终可以在任一时刻,随意无限次有效调用API,从服务价值的角度看 这或许看起来不错,在Shopify平台上管理数据时,无论如何 谁想受限呢?,这种想法的问题在于批量调用请求时 就行不通了,如果任何开发者有机会访问 Shopify API,然后开始发出无限次API请求,这会给Shopify服务器带来巨大压力,最终会导致业务中断,商家和所有服务器都会受停机影响,也就是说您的应用 也停止运行了,所以API限流能让我们控制,特定应用在平台上能发出的请求数,这样能确保有效进行API调用,您发出API调用时 能得到响应,服务器能正常工作 而且响应速度很快,因为我们能使整个平台的请求数,维持在我们能响应的水平,我们来具体看一下,有几点要注意,特别是API限流有不同类型,最常见的类型可能是基于请求的限流,后台REST API使用这种,基于请求的限流的运作方式是,限流与您自己发出的请求数有关,我们看到 这有一列详细说明了,针对大多数Shopify套餐的标准限制,而Shopify Plus商家的限制 增加了一倍,我后面要介绍的大部分都是标准限制,通过Shopify后台REST API,您每秒可以发出两次请求,所以可以很容易跟踪并了解,一分钟 一小时 甚至一天内,您总共可以发出多少次请求,这里是每秒钟两次请求,每个请求 无论是否完全相同,更新、删除数据 还是仅获取数据,GraphQL提供了更强大的功能,我们称之为计算出的查询成本,它还是能让您通过查询和修改,来读取和更新数据,但我们考虑的主要区别在于,与每个请求相关的复杂性,说真的 一些操作 比如更新数据,就比只获取数据需要更多资源,对于任何GraphQL请求,我们会考虑限流 引入“点数”概念,标准套餐中 每秒分配给您50个点数,点数的计算方式非常简单,对于需要更新、新建 或删除数据的修改,要消耗10个点数,获取对象只消耗1个点数,GraphQL挺有趣,我们在这个视频中不会深入展开,不过我们 有可能在GraphQL中嵌套数据,比如您想获取一个订单,也想获取订单中的 每个订单项目,那这就不止消耗1个点数了,如果订单有十个订单项目,每个订单项目消耗1个点数,整个订单消耗1个点数,那这次请求总共会消耗11个点数,大体上就是这么运作的,用GraphQL API的话,自己也很容易算出,整体来说 GraphQL更高效,如果您现在还犹豫不决,出于此原因 我们强烈推荐GraphQL,在这个系列后面 我们会提到其他几个原因,最后一种API限流方式是基于时间的限流,店面API用的就是这种方式,它并不一定和发出的请求数有关,而更多的是与请求的间隔时间有关,这用于执行无请求头的请求 以及与之相关一些内容,这个视频中不会深入介绍,我们会详细介绍REST API,还会稍微谈谈GraphQL,理解Shopify限流的第二关键是,理解漏桶算法,理解漏桶算法的最好方式是,想象Shopify给您的应用,一个桶的空间去发出请求,这个桶有多大取决于几点,如果向下滚动鼠标 就能看到我们已经为您逐项分解了,对于后台REST API限流,它告诉我们对于标准套餐,每个商店每个应用中桶可容纳40次请求,这说得很清楚 如果您有一个公共应用,并安装在了两个商店里,这两个安装没有关系或依存性,每个都有自己独立的限流,对于后台REST API,它们被分配的桶可容纳40次请求,这表示您这个桶的空间可以,从您的专有或公共应用里接受40次请求,比如我们想创建一个新产品 棒,就像之前提到的 REST里的一切都很简单,在限流方面 都只是一次请求,我们创建一个产品,就相当于为发出这次请求,向桶里投了一枚弹珠或硬币,我们第二次想再进行类似操作,比如更新或删除数据,我们相当于向桶里又投了一枚弹珠或硬币,可以看到 随着时间推移,桶慢慢变满,只有桶里还有多余空间容纳弹珠,您才能发出请求,如果它满了 您再投一枚弹珠,Shopify就会提示429错误,“请求太多” “速率已达上限”,“我们无法处理您的请求 请耐心等待”,这时候桶就要开始 漏出请求了,您的桶确实可以容纳40次请求,但是与此同时,桶不断漏出之前的请求,这是什么意思?,这意味着漏出速率是每秒两个请求,如果您的桶里有东西 那您的桶有空间,再容纳两个弹珠 或者说请求,如果它完全是空的 比如您之前一个小时里没发出任何请求,那桶还容纳40个请求,它不会得到任何额外空间,它无法漏出本没有的东西,假设您在同一秒内,发出十次请求,桶能容纳40个弹珠 您已经填入了十个,一秒钟后 其中两个就漏出了,桶里现在有八个弹珠,还有空间接纳另外32个请求,大体上说 它就是这么运作的,这么运作的原因很简单,如果我们只提供每秒两次请求的标准限流,您就会缺乏应对请求激增的灵活性,比如面对这种情况,订单每次进来时,您都要更新其中所含的所有产品,您要增加存储在产品标签中的价值,也许因为您想跟踪卖出的产品总值,每个订单一进来,就要随之发生X次产品更新,您可以很快看出越多订单进来,您就要发出越多请求,有了漏桶模式,因为桶可容纳40次请求,那假如有20个订单项目,您就要同时为各个产品 分别发出20条不同的请求,尽管漏出速率只是每秒钟两次,您的桶里还是有空间,还能涌进20个弹珠,一秒钟后又有两个离开,里面只有18个,您可以慢慢看出 具有同时发出一堆或一组请求的能力,会给您和您的应用多带来一点灵活性,这就是我们选择这么运作的原因,GraphQL用的方式也非常类似,也会给您一个桶 但体积不一样,这个例子中桶的体积是一千个点数,漏出速率是每秒50个点数,同样的 消耗点数根据修改和对象而改变,这里具体介绍了,如何计算每次查询要消耗的点数,这样您能了解在一段时间内,使用GraphQL 能发出多少次请求,以上稍微介绍了一下限流的,不同方式和不同类型,以及为什么要使用漏桶算法 才能保持平台稳定,因为我喜欢数据 最后我想分享一些有趣的数据,即我们的API调用量,我从大概过去30天里,任选了一天的数据集列在这里,您可以看到我们最常见的四个REST端点,说起API请求 到底数据量有多大,每天2亿2千2百万次产品调用,1亿5千8百万次库存水平调用,1亿3千7百万次订单调用 1亿6百万次元字段调用,经过Shopify服务器的流量非常大,我们限流是为了对商家和合作伙伴负责,这样我们才能为大家 提供最高水平的稳定性,和最长的正常运行时间,我们感谢您根据限流策略打造了应用,这是负责任的做法,我们会在下个视频中稍微谈谈最佳做法,非常感谢观看此视频 希望您喜欢,在下个视频中 我们要进一步谈谈,如何写代码实现这些限流,再见

Congratulation! You bave finally finished reading what does throttled mean on shopify and believe you bave enougb understending what does throttled mean on shopify

Come on and read the rest of the article!

Browse More Content