Outils pour utilisateurs

Outils du site


informatique:12_factors_app

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
informatique:12_factors_app [14/01/2016 05:41] – [4. Services Tiers / Backing Services] cyrilleinformatique:12_factors_app [14/01/2016 06:13] – [12 Factors app] cyrille
Ligne 4: Ligne 4:
   * [[https://www.packtpub.com/books/content/building-and-running-12-factor-microservices-docker-part-1|Building and Running 12 Factor Microservices on Docker (Part 1)]]   * [[https://www.packtpub.com/books/content/building-and-running-12-factor-microservices-docker-part-1|Building and Running 12 Factor Microservices on Docker (Part 1)]]
   * [[https://www.packtpub.com/books/content/building-and-running-12-factor-microservices-docker-part-2|Building and Running 12 Factor Microservices on Docker (Part 2)]]   * [[https://www.packtpub.com/books/content/building-and-running-12-factor-microservices-docker-part-2|Building and Running 12 Factor Microservices on Docker (Part 2)]]
 +
 +Autres lecture: [[/informatique/docker]]
  
 ===== 1. Code source / Codebase ===== ===== 1. Code source / Codebase =====
Ligne 28: Ligne 30:
     * %%DATABASE_URL=mysql://sa:mypwd@mydbinstance.abcdefghijkl.us-west-2.rds.amazonaws.com/mydb%%     * %%DATABASE_URL=mysql://sa:mypwd@mydbinstance.abcdefghijkl.us-west-2.rds.amazonaws.com/mydb%%
  
-===== 5. Construire, packager, exécuter / Build, Release, Run =====+===== 5. Construire, distribuer, exécuter / Build, Release, Run ===== 
 + 
 +  * La construction (Build) créé un paquet autonome à partir du code source, des médias et des dépendances. 
 +  * La distribution (Release) créé un paquet unique avec le Build et la configuration de déploiement. Le paquet est unique et identifiable (numéro de version) 
 + 
 +L'[[https://www.packtpub.com/books/content/building-and-running-12-factor-microservices-docker-part-2|article]] présente la construction d'une 1ere image Docker "0.1.0" avec l'application, et d'une 2eme image Docker "0.1.0.0" héritant de la 1ère et ajoutant son environnement de configuration, c'est la release (Le 4eme chiffre décrit la version de la configuration). 
 + 
 +===== 6. Processus / Processes ===== 
 + 
 +  * L'application est exécuté comme un ou plusieurs processus sans état (stateless) qui ne partage(nt) rien et sont donc distribuable(s) horizontalement 
 +  * Un mot sur le PID file et le gestionnaire de service "runit" 
 + 
 +===== 7. Port d'écoute réseau / Port Binding ===== 
 + 
 +  * Le port d'écoute réseau doit être défini par l'environnement, pas par l'application 
 +  * Le serveur web doit être fourni par l'application 
 + 
 +===== 8. Concurrence / Concurrency ===== 
 + 
 +  * Comme les processus n'ont pas d'état, on peut en ajouter au besoin 
 +  * L'application peut être composée de différents types de processus: web, tâches de fond, tâches périodiques, ... 
 + 
 +===== 9. Disposability ===== 
 + 
 +  * Les processus de l'application doivent pouvoir être arrêtés et démarrés facilement et indépendemment 
 + 
 +===== 10. Dev/Prod Parity ===== 
 + 
 +  * le temps entre développement et production doit être court 
 +  * Un développeur doit pouvoir pousser en production un nouveau code: continus deployement 
 + 
 +===== 11. Logs ===== 
 + 
 +  * L'application écrit ses logs sur "stdout", c'est l'environnement qui est en charge de les récolter, distribués, agréger ... 
 + 
 +===== 12. Admin processes ===== 
 + 
 +  * un processus d'administration doit pouvoir être lancé facilement et utilisant le même code et la même configuration que l'application 
  
  
informatique/12_factors_app.txt · Dernière modification : 02/04/2018 12:17 de cyrille

Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki