6

私はASP.NETでマルチサイトコンテンツ管理システムを作成します。どのような高速化:すべてのサイトのデータベース、またはすべてのサイトの1つのデータベース?マルチサイトCMS - すべてのサイト用のデータベース、またはすべてのサイト用の1つのデータベース?

ありがとうございました。

EDIT:サイトごとにデータベースを使用する場合、どのデータベースを使用する必要がありますか? XML?すべてのサイトの

答えて

3

単一のデータベースを使用すると、訪問数の多いウェブサイトを持っている場合には悪い一品になってしまうことがあります。また、データベーステーブルが複雑になり、システムの処理速度が遅くなることを意味します。

データベースの形式については、XMLは必ずしもそのようなものではありません。たとえば、MySQLまたはPostgreeを使用してみてください。

+1

それは、サーバー・データベースまたは(Accessのよう)ファイル・データベースであるべきでしょうか? – user145586

+0

サーバーデータベース。ファイルデータベースはWindowsサーバーでより多く使用されているので、WebサーバーとしてWindowsを使用している場合は、実行可能なオプションである可能性があります(私は実際にパフォーマンスを認識していません。 – yoda

2

これは実際にCMSが複雑になるかどうかによって決まります。たとえば、ブログのようなシンプルなマイクロCMSなら、このサービスの購読者はあまり多くなく、その購読者はおそらく同じ機能と機能を持っていますCMSを使用すると、1つのデータベースを選択することができます。

しかし、あなたのCMSは、粒状の設定レベル、多くの機能や特徴の多くを持っている場合、潜在的に店に大規模なデータセットを持っています。私は各インスタンスごとに別々のデータベースをお勧めします。

ファイルデータベース、特にこの種のデータベースへのアクセスは、オンラインアプリケーション用に設計されていないため、同時の接続制限がある可能性がありますので、受信した要求が多い場合、

は、Microsoftの技術を使用している場合は、データベースのためのあなたが持っている何の多くの選択肢が存在しない、MSSQLは、おそらく唯一の選択肢である、あなたは、SQL Expressを選択するかもしれないが、それは大規模なサイトには適していません。

は実際には、も、あなたは、あなたのデザインに若干の使用感を得るために、それらの最初のを試みるかもしれマイクロソフトテクノロジベースのCMSを選択したい、多くのオープンソースCMSが利用可能です。

幸運。

0

1つの選択肢は、マルチテナント単一インスタンスアプリケーションおよびデータベースを使用することです。サインアップして行く小さなサイト(SaaS型)の場合

これが作られた収入のためのより少ないメンテナンスを可能にします。サポートとメンテナンスのために多くの費用を支払う大規模なクライアントの場合は、いつでも独自の単一インスタンスを提供できます。

オプションは、Microsoftのクラウド「SQL Azureの」http://www.microsoft.com/azure/sql.mspx

0

は、なぜあなたはそれが複数のインスタンスにする必要がありますかでデータベースをホストしていることだろうか?彼らは同じデータで動作しますか?そうなら、独自のデータベース(msSQL、mySQLなど)で各インスタンスを設定し、Webサービスを使用してそれらの間でデータを交換することができます。 ( - 私はApprendaで働くFYI)これは、.NETで構築しているので、あなたがSaaSGridで深刻な表情をしたいことがあり、最も「緩い結合」ソリューション:)

1

だろう。単一の顧客の場合と同様にアプリケーションを作成するだけですが、展開すると、SaaSGridはアプリケーションを真のマルチテナントSaaS製品に変えます。したがって、データ・モデルの質問は、設計時の主要な決定ではなく、実際にデプロイ時の構成オプションになります。他にもたくさんのメリットがありますが、コマーシャルのように聞こえないように、私はそれを残しておきます:-)。

はまた、ここではマルチテナントの良い技術的な記事だ:

http://msdn.microsoft.com/en-us/library/aa479086.aspx

は、この情報がお役に立てば幸いです。

  • ジェシー
関連する問題