Suggerimenti

Durante la navigazione su redhat.com troverai risorse che potrebbero interessarti. Leggi le risorse suggerite da noi.


Contattaci

5 considerazioni per lo sviluppo di applicazioni in container

Comunicare con il team di sviluppo non è sempre facile. Spesso si esige molto da loro, considerando i budget limitati, la necessità di operare con i sistemi esistenti e le scadenze serrate. Al contempo, si chiede agli sviluppatori di apprendere nuove tecnologie e adottare nuovi approcci. Nonostante si offrano loro gli strumenti necessari per raggiungere gli obiettivi, la miriade di nuove informazioni può essere scoraggiante.

Red Hat può facilitare il percorso verso i container, l'orchestrazione di Kubernetes, il middleware e i servizi applicativi containerizzati, per incrementare innovazione e reattività. LogistiCare, ad esempio, disponeva di sistemi che non riuscivano a stare al passo con la crescita aziendale e ha contattato Red Hat alla ricerca di approcci innovativi per aumentare la velocità di sviluppo e deployment e al contempo le prestazioni di sistema. Adottando la piattaforma per container e il middleware di Red Hat, LogistiCare ha realizzato un nuovo ambiente per lo sviluppo delle app che ha aumentato la frequenza dei rilasci e ridotto i costi operativi.

Le cinque domande seguenti possono essere sottoposte al team di sviluppo delle applicazioni per valutare se il passaggio ai container, ai servizi applicativi containerizzati e al middleware può incentivare l'aumento della produttività e dell'efficienza. Quando si pongono queste domande al team, occorre fare attenzione alle risposte e ad alcune delle parole chiave utilizzate. Le "risposte possibili" indicate di seguito indicano la probabile necessità di passare a un modello di deployment basato su container Red Hat.

1  Installare e distribuire app più velocemente

In ogni settore, sui team di sviluppo viene esercitata una forte pressione alla creazione di nuove applicazioni e servizi che promuovano l'innovazione e la trasformazione aziendale. Le domande seguenti consentono di avviare un dialogo con il team, finalizzato a comprendere in quale fase del percorso ci si trova e quali sono le azioni successive da intraprendere.

  1. Quanto trovate complesso realizzare e distribuire un'app utilizzando i container? 
  2. Quanto tempo è necessario per applicare una correzione, aggiornare o migliorare un'app esistente? 
  3. Nel processo di sviluppo applicativo, fate uso delle pipeline di deployment CI/CD
  4. Con quale frequenza incontrate problemi con il deployment in ambienti avanzati che non si verificano negli ambienti di sviluppo?

Risposte possibili: il processo di sviluppo dura mesi o anni; il processo di aggiornamento delle app è complesso e lungo; mancato utilizzo di pipeline CI/CD e test A/B; differenze tra ambienti di deployment

4  Middleware e servizi applicativi ottimizzati per Kubernetes

Kubernetes è oggi la tecnologia leader di settore per l'orchestrazione dei container. Consentire al team di sviluppo di lavorare con Kubernetes offrirà vantaggi alla tua azienda e incentiverà una maggiore efficienza dello stesso team di sviluppo. 

  1. Il middleware e i servizi applicativi che utilizzate nelle applicazioni sono progettati per operare insieme e ottimizzati per Kubernetes?
  2. Il middleware e i servizi applicativi in uso sono comprovati nei deployment in produzione?
  3. In che modo proteggete le vostre app? Utilizzate funzionalità di sicurezza integrate, DevSecOps o altri nuovi metodi che funzionano nei cloud e in sede? 
  4. Quanto è difficile monitorare e risolvere i problemi dei servizi distribuiti? 

Risposte possibili: il middleware e i servizi applicativi correntemente in uso non sono stati progettati per operare insieme né ottimizzati per Kubernetes; messa in sicurezza delle applicazioni; il middleware e i servizi applicativi correntemente in uso non sono comprovati nei deployment in produzione su Kubernetes; la protezione delle applicazioni è frammentaria; nelle applicazioni vengono utilizzati svariati meccanismi di sicurezza; la sicurezza delle applicazioni viene effettuata ad hoc con sistemi di vendor cloud specifici; vengono utilizzati meccanismi di monitoraggio e risoluzione dei problemi diversi per le varie applicazioni.

2  Supporto per più linguaggi e framework

