come gli sviluppatori aggiungono nuove funzioni su una massiccia applicazione online di Saas, anche se è in esecuzione?

Voglio sapere come sviluppatore sviluppa continuamente un'applicazione web in cloud. quale software o quale ambiente di sviluppo utilizzano? Docker è una risposta corretta? Grazie

Questa è una domanda estremamente aperta, quindi ti darò una risposta relativamente aperta. CI / CD non è un process definito, ma tipicamente le persone seguono la stessa strategia.

CI:

  1. Sviluppare e memorizzare il codice in Git o in un repository
  2. Esegui i casi di test dell'unità
  3. Crea codice sorgente

A questo punto, hai codice che viene continuamente testato e costruito. Ora la consegna continua (CD) entra. Ciò differisce dalla società all'azienda, ma può seguire quanto segue

CD:

  1. Distribuire il codice sorgente al server di test di integrazione dello sviluppo (DIT)
  2. Esegui il portfoglio di test automatizzato
  3. Distribuire il codice sorgente all'ambiente Stage o Pre Prod
  4. Esegui il portfoglio di test automatizzato

Adesso in questo momento il tuo codice è stato completamente testato e distribuito nei server di test / stage interni. Come azienda, puoi decidere se il tuo livello di fiducia è abbastanza alto per implementare la distribuzione continua o se implementi un process di change mgmt. la distribuzione continua è simile alla consegna continua A less che non si distribuisca automaticamente l'applicazione / servizio installato alla produzione senza che siano presenti cancelli. Quindi, eseguire nuovamente il tuo portfoglio di prova contro il prod. Non eseguire test di performance in prod (fare questo test in fase tipicamente)

Prodotto tipicamente usato per CI = Jenkins (open source, grande supporto per la comunità) Prodotto tipicamente utilizzato per CD = Puppet, Chef, Ansible, uDeploy

Disclaimer – per favore non entrare in una conversazione su quali prodotti sono meglio utilizzati per quale fase … io so solo quello che so; e so che ci sono altri strumenti per fare CI / CD che non ho citato.