Panoramica sul caching

Con il caching, le prestazioni delle applicazioni su vasta scala sono molto migliori e i costi sono inferiori

Cos'è il caching?

Nell'ambito dell'elaborazione, la cache è un livello di storage dei dati ad alta velocità che memorizza un sottoinsieme di dati, in genere di natura temporanea, per rispondere alle richieste più rapidamente di quanto non sarebbe possibile accedendo ogni volta al percorso principale in cui si trovano i dati. Il caching permette di riutilizzare in modo efficiente dati già recuperati o elaborati.

Come funziona il caching?

I dati nella cache vengono generalmente archiviati in hardware ad accesso rapido, ad esempio la RAM, e possono essere elaborati con l'ausilio di un componente software. Lo scopo principale della cache è aumentare le prestazioni di recupero dei dati riducendo la necessità di accedere al livello di storage successivo, più lento.

La cache sacrifica la capacità in favore della velocità, perciò in genere può memorizzare solo un sottoinsieme temporaneo di dati, mentre nei database i dati vengono memorizzati in modo completo e durevole.

Introduzione al caching: potenziamento dei carichi di lavoro delle applicazioni

Panoramica sul caching

RAM e motori in memoria: grazie alle elevate percentuali di richieste o IOPS (operazioni input/output al secondo) supportate dalla RAM e dai motori di caching in memoria, le prestazioni di recupero dei dati sono migliori e i costi su larga scala sono ridotti. Per operare su una scala altrettanto grande con database tradizionali e hardware basato su disco, sarebbero necessarie risorse aggiuntive. Tali risorse naturalmente farebbero lievitare i costi e comunque non raggiungerebbero gli stessi risultati in fatto di bassa latenza garantiti dalla cache in memoria.

Applicazioni: la cache può essere utilizzata su diversi livelli e con tecnologie di vario tipo, tra cui sistemi operativi, livelli di rete (ad esempio reti per la distribuzione di contenuti e DNS), applicazioni Web e database. La cache può essere utilizzata per ridurre in modo significativo la latenza e migliorare le prestazioni IOPS per i carichi di lavoro di applicazioni particolarmente gravosi in lettura, ad esempio portali di assistenza con le domande frequenti, videogiochi, soluzioni di condivisione di file e social network. Le informazioni memorizzate nella cache possono includere i risultati di query di database, calcoli complessi dal punto di vista computazionale, richieste e risposte API e artefatti Web quali HTML o JavaScript e file di immagine. I carichi di lavoro con elevate esigenze di elaborazione che operano su set di dati, ad esempio motori di raccomandazione e simulazioni ad alte prestazioni, potranno inoltre trarre molti vantaggi da un livello di dati in memoria con funzione di caching. In tali applicazioni, è necessario accedere in tempo reale a set di dati di dimensioni molto grandi su più cluster di macchine che possono coprire centinaia di nodi. Data la velocità dell'hardware, intervenire su tali dati in uno store basato su disco costituirebbe una problematica significativa.

Modelli di progettazione: in un ambiente di elaborazione distribuito, un livello di caching dedicato consente l'esecuzione di sistemi e applicazioni con cicli di vita specifici indipendentemente dalla cache, senza il rischio di comprometterla. La cache funziona come livello centralizzato a cui accedere da diversi sistemi, ciascuno con il proprio ciclo di vita e la propria topologia in quanto all’architettura. Si tratta di una soluzione particolarmente rilevante in sistemi i cui nodi delle applicazioni dispongono di scalabilità sia orizzontale sia verticale, applicabile in modo dinamico. Se la cache si trova nello stesso nodo dell'applicazione o dei sistemi che la utilizzano, la ricalibrazione potrebbe intaccare l'integrità della cache. Inoltre, quando viene impiegata la cache locale, i vantaggi si applicano esclusivamente alle applicazioni che usano dati in locale. In un ambiente di caching distribuito, i dati possono essere distribuiti su più server di cache e memorizzati in un percorso centralizzato a vantaggio di tutti i consumer.

