Distribuzione della piattaforma E-Commerce su Oracle Cloud

L'abolizione della domanda di viaggi aerei ha spinto GOL Linhas Aéreas Inteligentes (GOL) a modernizzare il suo sistema di biglietteria passeggeri e a scalare la sua infrastruttura per accogliere la crescita record.

Dopo aver refactoring il suo sistema di prenotazione monolitica a una piattaforma cloud nativa che viene eseguita su Oracle Cloud Infrastructure (OCI), GOL ha triplicato i propri ricavi, quasi raddoppiato il numero di partenze e prevede un continuo aumento dei ricavi netti, nonostante l'aumento dei prezzi del carburante.

GOL è una delle più grandi compagnie aeree commerciali brasiliane nei segmenti aziendali e ricreativi, impiegando 15.000 dipendenti, operando 127 aeromobili Boeing 737 e effettuando 715 voli giornalieri verso oltre 100 destinazioni. Da quando distribuisce la propria applicazione di ticketing su OCI, la compagnia aerea ha ridotto i tempi di elaborazione in batch a 30 minuti (fino a 2,5 ore) e sta attualmente aiutando i viaggiatori aerei a trascorrere il 30% in meno di tempo acquistando i biglietti.

Durante il loro evento promozionale del Black Friday nel 2021, GOL ha venduto il 30% di biglietti in più rispetto agli anni precedenti, senza tempi di inattività durante l'esplosione del traffico. Oggi GOL utilizza OCI per aiutare i team di vendita, marketing e operations ad adeguare i prezzi dei biglietti, gestire i check-in, modificare gli itinerari dei passeggeri e lanciare promozioni in base ai dati di vendita dei biglietti in tempo reale. Le agenzie di viaggio e altri partner possono anche accedere all'applicazione di biglietteria di GOL su OCI, fornendo loro informazioni immediate su partenze di volo, arrivi, ritardi e cancellazioni. L'applicazione e-commerce di GOL, eseguita in un cluster Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE), si ridimensiona tra 8 e 12 nodi nel pool delle istanze durante il normale funzionamento. Quando una campagna di vendita viene rilasciata, il sistema si ridimensiona automaticamente a 20-30 nodi durante i picchi della domanda.

Architettura

I viaggiatori d'affari e i vacanzieri possono acquistare i biglietti aerei e gestire i loro viaggi accedendo per prima cosa al sito GOL Linhas Aéreas Inteligentes (GOL).

GOL ha standardizzato una topologia di rete che utilizza due reti cloud virtuali (VCN). È configurato in un ambiente hub e spoke. L'hub è configurato come VCN perimetrale in cui viene distribuito un gateway di instradamento dinamico (DRG) per connettere i sistemi on premise. Sono disponibili più connessioni per connettere la rete in locale di GOL e il resto dell'infrastruttura GOL. L'infrastruttura GOL utilizza FastConnect per connettersi al cloud MPLS (Multiprotocol Label Switching) di GOL. Il cloud GOL MPLS connette il resto dell'infrastruttura di rete di GOL e una connessione multicloud a Azure.

Una connessione secondaria dalla rete in locale di GOL è una connessione VPN che utilizza un tunnel VPN da sito a sito che si connette mediante il gateway DRG a un'istanza OpenVPN. dalla VCN hub, un gateway di peering locale (LPG) si connette alla VCN spoke. La VCN spoke ospita il resto dell'infrastruttura contenente i load balancer, Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE), Autonomous Database e Oracle Exadata Database Service. Ciascuno di questi è isolato mediante subnet, tabelle di instradamento e gruppi di sicurezza. Un gateway Internet fornisce agli utenti un punto di accesso per accedere al sistema di e-commerce GOL e un punto di uscita per interagire con sistemi esterni.

Il diagramma riportato di seguito illustra questa architettura di riferimento.



gol-ecommerce-oci-1-oracle.zip

Per accedere al sistema di e-commerce GOL, il traffico utente deve prima passare a un Oracle Cloud Infrastructure Web Application Firewall (WAF). WAF protegge l'applicazione e-commerce GOL dal traffico Internet dannoso e indesiderato mediante l'intelligence sulle minacce e l'applicazione delle regole. Dopo il passaggio tramite il framework WAF, il traffico utente passa alla VCN spoke dove viene distribuito tramite un load balancer pubblico. Il load balancer inoltra la richiesta ai microservizi appropriati in esecuzione nella subnet backend.

