La documentazione di Google, Docker e Kubernetes, quando parla di best practices, promuove l’adozione del concetto di “un’applicazione(o concern) per un container“. Applicazione o Concern rappresentano in modo simile lo stesso aspetto; mentre trovi la parola “application” nella documentazione di Google trovi invece “concern” all’interno della documentazione di Docker dove viene usata per indicare un insieme di processi di tipo parent/child che insieme formano un’unica applicazione.
Per rendere più semplice il concetto immagina un processo come un servizio web Apache o Nginx, questo processo Apache o Nginx avvierà una serie di processi “figli” che faranno sempre riferimento allo stesso processo “padre”. Pertanto l’applicazione è unica ma con diversi processi che la rendono effettivamente operativa.
Il razionale dietro questa semplice regola è quello di ridurre la complessità in un unico singolo modulo o servizio così da essere anche aderente ai continui cambiamenti di codice cui oggi sono soggetti i servizi, in poche parole, nell’ambito delle Cloud Native Application, c’è il massimo sforzo per disaccoppiare i servizi rendendone indipendente lo sviluppo ed il deploy così permettendone una crescita verticale ed esponenziale con casi in cui potresti dedicare un singolo sviluppatore ad una singola applicazione o microservizio (come ha illustrato anche l’azienda TrueLayer in una recente intervista). Disaccoppiando, oltre ad ottenere miglioramento continuo, si soddisfano le esigenze in termini di performance che possono essere effettivamente attagliate allo specifico servizio o applicazione.
Riprendendo quanto illustrato nell’articolo “Containers: one single process, or multiple processes?” di cui ne condividiamo i contenuti, possiamo affermare che i vantaggi del modello One Concern One Container sono:
L’interoperabilità e la capacità evolutiva dei container che seguono il modello “One Concern One Container” rende agili gli sviluppi applicativi e perfettamente in linea con logiche di contenimento della spesa e riutilizzo del lavoro svolto.
Abbiamo progettato ed implementato Cluster di Container in ambiente Offline, On-Premise e Cloud. Utilizziamo i container dallo loro nascita. Grazie alle competenze specialistiche maturate in tantissimi settori e con numerosi Clienti ti forniamo assistenza e supporto, eroghiamo formazione avanzata sui container e realizziamo architetture complesse con garanzia 12 mesi da qualsiasi bug. Contattaci subito e senza impegno per maggiori informazioni.