Best practice per il caching: quando viene implementato un livello di cache, è importante comprendere la durata dei dati memorizzati. La cache è funzionale quando offre un hit rate elevato, perciò quando la richiesta di ripristino individua i dati cercati. Un mancato riscontro si verifica quando i dati ricercati non sono presenti nella cache. È possibile applicare diversi tipi di controllo, ad esempio specificare il time-to-live o TTL, per decidere i termini della scadenza dei dati. Un altro elemento importante può essere la necessità o meno di operare in un ambiente di caching a disponibilità elevata, esigenza che può essere soddisfatta con un motore in memoria, ad esempio Redis. In alcuni casi, un livello di storage dei dati in memoria può essere utilizzato come livello autonomo, non solo per la memorizzazione dei dati dal percorso principale. In questo scenario, è importante che per determinare l'eventuale idoneità per i dati nel motore in memoria siano definiti i tempi di recupero previsti (RTO, Recovery Time Objective), ovvero il tempo necessario per recuperare il sistema dopo un'interruzione, e i punti di recupero previsti (RPO, Recovery Point Objective), ovvero l'ultimo punto o transazione acquisiti in fase di ripristino. Per soddisfare tali requisiti, è possibile applicare diverse strategie di progettazione e verificare le caratteristiche dei diversi motori in memoria.

Livello Lato client DNS Web App Database
Caso d'uso

Recupero più rapido di contenuti dai siti Web (browser o dispositivo)

Risoluzione di domini in IP Recupero più rapido di contenuti da server Web o di applicazioni. Gestione di sessioni Web (lato server) Prestazioni delle applicazioni e accesso ai dati migliorati Riduzione della latenza associata alle richieste di query di database
Tecnologie Intestazioni di cache HTTP, browser Server DNS Intestazioni di cache HTTP, CDN, reverse proxy, acceleratori Web, store chiave-valore Datastore chiave-valore, cache locale Buffer di database, datastore chiave-valore
Soluzioni Specifiche per browser Amazon Route 53 Amazon CloudFrontElastiCache per RedisElastiCache per Memcachedsoluzioni di partner Framework di applicazioni, ElastiCache per RedisElastiCache per Memcachedsoluzioni di partner  ElastiCache per RedisElastiCache per Memcached

Caching con Amazon ElastiCache

Amazon ElastiCache è un servizio Web che semplifica distribuzione, funzionamento e ridimensionamento di cache e datastore in memoria nel cloud. Si tratta di un servizio che potenzia le prestazioni delle applicazioni Web facilitando il recupero delle informazioni dai datastore gestiti in memoria, molto più rapide dei database basati su disco. Scopri come implementare una strategia di caching efficace con questo whitepaper tecnico sul caching in memoria.

Vantaggi del caching

Miglioramento delle prestazioni dell'applicazione

Poiché la memoria è di diversi ordini di grandezza più veloce rispetto ai dischi (magnetici o SSD), la lettura dei dati nella cache in memoria è estremamente rapida (inferiore al millisecondo). L'accesso ai dati è perciò significativamente più rapido, così come le prestazioni generali dell'applicazione.

Costi dei database ridotti

Una singola istanza della cache è in grado di fornire centinaia di migliaia di IOPS (operazioni input/output al secondo) e può, potenzialmente, sostituire diverse istanze database, contribuendo alla riduzione dei costi. Si tratta di una soluzione particolarmente rilevante se la tariffa del database primario è basata sul throughput. In questo caso, il risparmio potrebbe essere di decine di punti percentuali.

Riduzione del carico di back-end

Reindirizzando una porzione elevata del carico di lettura dal database di back-end al livello di caching in memoria, è possibile ridurre il carico che grava sul database ed evitare i rallentamenti sotto sforzo e le eventuali interruzioni nei momenti di picco.

Prestazioni prevedibili

