Vous êtes sur la page 1sur 3

I.

Codebase
One codebase tracked in revision control, many deploys
-If there are multiple codebases, its not an app its a distributed system. Each component in a distributed
system is an app, and each can individually comply with twelve-factor
-Multiple apps sharin the same code is a violation of twelve-factor. !he solution here is to factor shared code
into libraries which can be included throuh the dependency manaer
II. Dependencies
E"plicitly declare and isolate dependencies
- # twelve-factor app never relies on implicit e"istence of system-wide packaes. It declares all dependencies,
completely and e"actly, via a dependency declaration manifest
III. Config
$tore confi in the environment
- strict separation of confi from code
- !he twelve-factor app stores confi in environment variables
IV. Backing Services
!reat backin services as attached resources
- !he code for a twelve-factor app makes no distinction between local and third party services
V. Build, release, run
$trictly separate build and run staes
- !he twelve-factor app uses strict separation between the build, release, and run staes.
VI. Processes
E"ecute the app as one or more stateless processes
- !welve-factor processes are stateless and share-nothin. #ny data that needs to persist must be stored in a
stateful backin service, typically a database.
VII. Port binding
E"port services via port bindin
- !he twelve-factor app is completely self-contained and does not rely on runtime in%ection of a webserver into
the e"ecution environment to create a web-facin service. !he web app e"ports &!!' as a service by bindin
to a port, and listenin to re(uests comin in on that port.
VIII. Concurrency
$cale out via the process model
IX. Disposability
Ma"imi)e robustness with fast startup and raceful shutdown
- !he twelve-factor apps processes are disposable, meanin they can be started or stopped at a moments
notice.
X. Dev/prod parity
*eep development, stain, and production as similar as possible
- !he twelve-factor app is desined for continuous deployment by keepin the ap between development and
production small.
- !he twelve-factor developer resists the ure to use different backin services between development and
production,
XI. ogs
!reat los as event streams
- # twelve-factor app never concerns itself with routin or storae of its output stream.
XII. !d"in processes
+un admin,manaement tasks as one-off processes
-ritten by #dam -iins .ast updated /an 01, 2132 $ourcecode 4ownload e'ub 5ook
- +unnin database mirations 6e.. manae.py syncdb in 4%ano, rake db7mirate in +ails8.
- +unnin a console 6also known as a +E'. shell8 to run arbitrary code or inspect the apps models aainst the
live database. Most lanuaes provide a +E'. by runnin the interpreter without any aruments 6e.. python or
erl8 or in some cases have a separate command 6e.. irb for +uby, rails console for +ails8.
- +unnin one-time scripts committed into the apps repo 6e.. php scripts,fi"9bad9records.php8.
#. $eeded for good arc%itecture
:haneable6;nderbarkeit8
-artbarkeit
.esbarkeit
<ualit=t
&. arc%itectur tasks
-hat
-here
-hy
-ith what
-ho
&ow
'. !rc%itectur (ool
- >ision
- packaes , name conventions
- patterns , capsulin , anstraction
- koh=sin , kopplun
- standards
- )ust=ndikeit , eschw=t)ikeit ,spr?dikeit
). arc%itecur principles
1. Inkrementalit=t - 4urch 'rototypin und schrittweises -achstum
2. .ose *opplun - 4urch @eset) von 4emeter und >ermeidun von Ayklen
0. Entwurf fBr >er=nderun - !est was passiert, wenn *omponenten sich =ndern oder wefallen
C. &ohe *oh=sion - ute fachliche @ruppierunen Bberleben auch !echnoloieshifts 6). 5.
von :orba nach /avaEE8
D. +Bckverfolbarkeit - ;nderunen, Eehler 6E"ceptions8 und 4atenflBsse transparent machen
F. #bstraktion - Interfaces als e"pli)ite $chnittstellen, $ubclassin , 'olymorphie
G. Information &idin - Eassaden, 5lack 5o" 'rin)ip, $chichtenbildun
H. $eparation of :oncerns - #nalyse der Aust=ndikeiten
I. Modularit=t - #nwendun der $prachmittel fBr @ruppierun
31.$elbstdokumentation - Jamensebun, interne und e"terne 4okumentation
*. arc%itecture style
+ co"ponent groups
+ positioning
+ conectors
+ constraints
organi,ation of arc%itecture
+ co""unication pro,esses
+ data oriented flo-
+ call and return
+ data orientated
+ virtuell "ac%ine
(ec%nologie arc%itecture
Content .anage"ent Syste"e
Suc%"asc%inen
/eb+Server 0eben keine !pplication Server1
Portal 2ra"e-orks
3eporting+ und !nalyse+(ools
asttest 2ra"e-orks
Datenbanksyste"e

Vous aimerez peut-être aussi