电子商务挑战者 Jet.com 把眼光放在制高点,把运行放在微软云上

*如视频不能正常播放,请点击右上角“...”,使用手机浏览器访问播放。

*此案例基于在全球其他地区由微软运营的云服务实施,仅供由世纪互联运营的 Microsoft Azure、Office 365、Power BI 客户参考。

 

“若想成为美国最好的电商平台,我们必须要能应对数以百万计的客户,以及每天数万个订单。这需要一个建立在灵活、开放的云平台上的顶级电商系统。而这正是我们从 Azure 上获得的。”

——Mike Hanrahan, Jet.com 首席技术官

 

业务挑战

2010 年,Marc Lore 以 5.5 亿美元的价格将他的公司 Quidsi(类似 Diapers.com 及 Soap.com 的电子零售网站)出售给亚马逊。四年后,Marc 直接与亚马逊竞争,他创建了一个名为 Jet.com 的全新在线商店。

有很多理由认为,Lore 会圆满完成其目标。首先,Jet 正在使用创新的定价引擎来减少或消除电子商务价值链的成本,特别是履行成本和市场佣金。

Jet 联合创始人兼首席执行官 Lore 解释说:“我们的定价引擎将不断研究出最符合成本效益的方式,以完成离消费者最近的商户的定单。这个引擎还可以通过将多个物品加入一次运输中,找出哪些商家可以最低成本地完成。因此,我们可以通过在订单完成方面更智能来降低典型电子商务交易的 10%成本。”

秉承这样的价值主张,公司正期待着爆炸性增长。Jet 首席技术官 Mike Hanrahan 说:“我们希望在很短的时间内(18 至 36 个月)成为领先的电子商务平台之一。”

下一步:找到合适的云合作伙伴来支持公司雄心勃勃的增长计划。Hanrahan 说:“我们意识到,我们根本没有资源来建立和管理这种数据中心,以及开发基础设施来满足我们的增长战略。所以我们很快确定了一个云模型。”

解决方案

与 Microsoft Azure 合作的决定部分是由.NET 开发平台(特别是 Visual F#)驱动的,这非常适合用于构建 Jet 的微服务架构。正如 Hanrahan 所解释的那样,“事件驱动的微服务模式消除了诸如 Amazon 使用的面向服务的体系结构带来的大量开销,这意味着每个人都可以并行构建所有系统,然后发布和订阅事件总线。我们发现F#可以很好地适用于这种模式,特别是不可变的数据流,它们是我们微服务架构的关键部分。”

Microsoft Visual Studio 开发系统是用于后端基础架构的主要 IDE,在前端使用了 Node。为了尽可能快地通过开发和生产获得代码,Jet 使用了 Azure App Service、Azure Web Roles 和自定义服务器的组合,以及来自 Jenkins 的部署。

同时,Jet 还拥有许多开源中间件组件,它们在 Azure 虚拟机上运行,包括Elasticsearch,RedisLabs,Hadoop 和事件存储——一个开源事件采购数据存储。Jet 正在利用其它几个 Azure 服务来简化其开发流程。例如,为了使商家的合作伙伴更容易与平台集成,Jet 使用 Azure API Management 为其 API 创建了开发者门户。

Jet 还使用 Azure Key Vault 来存储加密密钥以及 Azure Application Insights,它将向开发人员提供实时警报,以帮助他们识别和分类发生的问题。Application Insights 还使 Jet 能够实时了解客户如何使用他们的应用程序,从而实现灵活的构建测量学习循环。

“利用Azure提供的众多现成服务和工具,使我们能够在大约 12 个月内从零开始,进入一个完整的电子商务市场。同样的系统至少需要两年的时间才能建立自己的资本,还有加上资本支出的成本,”Hanrahan 说。

Jet 还依靠其它 Microsoft 云服务来运行其日常业务,包括 Office 365 和 Azure Active Directory。事实上,Jet 现在的整个运营都是通过 Azure 在云中运行。Hanrahan 说:“我们现在没有服务器,一个也没有。”

收益

使用 Microsoft Azure 云服务为 Jet 提供了一定级别的灵活性和可扩展性,这对其积极的开发进度至关重要。

• 在几分钟内从代码转移到生产

通过将 App Service 用于其消费者前端,Jet 已经能够大幅简化其开发流程,从而可以更快地构建、部署和扩展消费级 Web 应用程序。正如 Hanrahan 所说:“通过使用应用程序服务,我们可以在几分钟内通过我们的 CI / CD 流程获取关键代码。”

• 自动缩放以满足客户需求

与任何流行的电子零售网站一样,Jet 根据不断变化的客户流量,需要非常快速和灵活的扩展。为了简化这一过程,Jet 在 PaaS 服务器和 App Service 上设置自动扩展功能,以根据负载或时间表来扩展其服务器。Hanrahan 说:“因为 PaaS 和 App Service 都可以自动扩展,所以我们可以在需要时在前端尽可能多地放置机器。”

• 适应快速增长的存储需求

随着公司的发展,Azure 提供了广泛的存储选项来处理几乎任何数量的数据。Hanrahan 表示:“现在我们的数据仓库是在一个 SQL Server 场景中,但是我们将会增加使用 HD Insight。Azure HDInsight 设计用于处理任何数量的数据,可按需从 TB 级扩展到 PB 级。”

借助 Azure,Jet 已经创建了一个云基础架构,可以满足公司最雄心勃勃的发展计划。“要成为美国最好的电子商务平台之一,我们必须要服务数百万的客户,以及每天数以万计的订单。这需要建立在灵活、开放的云平台上的顶级电子商务系统。这正是我们从 Azure 得到的,”Hanrahan 说。

推荐案例

Top