shopify 推荐什么?
shopify 建议在构建集成时遵循以下准则,以确保提供强大且可扩展的解决方案。一种方法是使用 webhooks 使外部系统保持最新状态,同时将 webhook 处理与数据处理和转换分开。
webhook 处理器接收并存储来自 shopify 的 webhook,验证其数字签名以防止伪造,并将它们及其相关数据发送到队列。队列维护要处理的 webhook 数据列表,而同步工具提取该数据并将其转换以与其他系统(例如 erp、pim 或 oms)同步。协调作业定期检查丢失的数据并将合成 webhook 发送到队列以确保正确同步。
(例如消息队列)来管理流量峰值。
适用于 shopify 的 novcell 中间件
几年前,novicell 的一个团队踏上了尝试实现这一目标的 佐治亚州电话号码 旅程:为 shopify 构建一个可组合的中间件,可以标准化各种外部系统和 shopify 之间的集成。
然而,我们不是创建数据驱动的集成,而是考虑业务需求,创建基于业务的用例并实施它们。例如,我们编写的代码不是“创建金额为 100 欧元的捕获类型交易”的代码,而是“从外部系统接受发票并捕获指定订单上接受的卡付款”的代码。通过这种方式,我们可以为公司增加价值,而不会给他们带来技术实施细节的负担。此外,它允许我们在将来有更好的方法来更改实现细节,同时对业务影响最小或没有影响。
没有一家公司是完全相同的,所以我们也添加了相关的扩展点。这样,当我们将订单从shopify导出到客户的系统时,我们就可以准确导出他们需要的数据。同样,当我们需要从 erp 接收指令以捕获 shopify 中的订单付款时,我们定义基于业务(且与 shopify 兼容)的输入,然后,erp 实施者可以选择根据我们的数据模型发送数据,或者我们可以处理该输入。 “适配器”组件的差异。
下图说明了旨在构建中间件解决方案的思维方式,该解决方案可以通过“适配器”分发给每个客户 - 将来自外部系统的数据转换为 shopify 的代码,反之亦然。
通过这样做,我们能够为团队和客户带来好处:
减少开发时间。需要编写的代码更少意味着我们可以比以前用更少的时间完成任务。
可靠性更高。 “核心”组件有一系列自动化测试,试图及时发现错误。
标准化文件和培训。由于基于我们的连接器的中间件实现共享大部分相同的代码,因此它使我们能够跨项目编写标准化文档并更快地培训新员工。
维护成本更低。维护成本通常较低,因为“核心”组件可以集中开发并分发给客户实施项目。
复杂的集成流程在绿色“核心”组件中构建和维护,而与客户特定系统的映射和数据交换则在蓝色“适配器”组件中管理。
我们将中间件组织成三个独立的连接器:一个用于产品,一个用于订单,一个用于客户。通过这种模块化,我们可以在开发中实现更大的灵活性,因为可以更新或替换各个组件,而不会影响系统的其余部分。此外,我们可以通过扩展每个连接器来管理可扩展性并满足性能要求。另一方面,更小、更集中的组件更容易排除故障和维护,因为可以将问题隔离到特定组件。