La subnet backend ospita un cluster OKE (Oracle Cloud Infrastructure Container Engine for Kubernetes). I microservizi in esecuzione sul cluster OKE offrono ai viaggiatori di GOL la possibilità di acquistare e prenotare voli, verificare lo stato del volo, modificare l'itinerario o annullare il viaggio. Grazie al microservizio esterno ausiliario e ai servizi API, i passeggeri GOL possono acquistare auto a noleggio e acquistare l'assicurazione di viaggio dall'applicazione di e-commerce GOL. Il microservizio acquisti e prenotazioni utilizza l'indirizzo del cliente per la verifica degli indirizzi con un sistema di convalida degli indirizzi. Lo stesso microservizio passa anche l'indirizzo del cliente a un sistema di convalida della carta di credito per la verifica del pagamento. I microservizi si integrano con i sistemi backend.

Il marketing e la gestione delle relazioni con i clienti (CRM) fanno parte anche del sistema di e-commerce GOL. Il microservizio di comunicazione con i clienti si interfaccia con sistemi esterni come Oracle Responsys e Oracle Service Cloud. Oracle Responsys fornisce offerte personalizzate ai clienti tramite una campagna di marketing per posta e Oracle Service Cloud fornisce servizi CRM (Customer Relationship Management) per i clienti che hanno domande, richieste o problemi.

Per soddisfare il requisito di reporting e conformità per segnalare i dati di volo puntuali e di ritardo al governo, il microservizio dello stato del volo invia queste informazioni a un'istanza di virtual machine denominata WS Infraero per elaborare i dati. GOL ha distribuito uno stack ELK (ElasticSearch LogStash Kibana) per la registrazione centralizzata per identificare i problemi relativi a server e applicazioni.

GOL utilizza Oracle Autonomous Database per memorizzare i profili utente e Oracle Exadata Database Service per memorizzare i dati Lufthansa Netline/Ops++. Con l'architettura ora in stato flessibile, GOL sta prendendo in considerazione lo spostamento di parti dell'applicazione in aree diverse e l'analisi della sincronizzazione del database per il recupero da errori irreversibili.

Nel suo ambiente multicloud, GOL utilizza il data lake di Microsoft Azure come repository di dati centrale, alimentato da dati grezzi di OCI e sfrutta Apache Parquet. I dati di vendita e inventario passano attraverso l'applicazione IBM MQ, distribuita in OCI. I feed di dati vengono quindi elaborati da Oracle Data Integrator per il caricamento in Oracle Autonomous Transaction Processing. Per gestire carichi di lavoro complessi, ad esempio picchi improvvisi nelle vendite di ticket online, il team IT di GOL utilizza il connection pool del database residente di Autonomous Database.

L'integrazione con CI/CD, Azure DevOps e Oracle Cloud Infrastructure Resource Manager di Oracle ha aiutato GOL a mantenere e aggiornare i propri container. Il front end dell'applicazione viene sviluppato utilizzando Angular e il back end viene sviluppato utilizzando . Base netta. Azure DevOps viene utilizzato per la gestione del codice. Azure DevOps è accessibile tramite Internet e Azure è connesso a OCI utilizzando un tunnel VPN site-to-site sicuro. Attraverso l'uso di Azure DevOps e OKE, gli aggiornamenti ai microservizi possono essere effettuati entro poche ore, anziché nelle settimane necessarie durante l'esecuzione della sua applicazione on-premise.

