视频

了解更多
您还记得 RedisConf 的主题演讲演示吗?如果您记得,您可能会喜欢看到在主题演讲中展示的零售应用程序(RedisMart)的幕后开发。如果您不记得,那么现在是观看 Yiftach 和 Ash 展示它的最佳时机。以下是该视频的链接
本文是系列文章的第一篇。通过查看如何实现产品目录、分布式 实时库存 和 AI 支持的产品搜索,它为您提供了一些关于 RedisMart 零售应用程序的主要需求和架构的见解。您还将了解 Redis Enterprise 如何为所有这些功能提供支持。
就像软件开发中经常发生的那样,让我们从讨论一些基本需求开始。以下是一些非正式的用户故事
既然我们知道了需求,让我来构想一下 Redis 如何帮助我们
从那里,想象以下设计并不难
蓝色框代表服务。红色框显示这些服务使用的数据库。
我们遵循了一些微服务方法,例如
RedisMart 提供了一个用户界面,该界面由网上商店 Web 应用程序提供。RedisMart 有一个前端 UI(面向客户的零售网站)和一个后端 UI(用于管理库存)。我们实现了一堆在幕后由应用程序利用的服务。
如前所述,这是系列文章的第一篇。请继续关注,以了解有关我们如何实现各个服务的更多信息。
既然我们已经看到了幕后情况,让我们看看该应用程序在舞台上的样子。
主页显示了主要产品类别。单击一个类别会通过产品目录服务触发搜索查询,从而返回属于该类别的前 16 个产品。
“搜索产品”字段允许您对产品执行全文搜索。它会转到以下搜索结果页面
搜索结果页面有两个部分:分面搜索和实际结果列表。分面搜索可用于进一步限制搜索结果。您可以通过主类别、子类别、价格和评分进行过滤。我们将在博客系列的第二部分讨论如何使用 RediSearch 实现这种分面搜索的实现细节。让我给您一个提示,让您看看 RedisMart 的调试视图
如您所见,标签和聚合发挥着作用。
单击右上角的小摄像头图标,可以拍摄您想要在产品目录中查找的物品的图像。以下 Doug 的照片在我们数据库中没有找到其他 Doug……
……但它很好地找到了一些耳机。
假设您决定购买一副耳机。做出选择后,RedisMart 允许您将它们添加到您的购物车。在结账过程中,您可以选择送货或在附近的商店取货。
RediSearch 的地理搜索支持此本地取货功能。调试视图再次给您提示了幕后实现方式。
一旦客户完成购买,库存服务就会介入,减少库存中的商品数量。这直接将我们带到应用程序的后端,它允许我们管理库存。RedisMart 可视化了如何观察每个复制站点上的即时库存更新。在美国(GCP us-central1)的购买会在一眨眼的功夫内复制到欧洲(Azure north-europe)。
同样,我们将在后面介绍更多细节。这里的主要观点是,您可以以非常低的网络延迟从附近的位置访问数据,同时在多个站点并发修改数据时防止计数器丢失。
您可以通过观看以下视频来查看应用程序的运行情况
我们希望您喜欢阅读这篇关于使用 Redis 构建全功能零售应用程序的博客系列的第一部分。如您所见,Redis 实时数据平台允许我们通过利用 RediSearch + RedisJSON 的文档数据库功能,满足诸如即时访问(小于 100 毫秒端到端延迟)产品信息等需求。RediSearch + RedisGears + RedisAI 的组合支持 AI 支持的图像搜索,以便在产品目录中查找类似产品。此外,还涵盖了分面搜索和地理搜索等功能。最后但并非最不重要的是,我们向您展示了如何轻松地基于 Redis Enterprise 的主动-主动功能构建地理复制的实时库存。凭借所有这些,Redis 实时平台帮助零售公司积极影响整体购买体验,为客户提供最佳履行体验,并以最具成本效益的方式优化库存。
您想了解有关我们为 RedisMart 实现的各个服务的更多信息吗?那么请继续关注本系列的下一篇博客文章!
想自己尝试一下吗?以下是一些链接,让您开始使用 Redis 作为实时数据平台
衷心感谢为该演示应用程序做出贡献的所有人
我们想将这个博客系列献给 RedisMart 应用程序的主要开发人员 Martin Forstner。我们怀着沉痛的心情分享他最近去世的消息。Martin 的知识、才华和幽默感都是首屈一指的。他不仅仅是 Redis 的软件工程师,他还是同事、队友、导师和朋友。安息吧,Martin,我们会想念你!