Offrire supporto a linguaggi e framework è sempre un'attività complessa. Essere in grado di lavorare con più framework e linguaggi di sviluppo, come JavaTM, consente di eseguire la migrazione o rinnovare i sistemi esistenti, ma anche di attrarre una più ampia gamma di professionisti di talento. Di seguito, alcune domande da porre ai team su questo tema.  

  1. In che modo le app esistenti e nuove sfruttano i microservizi?
  2. Vengono utilizzati linguaggi e framework ben consolidati? 
  3. Quali sono i linguaggi o framework innovativi che ritenete migliori e progettati per i microservizi?
  4. Il vostro ambiente applicativo cloud native supporta l'ottimizzazione delle app esistenti e lo sviluppo di app moderne?

Risposte possibili: utilizzo di un unico linguaggio o framework per tutte le attività di sviluppo; utilizzo carente di linguaggi e framework innovativi che supportino tecniche di sviluppo moderne; impossibilità di ottimizzare le applicazioni esistenti per la loro esecuzione su container e Kubernetes; le soluzioni esistenti supportano soltanto lo sviluppo di nuove applicazioni.

5  Strumenti e risorse per lo sviluppo in ambienti containerizzati

La formazione continua e la crescita professionale sono sempre importanti per un team di sviluppo. Red Hat Training and Certification e altri servizi Red Hat consentono agli sviluppatori di porre domande, partecipare a workshop e condividere una gamma straordinaria di materiali che faciliteranno le attività di transizione allo sviluppo delle app nei container. Ecco alcune domande sul tema. 

  1. State utilizzando un ambiente IDE (Integrated Development Environment) per lo sviluppo di app cloud native?
  2. Il vostro IDE è progettato per lo sviluppo delle app nei container e in Kubernetes? 
  3. Quanto tempo richiedono le attività di sviluppo, installazione e distribuzione delle app in Kubernetes utilizzando gli strumenti di sviluppo correntemente in uso? 
  4. Quanto tempo dedicate quotidianamente alla formazione in autonomia? 
  5. Quanto è importante proseguire le attività di formazione e acquisizione di competenze sui più recenti trend applicativi tramite istruzione formale, formazione e attività pratiche? 
  6. In che modo ottenete assistenza tecnica in caso di necessità durante lo sviluppo applicativo?

Risposte possibili: l'ambiente IDE supporta container e Kubernetes; l'ambiente IDE non è eseguibile su container e Kubernetes; l'ambiente IDE non è basato su browser; l'ambiente IDE deve essere installato sul desktop dello sviluppatore; il tempo di sviluppo delle applicazioni mediante gli strumenti attuali è migliorabile; il supporto tecnico è lento e poco reattivo; le risorse di formazione sono carenti; non sono disponibili attività pratiche per apprendere nuove modalità di sviluppo cloud native.

3  Capacità di lavorare in ambienti cloud ibridi

Il passaggio a un ambiente di cloud computing ibrido offre molti vantaggi, ma principalmente consente al team di sviluppo di innovare in modo veloce e sicuro. I container potranno essere eseguiti in configurazioni multicloud. Se il team di sviluppo sta valutando il passaggio al cloud ibrido, le domande seguenti potrebbero risultare utili. 

  1. Sviluppate applicazioni che si avvalgono di uno o più provider cloud? 
  2. Sviluppate applicazioni distribuite su più cloud? 
  3. Quanto tempo dedicate a rendere le applicazioni fruibili su più cloud? 
  4. Sviluppate applicazioni che combinano funzionalità on premise e su cloud?

Risposte possibili: incapacità di sviluppare su cloud; attività di sviluppo solo on premise; utilizzo di un solo provider cloud; vincoli con il provider cloud; impossibilità di sviluppare applicazioni per cloud ibrido o multicloud.

Red Hat logoLinkedInYouTubeFacebookTwitter

Prodotti

Strumenti

Prova, acquista, vendi

Comunica

Informazioni su Red Hat

Red Hat è leader mondiale nella fornitura di soluzioni open source per le aziende, tra cui Linux, Kubernetes, container e soluzioni cloud. Le nostre soluzioni open source, rese sicure per un uso aziendale, consentono di operare su più piattaforme e ambienti, dal datacenter centrale all'edge della rete.

Seleziona la tua lingua