Ich bin einige Tage früher auf eine Fallstudie gestoßen. Es bezieht sich auf eine Webanwendungsarchitektur.
Hier ist das Szenario,
Es gibt einen einzigen Web-Service von sagen, 1000 Web-Anwendungen. Dieser Web-Service wird auf einem bestimmten Server gehostet. Wenn der Hosting-Standort für Web-Services geändert wird, wie werden die anderen Anwendungen über diese Änderung informiert?
Keeping in web.config scheint keine praktikable Lösung zu sein, da wir web.config-Dateien für alle Anwendungen ändern müssen.
Diese Einstellungen in einem gemeinsamen Repository zu behalten und alle Anwendungen für die Web-Service-Adresse verwenden zu lassen, kam mir in den Sinn, aber es gibt wieder eine Frage des Speicherns dieses gemeinsamen Repository.
Ich bin nur neugierig zu wissen, wie dies mit besserer Leistung erreicht werden könnte.
Vielen Dank im Voraus für jede Art von Vorschlägen.Konfigurationseinstellungen für Webanwendungen - Welcher ist der bessere Ort zum Speichern?
Antwort
haben Sie vollen Zugriff oder Kontrolle über all die Web-Anwendungen, die diesen Web-Service nutzen? Wenn ja, könnten Sie ein Skript oder einen benutzerdefinierten Code haben, der alle ihre Web.configs gleichzeitig aktualisiert. es scheint zu viel Arbeit, aber auf diese Weise haben Sie mehr Kontrolle und Sie könnten auch, schließlich, auf die neue URL nur einige Anwendungen zeigen und einige andere auf einer anderen URL verlassen.
Die Idee mit der Einstellung in einer zentralisierten Datenbank gibt Ihnen schnellere Update-Propagation, die auch im Falle von Fehlern schlecht sein könnte und dann haben Sie alle Anwendungen auf den gleichen Ort verweisen und keine Möglichkeit, dies zu teilen. Dann müssen Sie sich trotzdem mit einer zentralen Datenbank verbinden und vielleicht sollten Sie einen Schlüssel zu ihrer web.config (s) mit der Verbindungszeichenfolge zu dieser Datenbank hinzufügen, falls diese Datenbank nicht erreichbar oder nicht erreichbar ist, Die Webanwendungen können den Webdienst nicht einfach nutzen, weil sie die URL nicht abrufen können.
Ich würde für die Web-Konfiguration gehen, schließlich könnten Sie eine Einstellung Helper-Klasse, die das Abrufen dieser URL abstrahieren, so dass die Benutzeroberfläche oder Front-End nicht weiß woher diese URL stammt.
Wie auch immer, planen Sie die URL eines Webdienstes oft zu ändern? wäre es nicht besser, es auf eine neue URL zu kopieren, sondern es auch für eine Weile auf der aktuellen URL verfügbar zu halten?
ein weiterer Vorteil der web.config Ansatz ist, dass jedes Mal wenn Sie es die Anwendung neu gestartet wird, aktualisieren und speichern, während eine Änderung in einer Datenbank eine Weile dauern könnte Sie einige Caching, falls zu erfassende Mechanismus haben,
diese Hoffnung hilft.
Davide.
- 1. Was ist der bessere Weg/Ort für die Validierung?
- 2. Die beste Möglichkeit zum Speichern von Konfigurationseinstellungen für T4
- 3. .NET Speichern der Konfigurationseinstellungen in PerUserRoaming Location
- 4. Welches ist der bessere Ort, um die Basisklassenmitgliedsvariablen zu initialisieren?
- 5. Die beste Möglichkeit zum Speichern von Konfigurationseinstellungen außerhalb von web.config
- 6. Welcher ist der schnellste Weg zum Looping? [für Neugier]
- 7. Welcher Typ zum Speichern von Prozenten
- 8. Was ist der beste Ort zum Speichern von Daten über Anwendungen
- 9. Bessere Methode zum Zählen der gesamten Seitenaufrufe?
- 10. Frameworks zum Erstellen von Webanwendungen
- 11. Python - was ist der bessere Weg zum Aufruf der Superklasse?
- 12. Was ist ein guter Ort zum Speichern der Konfiguration in Google AppEngine (Python)
- 13. Welcher Typ von Webapp ist der ideale Ort für das Scala Lift-Framework?
- 14. Wie ist der richtige Ort zum Speichern von Montagedateien in Maven?
- 15. Welcher dieser Ansätze bietet eine bessere Leistung für große Tabellen?
- 16. Welcher Dateityp ist der beste?
- 17. Ist das eine Sicherheitsanfälligkeit für Webanwendungen?
- 18. Bessere Möglichkeit zum Speichern von Datenbank-IDs und Lookup-Namen
- 19. Was ist der beste Weg für die Einführung von Webanwendungen?
- 20. Was ist der beste Caching-Mechanismus für .NET-Webanwendungen?
- 21. Guter Leitfaden für die Sicherheit von Webanwendungen?
- 22. Welcher ist der bessere zwischen der Verwendung von statischen var und übergebenen Objektparameter?
- 23. Java-Grafikbibliotheken für Webanwendungen?
- 24. Welches ist der bessere Ansatz zum Aufrufen eines Ereignisdelegaten?
- 25. welcher Datentyp zum Speichern meiner Liste in C#
- 26. SF2 - Korrekter Ort zum Speichern von CSS und ähnlichen Bildern
- 27. dynamischer Eingangsgenerator für Webanwendungen
- 28. Welcher Datentyp wird in MySQL zum Speichern von Bildern verwendet?
- 29. Bessere Methode zum Definieren der statischen Methode
- 30. GUI-Muster für CRUD-Webanwendungen
Danke für die Antwort Davide. Im Falle eines vollständigen Zugriffs kann ein Skript nützlich sein. Aber, ich denke, wenn alle Web-Anwendungen auf verschiedenen Servern gehostet werden, dann kann es mühsam sein, dies zu tun. –
Sicher hast du recht, dann könntest du eventuell einen anderen Webservice und eine andere Webmethode verwenden, um die neueste URL für den anderen Dienst zu verwenden. Dies gilt natürlich nur, wenn du eine permanente URL für diesen Hilfsdienst verwalten kannst. –