Una problematica frequente nelle applicazioni moderne è come affrontare i picchi di utilizzo delle applicazioni. Ad esempio, i momenti di picco possono essere quelli a cui sono sottoposte le app di social network durante il Super Bowl o le elezioni, o ancora i siti di e-commerce durante il Black Friday. Il maggiore carico sul database provoca un aumento della latenza di accesso ai dati, perciò le prestazioni dell'applicazione diventano difficili da prevedere. L'elevato throughput della cache in memoria permette di mitigare questo problema.

Eliminazione di hotspot di database

In molte applicazioni, è facile che un piccolo sottoinsieme di dati, ad esempio il profilo di una celebrità o un prodotto molto venduto, ricevano più accessi rispetto agli altri dati. Alcune aree del database, perciò, potrebbero ricevere molte più richieste e quindi necessitare di maggiori risorse, a seconda dei requisiti di throughput stabiliti per i dati con maggiori accessi. L'archiviazione di chiavi comuni in una cache in memoria limita la necessità di provisioning eccessivo, fornendo al contempo prestazioni elevate e prevedibili per i dati più richiesti.

Maggiore throughput in lettura (IOPS)

Oltre a offrire bassa latenza, i sistemi in memoria forniscono una frequenza di elaborazione delle richieste (IOPS) molto maggiore rispetto a quella di un database basato su disco con risorse analoghe. Una singola istanza può essere usata come cache ausiliaria distribuita per rispondere a centinaia di migliaia di richieste al secondo.

