3

複数の Web サーバー、サーバー アプリケーション、場合によっては内部デスクトップ ツールにまたがる設定を一元的に管理できるようにしたいと考えています。

現在の状況では、各 Web サーバーまたは各アプリケーション内に設定ファイルがあり、グローバル変数が定義されています: 管理者の電子メール、アップロードされたファイルの保存場所など。一部の設定 (エラー レポートを送信するグローバル管理者の電子メールなど) は、ほぼ全社的に。その他の設定は、クライアントまたはサイト固有の場合があります。

また、この中央データベースで、誰が/何が各設定にアクセスしているかを監視できるようにしたいと考えています。たとえば、5 つの異なる Web サイトで使用される「\\ImageServer\cache\」の値を持つ「ProcessedImageUploadFolder」設定があるとします。この設定を変更したいのですが、中央システムを見ると、この設定を要求しているとは思わなかった6番目のサーバーがあります(呼び出し元のアプリは設定を取得するためにそれ自体を識別する必要があるため、DBはそれをログに記録できます)。6番目のサーバーのこの設定を変更すると副作用。

設定を皿に盛り付けてログに記録するサービスを使用して独自のDBを展開する前に、このようなものを既に処理するライブラリ/アプリがあるかどうか疑問に思っています。このようなことが行われた場合、誰にもアイデアはありますか? このタイプのシステムは何と呼ばれますか?

ソリューションは C#/SQL であることが望ましいですが、唯一のオプションが php や Java のようなものである場合は、おそらくそれをベースとして使用し、それを移植します。

それとも、私はこれについてすべて間違っていますか?

編集: これはマルチテナンシーではありません。このサービスを使用するアプリの一部は、既にマルチテナント セットアップになっています。その他は 1 回限りのアプリです。その他は、ローカル ネットワークまたは VPN で使用されるデスクトップ アプリです。

誰かがこの質問をより適切にタグ付けできる場合は、私のゲストになってください.

4

2 に答える 2

1

サービスを備えた中央データベースは、道のりのようです。アプリケーションが構成をキャッシュしていることを確認してください。これにより、すべての要求でアプリケーションがデータベースにヒットしないようになります。また、中央データベースが一時的に利用できなくなった場合でも、アプリケーションが続行できるようになります。

Javaがオプションの場合は、CommonsConfigurationを確認できます。いくつかのアイデアについては、 Oracleアプリケーションのプロファイルオプション(2-21ページ)を参照することもできます。プロファイルオプションには興味深い構成階層があり、サイト、アプリケーション、責任、およびユーザーレベルでプリファレンスを設定でき、最高レベルのプリファレンスが優先されます。

于 2009-06-07T06:54:32.163 に答える
0

ニールがするあなたの質問を説明するのに最適な用語は、「マルチ テナンシー」と呼ばれるものだと思います。Devlicious は、Multi Tenancy に関する興味深い記事をhttp://devlicio.us/blogs/anne_epstein/archive/2009/04/24/the-case-for-multiple-dbs-in-multi-tenancy-situations.aspxに投稿しました。

sshared 構成サービスをコーディングする場合、サービス ロケーター パターンhttp://martinfowler.com/articles/injection.html#UsingAServiceLocatorに似たパターンを使用して実装し、拡張と相互運用が容易な Web サービスを開発します。と。このサービスは、1 つのデータベース、2 つのデータベース、または複数の xml 構成ファイルであるかに関係なく、設計を抽象化します。

他に何か提案はありますか?

于 2009-06-06T13:13:36.653 に答える