L'architettura è dotata dei componenti elencati di seguito.

  • Tenancy

    Una tenancy è una partizione sicura e isolata che Oracle imposta all'interno di Oracle Cloud quando ti iscrivi a Oracle Cloud Infrastructure. Puoi creare, organizzare e amministrare le tue risorse in Oracle Cloud all'interno della tua tenancy. Una tenancy è sinonimo di azienda o organizzazione. In genere, un'azienda avrà una singola tenancy e ne rifletterà la struttura organizzativa all'interno di tale tenancy. Una singola tenancy in genere è associata a una singola sottoscrizione e una singola sottoscrizione in genere ha una sola tenancy.

  • Area

    Un'area Oracle Cloud Infrastructure è un'area geografica localizzata che contiene uno o più data center, definiti domini di disponibilità. Le regioni sono indipendenti da altre regioni e grandi distanze possono separarle (in tutti i paesi o anche in continenti).

  • Compartimento

    I compartimenti sono partizioni logiche tra più aree all'interno di una tenancy di Oracle Cloud Infrastructure. Usare i compartimenti per organizzare le risorse in Oracle Cloud, controllare l'accesso alle risorse e impostare le quote di utilizzo. Per controllare l'accesso alle risorse in un determinato compartimento, definisci i criteri che specificano chi può accedere alle risorse e quali azioni può eseguire.

  • Dominio di errore

    Un dominio di errore è un raggruppamento di hardware e infrastruttura all'interno di un dominio di disponibilità. Ogni dominio di disponibilità dispone di tre domini di errore con alimentazione e hardware indipendenti. Quando distribuisci risorse su più domini di errore, le tue applicazioni possono tollerare errori fisici del server, manutenzione del sistema e errori di alimentazione all'interno di un dominio di errore.

  • Web Application Firewall (WAF)

    Oracle Cloud Infrastructure Web Application Firewall (WAF) è un servizio di applicazione conforme alle carte di pagamento (PCI), basato su regioni e perimetrali collegato a un punto di applicazione, come un load balancer o un nome di dominio di applicazione Web. WAF protegge le applicazioni dal traffico Internet dannoso e indesiderato. WAF può proteggere qualsiasi endpoint che si interfaccia con Internet, garantendo un'applicazione coerente delle regole in tutte le applicazioni di un cliente.

  • Rete cloud virtuale (VCN) e subnet

    Una VCN è una rete personalizzabile e definita dal software configurata in un'area Oracle Cloud Infrastructure. Analogamente alle reti di data center tradizionali, i VCN offrono il controllo completo sull'ambiente di rete. Una VCN può avere più blocchi CIDR non sovrapposti che puoi modificare dopo aver creato la VCN. Puoi segmentare una VCN nelle subnet che possono essere definite nell'area o in un dominio di disponibilità. Ogni subnet è composta da un intervallo contiguo di indirizzi che non si sovrappongono alle altre subnet nella VCN. Puoi modificare le dimensioni di una subnet dopo la creazione. Una subnet può essere pubblica o privata.

  • Lista di sicurezza

    Per ogni subnet, puoi creare regole di sicurezza che specifichino l'origine, la destinazione e il tipo di traffico che deve essere consentito all'interno e all'esterno della subnet.

  • Load balancer

    Il servizio Oracle Cloud Infrastructure Load Balancing offre la distribuzione automatica del traffico da un unico punto di accesso a più server nel back-end.

  • Memoria oggetti

    Lo storage degli oggetti garantisce un accesso rapido a grandi quantità di dati strutturati e non strutturati di qualsiasi tipo di contenuto, inclusi backup del database, dati analitici e contenuti avanzati, ad esempio immagini e video. Puoi memorizzare i dati in tutta sicurezza e poi recuperarli direttamente da Internet o dall'interno della piattaforma cloud. Puoi ridimensionare lo storage in modo trasparente senza alcun peggioramento a livello di prestazioni o affidabilità dei servizi. Utilizza lo storage standard per lo storage "hot" a cui devi accedere in modo rapido, immediato e frequente. Utilizzare lo storage di archivio per lo storage "freddo" che si mantiene per lunghi periodi di tempo e raramente può accedere.

  • Calcola

    Il servizio Oracle Cloud Infrastructure Compute consente di eseguire il provisioning e la gestione degli host di computazione nel cloud. Puoi avviare le istanze di computazione con forme che soddisfano i requisiti delle risorse per CPU, memoria, larghezza di banda di rete e storage. Dopo aver creato un'istanza di computazione, puoi accedere a tale istanza in modo sicuro, riavviarla, collegare e scollegare volumi e terminarla quando non hai più bisogno di tale istanza.

  • Autonomous Database

    Oracle Cloud Infrastructure Autonomous Database è un ambiente di database preconfigurato e completamente gestito che puoi utilizzare per l'elaborazione delle transazioni e i carichi di lavoro di data warehousing. Non è necessario configurare o gestire hardware né installare software. Oracle Cloud Infrastructure gestisce la creazione del database, nonché il backup, l'applicazione di patch, l'aggiornamento e l'ottimizzazione del database.

  • Autonomous Transaction Processing

    Oracle Autonomous Transaction Processing è un servizio di database a gestione autonoma, protezione automatica e funzionalità di riparazione ottimizzato per i carichi di lavoro di elaborazione delle transazioni. Non è necessario configurare o gestire hardware né installare software. Oracle Cloud Infrastructure gestisce la creazione del database, nonché il backup, l'applicazione di patch, l'aggiornamento e l'ottimizzazione del database.

Partecipa all'evento Creato e distribuito

Vuoi mostrare cosa hai costruito su Oracle Cloud Infrastructure? Vuoi condividere le tue lezioni apprese, le migliori prassi e le architetture di riferimento con la nostra comunità globale di architetti cloud? Ti aiutiamo a iniziare.

  1. Scarica il modello (PPTX)

    Illustrare la propria architettura di riferimento trascinando e rilasciando le icone nel wireframe di esempio.

  2. Guarda l'esercitazione sull'architettura

    Istruzioni dettagliate su come creare un'architettura di riferimento.

  3. Invia il tuo diagramma

    Inviaci un'e-mail con il tuo diagramma. I nostri architetti cloud esamineranno il tuo diagramma e ti contatteranno per discutere della tua architettura.

Visualizza altro

Scopri di più sulle caratteristiche di questa architettura e sulle architetture correlate.

Conferme

  • Autori: Robert Huie, Gustavo Alves, Sasha Banks-Louie
  • Collaboratore: Robert Lies, Alexandre Nakahara