Ich bin Architekt in einem Unternehmen, das eine SaaS-Lösung entwickeln möchte. Unsere Produkte sind über viele verschiedene bereitstellbare Container, Webdienste, Web-Benutzeroberflächen usw. verteilt.
Ich suche nach einer Open Source- oder Drittanbieter-Softwarelösung, um die Einstellungen unserer Anwendung zu verwalten. Diese ähneln den Einstellungen, die Sie möglicherweise in Word, Eclipse oder Visual Studio finden. Die Einstellungen würden verschiedene Verhaltensweisen und Merkmale des Produkts steuern. (Wahrscheinlich nicht Einstellungen wie die Datenbank, zu der eine Verbindung hergestellt werden soll, sondern eher Einstellungen, sollte ich Zeilennummern auf der Seite anzeigen oder nicht standardmäßig.) Im Idealfall können wir Werte für verschiedene Dimensionen speichern (nach Mandant, Benutzer, Anwendungsumgebung ...).
Da wir so viele verschiedene Deployables haben, suche ich nach einer zentralen Lösung, die einen Webdienst bereitstellen kann, von dem jedes Deployable seine individuellen Einstellungen erhalten kann.
Kennt jemand einen zentralen Dienst, der diese Art von Funktionen bietet, oder hilft er mir bei der Suche nach einer Alternative zum Rollen unserer eigenen?
quelle
Antworten:
Wir verwenden dafür die Datenbank selbst.
Wir haben eine Tabelle, in der jeder Datensatz ein Datum / Uhrzeit-Feld "Zuletzt aktualisiert" für die im Datensatz gespeicherten Einstellungen enthält (aktualisiert mit einem Trigger).
Unsere Apps überprüfen das Datum / Uhrzeit-Feld auf die Einstellungen, an denen sie interessiert sind. Wenn es aktueller ist als der Wert, den sie im Speicher haben, werden die Einstellungen neu geladen und die speicherinterne Datum / Uhrzeit aktualisiert.
Funktioniert für viele verschiedene Apps, die eine oder mehrere Gruppen von Einstellungen überprüfen.
quelle
Klingt nach einer Business Rules Engine, bei der Sie nur einfache Regeln verwenden. Diese Engines stellen eine Bibliothek bereit, die die Regeln aus einem zentralen Repository abruft und auf effiziente
Weise zwischenspeichert. Google einfach nach "Business Rules Engine" und du wirst viele davon finden ...
quelle
Das Konfigurationsmanagement ist ein Bereich für sich und eine solche Datenbank wird häufig als CMDB bezeichnet .
CMDB muss oft keine relationale Datenbank sein. Was ich mich am effektivsten erinnern kann, wird OneCMBD sein - aber sehen Sie, ob das Ihren Anforderungen entspricht.
Es gibt viele Lösungen und einige Open Source-Lösungen, wie zum Beispiel einige, die Sie hier finden: http://linuxaria.com/article/6-cmdb-open-source?lang=de
quelle