CMSアーキテクチャの構築 - 集中化されているかどうかにかかわらず、PHP、コンテンツ管理システム

私は専用サーバーを持っており、私の個人用の私の個人的なPHP5 CMSの新しいバージョンを構築しています。私がオープンソースの使用を検討すべきかどうかという疑問を除けば、私はCMSアーキテクチャに関するあなたの意見が必要です。

最初のアプローチ(サーバーが完全に私のコントロール)は、単一の管理パネルから複数のサイトをサポートできる集中システムを構築することです。基本的な考え方は、以下の場合に、私は(技術的には、新しいWebルートと新しいデータベースを作成し、おそらくいくつかの他のもの)ログイン中には、スーパーユーザーとして、新しいサイトを作成することが可能だということを、特定の顧客のためのモジュールとプラグインを割り当てる場合、または新しいものを開発します必要です。このパネルで顧客がログインした場合、サイトのコンテンツのみが表示され、管理できます。

私はそのようなシステムを見てきました(カスタムビルドでした)。バグの修正や新機能のおかげで、他のホスティングサーバー上にあるすべてのCMSにパッチを当てなくても、即座にすべての顧客に影響を及ぼします...

私が見ることができるマイナス面はスケーラビリティです - 私が2台目のサーバーを追加する必要がある場合、どうすれば私はシングルコアを維持するためにそれらをマージするのですか。

もう1つは、あらゆる顧客のためのクラシックなスタンドアロンのCMSです。

どうやって行くの?そしてなぜ?

あなたの時間をありがとう。

回答:

回答№1は2

あなたがすべてのために1つの中央システムを持っていたらクライアントのスケーラビリティが向上する可能性があります。 1つの大きなデータベースサーバと複数の同一のWebサーバ(おそらくロードバランサの背後にある)を持つことができます。そのため、クライアントを別々のサーバに分割する心配はありません。トラフィックが多いと、1台のサーバー(および他のすべてのクライアントのサイトも含む)を無意味なものにするのではなく、複数のサーバーで処理することができます。

You can get PHP sessions to work across multiple ロードバランシング設定で「スティッキーセッション」を使用するか、またはPHPなどですべてのサーバー(データベースなど)にアクセスできる場所にデータを格納することによって、

Webアプリケーションファイルを1つのコードベースに同期させることは、それほど難しいことではありません。rsyncのような、役に立つツールがあります。


回答№2の場合は1

それは本当にサイトの種類によります。とは言っても、私はあなたが複数のインストールを管理するためにバージョン管理ソフトウェアを使用することを検討することを提案するでしょう。実際には、これによって集中型アプローチと同じことができますが、単一の(または多数の)サイトの更新を延期する自由が与えられます。


関連する質問
メニュー
最も人気のある