首页 网页设计和开发博客 如何提高您的航运应用程序的结帐性能 如何提高您的航运应用程序的结帐性能 通过克日什托夫Białek和克里斯汀·卡瓦茨基 Shopify应用开发 2022年10月27日 4分钟阅读 电子邮件 Pinterest 脸谱网 推特 LinkedIn 结帐性能是帮助商家获得更多销售额的一个主要因素,这就是为什么我们努力确保在结帐时以最佳速度装载运费,而不会明显的延迟. 如果你开发的是航运应用,这也意味着你的应用需要同样快。为了帮助应用程序开发人员创建最佳结帐体验,并快速(< 500ms)可靠地返回送货选项,我们整合了六个最佳实践列表,以提高您的送货应用程序的结帐性能。 为Shopify商家构建应用程序 无论您是想为Shopify App Store构建应用程序,提供定制应用程序开发服务,还是正在寻找增加用户基础的方法,Shopify合作伙伴计划都将为您的成功奠定基础。免费加入并访问教育资源、开发人员预览环境和经常性收入分享机会。 报名 1.商店内部运营商零售费率 许多航运应用作为多个航运公司的聚合器,为商家提供价格购物功能。为了避免运输应用的响应性差,这种对运营商后台性能的依赖应该尽可能减少。我们建议将运营商零售价格存储在内部,以避免任何外部呼叫。 2.高速缓存载波速率 对于高度动态或特定于商家的运营商费率,可能有机会构建缓存层。虽然不是每个呼叫给定运营商都会得到相同的响应,但费率可能是相同的模式。在此基础上,您可以定义缓存键。在Shopify,我们建立了一个自我修复的缓存系统,以显着减少外部调用的数量和我们对航运公司后端系统的依赖。 我们建议采取以下步骤: 分析系统中对外部调用的响应数据,并识别跨各种用例的模式 在内存数据库中存储对类似请求的响应(例如复述,),以保证新请求进入时的快速检索 当请求到达缓存时,考虑在后台发出外部请求来验证准确性,并在需要时使用新信息更新缓存 分析相同请求的缓存命中率和未命中率以及响应变化的频率 在实际操作中,这些步骤如下: 输入 输出 假设对于给定的出发地和目的地对postal_codes对于给定的总重量,每个请求返回相同的运费 基于这个假设,可以创建以下缓存模式和键: #{carrier_name}_#{origin_postal_code}_#{destination_postal_code}_#{total_items_weight} => shopify_post_C3C3C3_K2K2K2_1 3.对外部系统的并行调用 如果不能通过公共零售费率的本地存储或缓存来避免对外部系统(如运营商)的调用,您可以通过并行调用运营商来减少运输应用程序的响应时间。并行化与慢速运营商的超时相结合,可以非常有效地加快您对Shopify的响应,同时确保结帐不会被阻塞,因为返回的是一个比率的子集。 4.设置外部系统的超时时间 如果你的运输应用程序从多个外部系统获取费率,并且你正在并行处理这些调用,那么你的应用程序对Shopify的响应时间将至少与最慢的响应时间一样长。为了避免Shopify方面的超时和阻止付款,我们建议设置一个内部超时,如果外部系统未能响应,则取消您对外部系统的请求。按照这种方法,您将能够返回到Shopify的一个子集的利率和解除封锁的结帐。 5.优化您的服务的托管 配送应用的响应时间很重要,因为它会影响客户的结账体验,从而影响商家的成功。响应时间的一部分可以归因于应用服务器和Shopify服务器之间的延迟,当两者位于不同的大洲时,延迟会特别大。 要了解服务器托管对响应时间的影响,请遵循以下步骤:1.创建新文件curl-format.txt与内容: 2.使用Curl -w "@curl-format.txt"http://url/"其中URL是安装应用程序的Shopify商店之一的地址。对位于不同地区的商店重复此步骤。 示例输出: 有关更多详情,请参阅旋度的文档. 延迟的影响在不同区域之间差别很大。Shopify服务器托管在Google Cloud上,不同地区的延迟程度不同Google Cloud区域间延迟矩阵. 推荐的步骤 如果您的连接时间明显高于Google Cloud区域间延迟,请考虑以下操作: 将您的托管提供商更改为Google Cloud,以利用优化的基础架构 将您的应用程序移动到离使用您的应用程序的大多数Shopify商店更近的区域 6.实现备份速率 为了降低结帐被阻止的风险,特别是在外部合作伙伴超时的情况下,我们建议为您的运输应用程序实现备份系统(参见Shopify备份率).这些价格应该以这样一种方式存储,当外部合作伙伴的请求无法确保对Shopify的成功响应时,您可以快速获取它们。 备份率不需要完全从外部来源获取匹配率,但应该足够接近,不会显著影响商家的盈利能力和转化率。通过分析应用程序从外部来源获得的响应数据,你应该能够为你的商家创建这样的相关费率。 推荐的步骤 为备份速率定义高级逻辑。我们建议保持简单:按区域(国家,城市),重量或尺寸,一个昂贵且快速的运费和一个便宜且缓慢的运费就足够了。 分析来自外部来源的响应数据,以创建相关的备份率,帮助您避免结账受阻,而不会对商家的业务产生负面影响。 将备份速率存储在易于访问的数据存储中,以便在外部服务在预期时间范围内(< 500ms)没有响应时快速返回备份速率。 对于使用Shopify备份费率的商家,针对您的应用程序实施特定的备份费率可能会带来更好的商家和客户体验。 下面是加拿大国内订单的备用费率示例。费率仅根据订单重量而不同,但与特定的原产地或目的地邮政编码无关。 依赖于对Shopify的多个请求 我们知道,在许多情况下,应用程序可能需要Shopify提供的未包含在承运人服务API有效载荷中的信息来计算准确的运费(例如客户或产品标签)。 我们将感谢您的反馈什么信息是目前的有效载荷,需要您的应用程序多次调用Shopify计算准确的运费缺失。你可以用这个Google表单. 通过优化配送应用在结账时的表现,你可以帮助商家提高转化率,创造更多销售额——为你创造更快乐、更忠诚的用户。