Was ist der Zweck und die Funktion von "Rollen" in einem Capistrano-Rezept? Wenn ich mir Beispielrezepte ansehe, sehe ich oft so etwas:
role :app, 'somedomain.com'
role :web, 'somedomain.com'
role :db, 'somedomain.com', :primary => true
Es sieht also so aus, als wäre eine Rolle im Grunde ein Server, auf dem Capistrano Befehle ausführt. Wenn dies der Fall ist, warum sollte es dann eher als "Rolle" als als "Host" oder "Server" bezeichnet werden?
Was ist im obigen Beispiel der Unterschied zwischen den Rollen :app
und :web
?
Was macht die :primary => true
Option?
quelle
:only => { :primary => true }
meiner Meinung nach sein ... oder derrole
Befehl in der Frage sollte:master => true
stattdessen verwendet werden. Ich glaube, diese Attribute sind völlig frei.Die Option ": primary => true" gibt an, dass der Datenbankserver ein Primärserver ist. Dies ist wichtig, wenn Sie beispielsweise die Replikation mit MySQL verwenden möchten. Sie können damit einen weiteren gespiegelten Datenbankserver erstellen, der für das automatische Failover verwendet werden kann. Es wird auch verwendet, um zu entscheiden, auf welchem Datenbankserver die Modellmigrationen ausgeführt werden sollen (da diese Änderungen auf die Failover-Server repliziert werden). Dieser Link verdeutlicht es ein bisschen mehr: https://github.com/capistrano/capistrano/wiki/2.x-from-the-beginning#back-to-configuration
quelle