在 Oracle Cloud 上部署电子商务平台
航空旅行需求激增 GOL Linhas Aéreas Inteligentes(GOL) 将客票系统现代化,并扩展基础设施以适应记录增长。
GOL 将其整体预留系统重构到在 Oracle Cloud Infrastructure (OCI) 上运行的云原生平台后,收入增加了一倍,离职数量几乎翻了一番,并预测继续净收入增加,尽管燃料价格飙升。
GOL 是巴西最大的商业航空公司在企业和休闲领域之一,雇用 15,000 名员工,运营 127 架波音 737 飞机,并每天有 715 个航班飞往 100 多个目的地。自从在 OCI 上部署了票务应用程序以来,该航空公司已将批处理时间缩短至 30 分钟(从 2.5 小时缩短),目前正帮助航空旅行者将购买票证的时间减少 30%。
在 2021 年黑色星期五促销活动期间,GOL 卖出了比前几年多 30% 的门票,同时在流量激增期间零停机。如今,GOL 使用 OCI 帮助销售、营销和运营团队根据实时门票销售数据调整门票价格、管理签到、更改乘客路线以及推出促销活动。旅行社和其他合作伙伴还可以在 OCI 上访问 GOL 的订票应用程序,从而即时了解航班起飞、抵达、延迟和取消情况。GOL 的电子商务应用程序在 Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE) 集群中运行,可在正常操作期间在实例池中的 8-12 个节点之间进行扩展。发布销售市场活动后,系统在峰值需求期间自动扩展到 20-30 个节点。
体系结构
企业旅行者和度假者可以购买机票并管理他们的旅行,首先登录 GOL Linhas Aéreas Inteligentes(GOL) 网站。
GOL 针对使用两个虚拟云网络 (Virtual Cloud Network,VCN) 的网络拓扑进行了标准化。它是在集线器和分支环境中配置的。集线器配置为边缘 VCN,在边缘 VCN 中部署动态路由网关 (Dynamic Routing Gateway,DRG) 以连接内部部署系统。GOL 的内部部署网络以及 GOL 基础设施的其余部分存在多个连接。GOL 基础结构使用 FastConnect 连接到 GOL 的多协议标签切换 (MPLS) 云。GOL MPLS 云将 GOL 的其他网络基础设施以及与 Azure 的多云连接连接连接连接起来。
从 GOL 内部部署网络建立的辅助连接是使用通过 DRG 连接到 OpenVPN 实例的站点到站点 VPN 隧道的 VPN 连接。在中心 VCN 中,本地对等连接网关 (LPG) 连接到分支 VCN。分支 VCN 托管包含负载平衡器的其余基础结构:Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE)、Autonomous Database 和 Oracle Exadata Database Service 。其中每个实例都使用子网、路由表和安全组进行隔离。互联网网关为用户提供了访问 GOL 电子商务系统的入口点,以及与外部系统交互的出站。
下图说明了此参考体系结构。
gol-ecommerce-oci-1-oracle.zip
要访问 GOL 电子商务系统,用户流量必须首先通过 Oracle Cloud Infrastructure Web Application Firewall (WAF)。WAF 使用威胁情报和规则实施来保护 GOL 电子商务应用,使其免受恶意和不需要的互联网流量干扰。通过 WAF 后,用户流量会进入分支 VCN,并在该分支通过公共负载平衡器进行分发。负载平衡器会将请求转发到后端子网中运行的相应微服务。
后端子网托管 Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE) 集群。在 OKE 集群上运行的微服务使 GOL 旅行者能够购买和预订航班、检查航班状态、更改行程或取消行程。使用辅助外部微服务和 API 服务,GOL 乘客可以从 GOL 电子商务应用程序购买租车和购买旅行保险。购物和预订微服务使用客户的地址验证系统进行地址验证。同一微服务还将客户的地址传递给信用卡验证系统以进行付款验证。微服务与后端系统集成。
营销和客户关系管理 (CRM) 也是 GOL 电子商务系统的一部分。客户通信微服务与 Oracle Responsys 和 Oracle Service Cloud 等外部系统进行交互。Oracle Responsys 通过邮件营销活动为客户提供个性化产品,Oracle Service Cloud 为有疑问、查询或问题的客户提供客户关系管理 (CRM) 服务。
为了满足向政府报告飞行按时和延迟数据的报告和合规性要求,飞行状态微服务将此信息发送到名为 WS Infraero 的虚拟机实例以处理数据。GOL 部署了 ELK (ElasticSearch LogStash Kibana) 堆栈,用于集中日志记录来识别服务器和应用程序问题。
GOL 使用 Oracle Autonomous Database 存储用户配置文件,使用 Oracle Exadata Database Service 存储 Lufthansa Netline/Ops++ 数据。随着体系结构现在处于灵活状态,GOL 正在考虑将应用程序的各个部分移至不同的区域,并调查数据库同步以实现灾难恢复。
在多云环境中,GOL 使用 Microsoft Azure Data Lake 作为其中心数据存储库,该存储库由来自 OCI 的原始数据提供,并利用 Apache Parquet。销售和库存数据通过在 OCI 中部署的 IBM MQ 应用程序进行传递。然后,Oracle Data Integrator 处理数据馈送以加载到 Oracle Autonomous Transaction Processing 中。为了管理突发负载,例如在线门票销售中的突发峰值,GOL 的 IT 团队使用 Autonomous Database 中的数据库驻留连接池。
与 Oracle 的 CI/CD、Azure DevOps 和 Oracle Cloud Infrastructure Resource Manager 集成有助于 GOL 维护和更新其容器。应用程序前端是使用 Angular 开发的,后端是使用 开发的。Net Core(网络核心)。Azure DevOps 用于代码管理。Azure DevOps 通过互联网访问,Azure 通过使用安全的站点到站点 VPN 隧道连接到 OCI。通过使用 Azure DevOps 和 OKE,可以在几小时内完成微服务更新,而不是在本地运行应用时花费的周数。
该体系结构具有以下组成部分:
- 租户
租户是 Oracle 在您注册 Oracle Cloud Infrastructure 时在 Oracle Cloud 中设置的安全隔离分区。您可以在租户中的 Oracle Cloud 中创建、组织和管理资源。租户与公司或组织同义。通常,公司只有一个租户并反映在该租户中的组织结构。单个租户通常与单个订阅关联,单个订阅通常只有一个租户。
- 区域
Oracle Cloud Infrastructure 区域是一个局部地理区域,包含一个或多个称为可用性域的数据中心。区域独立于其他区域,广阔的距离可以将其分开(跨国家甚至大陆)。
- 区间
区间是 Oracle Cloud Infrastructure 租户中的跨区域逻辑分区。使用区间在 Oracle Cloud 中组织资源、控制对资源的访问以及设置使用限额。要控制对给定区间中资源的访问,您可以定义策略来指定哪些人可以访问资源以及他们可以执行的操作。
- 容错域
故障域是可用性域内一组硬件和基础设施。每个可用性域都具有三个具有独立电源和硬件的故障域。在多个容错域中分配资源时,您的应用可以承受容错域中的物理服务器故障、系统维护和电源故障。
- Web 应用程序防火墙 (WAF)
Oracle Cloud Infrastructure Web Application Firewall (WAF) 是符合支付卡行业 (PCI) 标准的、基于区域且边缘强制执行服务,附加到实施点,例如负载平衡器或 Web 应用程序域名。WAF 可保护应用免受恶意和不需要的互联网流量干扰。WAF 可以保护任何面向互联网的端点,并在客户应用之间实现一致的规则实施。
- 虚拟云网络 (VCN) 和子网
VCN 是您在 Oracle Cloud Infrastructure 区域中设置的可定制软件定义网络。与传统数据中心网络一样,VCN 允许您完全控制您的网络环境。一个 VCN 可以具有多个不重叠的 CIDR 块,您可以在创建 VCN 后对其进行更改。您可以将 VCN 细分为多个子网,这些子网可以限定到区域或可用性域。每个子网包含一系列不与 VCN 中的其他子网重叠的连续地址。创建后可以更改子网的大小。子网可以是公共子网,也可以是专用子网。
- 安全列表
对于每个子网,您可以创建安全规则来指定必须允许进出子网的流量源、目标和类型。
- 负载平衡器
Oracle Cloud Infrastructure Load Balancing 服务提供从单个入口点到后端多个服务器的自动流量分配。
- 对象存储
通过对象存储,可以快速访问任意内容类型的大量结构化和非结构化数据,包括数据库备份、分析数据以及丰富的内容(例如图像和视频)。您可以安全可靠地存储数据,然后直接从互联网或云平台检索数据。您可以无缝扩展存储,而不会降低性能或服务可靠性。将标准存储用于“热”存储,您需要快速、立即和频繁地访问这些存储。将归档存储用于保留很长时间、很少或很少访问的“冷”存储。
- 计算
Oracle Cloud Infrastructure Compute 服务可用于在云中预配和管理计算主机。您可以使用配置启动计算实例,以满足您对 CPU、内存、网络带宽和存储的资源需求。创建计算实例后,可以安全地访问它,重新启动它,附加和分离卷,然后在不再需要时终止它。
- Autonomous Database
Oracle Cloud Infrastructure Autonomous Database 是一个完全托管的预配置数据库环境,可用于事务处理和数据仓库负载。您不需要配置或管理任何硬件,或安装任何软件。Oracle Cloud Infrastructure 可处理数据库创建以及备份、打补丁、升级和调优数据库。
- Autonomous Transaction Processing
Oracle Autonomous Transaction Processing 是一种自我驱动、自我保护和自我修复的数据库服务,针对事务处理负载进行了优化。您不需要配置或管理任何硬件,或安装任何软件。Oracle Cloud Infrastructure 可处理数据库创建以及备份、打补丁、升级和调优数据库。
充分利用内置和部署功能
想要展示您在 Oracle Cloud Infrastructure 上构建的内容?与我们的云架构师全球社区分享您的经验教训、最佳实践和参考架构?让我们帮助您入门。
- 下载模板 (PPTX)
通过将图标拖放到示例线框中,说明您自己的参考体系结构。
- 观看体系结构教程
获取有关如何创建引用体系结构的分步说明。
- 提交您的图表
请向我们发送一封包含您的图表的电子邮件。我们的云架构师将查看您的图表并与您联系以讨论您的架构。