Casi d'uso e settori

  • Casi d'uso
  • Ulteriori informazioni sui casi d'uso di caching

    Caching di database

    Le prestazioni garantite dal database, in termini sia di velocità sia di throughput, possono costituire l'elemento che più di tutti influisce sulle prestazioni complessive di un'applicazione. Inoltre, sebbene molti database oggi offrano prestazioni relativamente buone, potrebbero risultare comunque insufficienti in molti casi d'uso. Il caching di database permette di aumentare sensibilmente il throughput e ridurre la latenza di recupero dei dati associata ai database di back-end, migliorando di conseguenza le prestazioni generali dell'applicazione. La cache funge da livello di accesso ai dati alternativo al database che l'applicazione può impiegare per migliorare le prestazioni. È possibile applicare un livello di caching di database a qualsiasi tipo di database, inclusi database relazionali e NoSQL. Le tecniche più utilizzate per caricare i dati nella cache includono caricamento lazy e metodi di write-through. Per ulteriori informazioni, fai clic qui.

    Rete per la distribuzione di contenuti (CDN)

    Quando il traffico Web è distribuito in aree geografiche diverse, non è sempre fattibile né conveniente replicare l'intera infrastruttura in tutto il mondo. Una rete per la distribuzione di contenuti o CDN (Content Delivery Network) offre la possibilità di impiegare la rete globale di edge location per offrire ai clienti una copia cache di contenuti Web tra cui video, pagine, immagini e molto altro. Per ridurre i tempi di risposta, la rete per la distribuzione di contenuti (CDN) utilizza la edge location più vicina ai clienti o alla posizione geografica da cui ha avuto origine la richiesta. Il throughput ne risulta migliorato in modo significativo, perché gli asset Web provengono dalla cache. Per quanto riguarda i dati generati in modo dinamico, molte reti per la distribuzione di contenuti possono essere configurate per acquisire i dati dai server di origine.

    Amazon CloudFront è una rete per la distribuzione di contenuti che rende più rapide le distribuzioni di siti Web, API, contenuti video e altri asset Web. Si integra con altri prodotti di Amazon Web Services per offrire a sviluppatori e aziende una soluzione semplice per migliorare la distribuzione di contenuti agli utenti finali senza alcun impegno contrattuale minimo di utilizzo. Per ulteriori informazioni sulle reti per la distribuzione di contenuti, consulta questa pagina.

    Caching DNS

    Tutte le richieste di dominio inoltrate su Internet fondamentalmente interrogano i server cache DNS per risolvere gli indirizzi IP associati a un nome di dominio. Il caching DNS può essere applicato su più livelli, ad esempio al sistema operativo, tramite ISP e server DNS.

    Amazon Route 53 è un servizio Web di DNS (Domain Name System) altamente scalabile e disponibile.

    Gestione di sessioni

    Le sessioni HTTP contengono i dati utente scambiati tra gli utenti del sito e le applicazioni Web, ad esempio le informazioni di accesso, i carrelli degli acquisti, gli elementi già visualizzati e così via. Una gestione efficiente delle sessioni HTTP, ad esempio memorizzando le preferenze e offrendo un contesto valido, è un elemento estremamente importante per fornire un'esperienza di alto livello agli utenti di un sito Web. Con le moderne architetture di applicazioni, la soluzione ideale è impiegare un datastore di gestione delle sessioni centralizzato, che permette di fornire un'esperienza utente coerente su tutti i server Web, di migliorare la durabilità delle sessioni quando un parco di server Web è elastico e di aumentare la disponibilità quando i dati di sessione vengono replicati su più server cache.

    Per ulteriori informazioni, fai clic qui.

    API (Application Programming Interfaces)

    La maggior parte delle applicazioni Web sono basate sulle API. Un'API, in genere, è un servizio Web RESTful a cui è possibile accedere tramite HTTP e che dispone di risorse che permettono all'utente di interagire con l'applicazione. Quando viene progettata un'API, è importante prendere in considerazione diversi elementi, tra cui il carico previsto, le autorizzazioni, gli effetti delle modifiche della versione dei consumer dell'API e soprattutto la facilità d'uso. Un'API non necessita sempre dell'esecuzione di codice aziendale e/o di richieste di back-end a un database per ogni richiesta. A volte un risultato memorizzato nella cache dell'API offrirà una risposta ottimale e con costi minori. Questo vale soprattutto quando è possibile memorizzare nella cache le risposte API alla stessa velocità con cui i dati vengono modificati. Ad esempio, poniamo di disporre di un'API per la visualizzazione di prodotti in cui le diverse categorie di prodotto vengono modificate solo una volta al giorno. Poiché la risposta alla richiesta in una categoria sarà identica per tutte le chiamate effettuate durante un determinato giorno, sarà sufficiente memorizzare nella cache una risposta API. Memorizzando nella cache la risposta API, l'infrastruttura non deve più risponderne, perciò anche il carico su server di applicazione e database sarà minore. I tempi di risposta risulteranno inoltre più rapidi e le prestazioni delle API più elevate.

    Amazon API Gateway è un servizio completamente gestito che consente agli sviluppatori di creare, pubblicare, mantenere, monitorare e proteggere facilmente le API su qualsiasi scala.

    Caching per ambienti ibridi

    In un ambiente cloud ibrido, è possibile disporre di applicazioni che operano nel cloud e richiedono accessi frequenti a un database in locale. Sono disponibili molte topologie di rete che è possibile adottare per creare connettività tra il cloud e l'ambiente locale, ad esempio VPN e Direct Connect. E mentre la latenza tra VPC e data center locale potrebbe essere bassa, può essere consigliabile memorizzare i dati salvati in locale nella cache dell'ambiente cloud, in modo da velocizzare le prestazioni generali di recupero dei dati.

    Caching Web

    Durante la consegna di contenuti Web ai visualizzatori, la maggior parte della latenza correlata al recupero degli asset Web come le immagini, i documenti html, i video, ecc. può essere significativamente ridotta memorizzando nella cache gli artefatti ed eliminando le letture del disco e i caricamenti del server. Sono disponibili diverse tecniche di caching da impiegare sia lato server sia lato client. Il caching Web lato server in genere prevede l'impiego di un proxy Web che memorizzi le risposte provenienti dal server Web corrispondente, riducendo in questo modo carico e latenza. Questa caratteristica può anche includere il caching basato su browser, in cui viene memorizzata una versione cache dei contenuti già visitati. Per ulteriori informazioni sul caching Web, consulta questa pagina.

    Caching generico

    L'accesso ai dati in memoria è di diversi ordini di grandezza più veloce rispetto all'accesso su disco o SSD; la memorizzazione nella cache offre quindi enormi vantaggi. Per molti casi d'uso che non necessitano di supporto di dati transazionali o durabilità basata su disco, impiegare uno store chiave-valore in memoria come database autonomo è un ottimo modo per sviluppare applicazioni ad alte prestazioni. Oltre ad essere più veloci, disporranno anche di maggiore throughput in rapporto al costo. I dati utilizzabili come riferimento, ad esempio gruppo di prodotti, categoria, informazioni del profilo e così via, sono uno dei casi d'uso ideali per il caching generico. Per ulteriori informazioni sul caching generico, consulta questa pagina.

    Cache integrata

    La cache integrata è un livello in memoria che salva automaticamente nella cache i dati con accessi più frequenti dal database di origine. Nella maggior parte dei casi, il relativo database impiega questa cache per offrire le risposte alle richieste in entrata, poiché i dati si trovano nella cache. In questo modo, le prestazioni del database risultano potenziate in modo significativo, perché diminuisce la latenza delle richieste e viene ridotto l'utilizzo di CPU e memoria nel motore di database. Una caratteristica importante della cache integrata è che i dati memorizzati sono coerenti con quelli salvati su disco dal motore di database.

  • Settori
  • Scopri come il caching viene impiegato nei diversi settori

    Dispositivi mobili

    Le applicazioni per dispositivi mobili sono un segmento di mercato in forte crescita guidato dalla rapida adozione di dispositivi consumer e il declino nell'utilizzo dei computer tradizionali. Che si tratti di giochi, applicazioni commerciali o applicazioni di fitness, in quasi tutti i segmenti di mercato oggi sono previste applicazioni per dispositivi mobili. Dalla prospettiva dello sviluppo, creare applicazioni per dispositivi mobili è molto simile a creare qualsiasi altro tipo di applicazione. I punti di attenzione, le aree di maggiore visibilità, i livelli aziendali e di dati sono gli stessi. Il formato dello schermo e gli strumenti di sviluppo potranno anche essere differenti, ma offrire un'esperienza utente di alto livello è l'obiettivo principale di ogni tipo di applicazione. Per offrire le prestazioni che si aspettano gli utenti, una strategia di caching è una risorsa eccezionale che consente di ricalibrare enormi quantità di risorse e ridurre i costi.

    AWS Mobile Hub è una console che offre un'esperienza integrata per il rilevamento e la configurazione dei servizi cloud di AWS, nonché per il relativo accesso, al fine di sviluppare e testare le app mobili e monitorarne l'utilizzo.

    Internet of Things (IoT)

    L'Internet of Things permette di raccogliere tramite appositi sensori informazioni da un dispositivo e da oggetti al di fuori del mondo informatico e trasmetterle su Internet o a un'applicazione che ne analizzi i dati. Il valore dell'IoT sta nella possibilità di interpretare i dati acquisiti a intervalli quasi in tempo reale, possibilità che permette alle applicazioni e ai sistemi di destinazione di rispondere con grande rapidità. Prendiamo ad esempio un dispositivo che trasmette coordinate GPS. Un'applicazione IoT può suggerire punti di interesse nelle vicinanze di tali coordinate. Se inoltre è prevista la memorizzazione delle preferenze dell'utente del dispositivo, è possibile offrire raccomandazioni personalizzate individuali. In questo esempio specifico, la velocità di risposta dell'applicazione alle coordinate è fondamentale per ottenere un'esperienza utente ottimale. Il caching può giocare un ruolo importante; i punti di interesse e le relative coordinate possono venire memorizzati in uno store chiave-valore, ad esempio Redis, per velocizzare i tempi di risposta. Dalla prospettiva dello sviluppo e grazie ai mezzi programmatici a disposizione, è possibile scrivere codice con cui l'applicazione IoT risponde a qualsiasi evento. Al momento della creazione di un'architettura IoT, tuttavia, è importante prendere in considerazione diversi elementi, quali il tempo di risposta necessario per l'analisi dei dati acquisiti, la progettazione di una soluzione in grado di ricalibrare un numero elevato di dispositivi e la distribuzione di un'architettura dai costi abbordabili.

    AWS IoT è una piattaforma cloud gestita che consente a dispositivi connessi di interagire in modo semplice e sicuro con applicazioni nel cloud e altri dispositivi.

    Altre letture: Managing IoT and Time Series Data with Amazon ElastiCache for Redis (Gestione di IoT e dati di serie temporali con Amazon ElastiCache per Redis)

    Tecnologie pubblicitarie

    Le moderne applicazioni pubblicitarie sono particolarmente onerose in termini di prestazioni. In questo settore, un esempio di area in notevole crescita è quella delle offerte in tempo reale o RTB (Real-Time Bidding), che è un approccio basato su aste alla vendita di spazi pubblicitari digitali in tempo reale, con una granularità a livello di singola impressione. Il modello delle offerte in tempo reale è stato quello dominante nel 2015, con il 74% di spazi pubblicitari acquistati in modo programmatico, per un valore di 11 miliardi di dollari solo negli Stati Uniti (secondo l'analisi di eMarketer). Quando viene creata un'app per le offerte in tempo reale, un ritardo di un millisecondo può fare la differenza tra un'offerta valida e una non valida. Il recupero delle informazioni sulle offerte dal database deve quindi essere estremamente rapido. Il caching di database, che consente di accedere ai dettagli delle offerte in meno di un millisecondo, è una soluzione ideale per ottenere prestazioni elevate.

    Videogiochi

    L'interattività è un requisito base per quasi tutti i videogiochi di oggi. Niente crea una maggiore frustrazione in un giocatore quanto un gioco lento o che non risponde ai comandi; quando succede, il più delle volte il gioco e destinato a fallire. Questo requisito diventa ancora più evidente per i giochi in multiplayer su dispositivi mobili, dove un'azione eseguita da un utente deve essere applicata agli altri utenti in tempo reale. Il caching svolge un ruolo cruciale, perché permette al gioco di scorrere senza intoppi fornendo in meno di un millisecondo risposte alle query relative ai dati con accesso più frequente. Inoltre è molto utile per affrontare situazioni che si verificano di frequente, ad esempio per recuperare i punteggi dei giocatori.

    Per ulteriori informazioni sullo sviluppo di giochi in AWS, consulta questa pagina.

    Media

    Le aziende che producono contenuti multimediali devono spesso trasmettere grandi volumi di contenuti statici ai propri clienti e il numero di lettori e di visualizzazioni è estremamente variabile. Un servizio di streaming video come Netflix o Amazon Video, ad esempio, trasmette in streaming enormi quantità di contenuti video agli utenti finali. Si tratta di una situazione ideale per una rete per la distribuzione di contenuti, dove i dati vengono memorizzati in un set di server cache distribuiti in tutto il mondo. Un altro dettaglio importante è che il carico delle applicazioni di questo tipo tende ad essere soggetto a sbalzi e picchi imprevedibili. Prendiamo ad esempio un blog su un sito Web di cui ha appena parlato una celebrità in un tweet, oppure il sito Web di una squadra di football durante il Super Bowl. Un picco di grandi dimensioni indirizzato a un piccolo sottoinsieme di contenuti può rappresentare una sfida importante per la maggior parte dei database, perché il throughput per chiave è limitato. Ma siccome la memoria ha un throughput estremamente maggiore rispetto al disco, una soluzione di caching di database risolverà il problema reindirizzando le richieste di lettura nella cache in memoria.

    E-commerce

    Le applicazioni di e-commerce moderne sono sempre più complesse e personalizzabili, con consigli in tempo reale basati sui dati e sulla cronologia degli acquisti dell'utente. Spesso sono anche in grado di consultare le attività dell'utente sui social network e di fornire così consigli in base agli acquisti o alle preferenze degli amici. Ma mentre la quantità di dati da elaborare aumenta, la pazienza dei clienti non cambia. Garantire quindi prestazioni in tempo reale non è più una solo peculiarità utile, ma una necessità; una buona strategia di caching è un elemento critico per le prestazioni di un'applicazione, che può fare la differenza tra successo e fallimento di un'app o tra una vendita o un cliente perso.

    Social media

    Le applicazioni social hanno preso d'assalto il mondo. I social network come Facebook, Twitter, Instagram e Snapchat hanno un numero elevato di utenti che consumano quantità sempre crescenti di contenuti. Quando un utente apre il suo feed, si aspetta di visualizzare i contenuti personalizzati più recenti quasi in tempo reale. Non si tratta di contenuti statici: gli amici, le immagini e gli interessi variano da utente a utente, così come molti altri dettagli; la complessità che ne deriva è estremamente superiore. Le app social sono inoltre spesso soggette a picchi di utilizzo in occasione di eventi di intrattenimento, sportivi o politici. Per ottenere resilienza a questi picchi e prestazioni in tempo reale, è necessario progettare diversi livelli di caching, con ad esempio reti per la distribuzione di contenuti per i contenuti statici quali le immagini di sfondo, cache di sessione per tenere traccia dei dati della sessione corrente di utente e cache di database per tenere sempre pronti i dati con accessi frequenti, ad esempio le ultime notizie degli amici più vicini e le ultime immagini visualizzate.

    Settore sanitario e wellness

    Il settore sanitario sta attraversando una rivoluzione digitale, che rende l'assistenza disponibile e accessibile a un numero sempre maggiore di pazienti in tutto il mondo. Alcune applicazioni permettono ai pazienti di consultare il proprio dottore tramite video, mentre la maggior parte dei grandi provider di assistenza sanitaria dispone di app con cui i pazienti possono consultare i risultati dei propri esami e comunicare con il personale medico. Nel settore del wellness, invece, sono già presenti un'infinità di applicazioni, che vanno dal monitoraggio delle attività degli utenti tramite un sensore (ad esempio FitBit e Jawbone) al coaching completo. Data la loro natura interattiva, è necessario offrire applicazioni con livelli aziendali e di dati ad alte prestazioni. Con una strategia di caching efficace sarà possibile garantire prestazioni elevate, ridurre i costi dell'infrastruttura e ricalibrare le risorse in base alla domanda.

    Per ulteriori informazioni sulla creazione di app per il settore sanitario in AWS, consulta questa pagina.

    Finanza e tecnologie finanziarie

    Il modo in cui gli utenti si servono dei servizi finanziari è cambiato notevolmente negli ultimi anni. Ora esistono applicazioni che permettono l'accesso a servizi bancari e assicurativi, rilevamento di attività fraudolente, servizi di investimento, ottimizzazione per mercato dei capitali mediante algoritmi in tempo reale e molto altro. Non è semplice offrire l'accesso in tempo reale ai dati finanziari e permettere di effettuare transazioni, ad esempio un trasferimento di denaro o un pagamento. In primo luogo, si applicano vincoli analoghi alle altre applicazioni in cui l'utente deve interagire con l'app quasi in tempo reale. Secondariamente, le applicazioni finanziarie sono soggette a requisiti aggiuntivi, ad esempio una maggiore sicurezza e funzioni quali il rilevamento di attività fraudolente. Per soddisfare le esigenze dei clienti, è fondamentale disporre di un'architettura efficiente che includa una strategia di caching a più livelli. A seconda delle esigenze dell'applicazione, i livelli di caching possono includere una cache di sessione per memorizzare i dati di sessione dell'utente, una rete per la distribuzione di contenuti per i contenuti statici e una cache di database per i dati con accessi frequenti, ad esempio gli ultimi 10 acquisti di un cliente.

    Per ulteriori informazioni sulle app per servizi finanziari in AWS, consulta questa pagina.

Inizia a usare Amazon ElastiCache

Step 1 - Sign up for an Amazon Web Services account

Registrati per creare un account AWS

Ottieni accesso istantaneo al piano gratuito di AWS.

Impara con semplici tutorial

Inizia a creare

Inizia a creare con l'aiuto della Guida per l'utente.