0

会場の「What's on」サイトに似たサイトを制作したいと考えています。

計画では、会場がサイトにアカウントを登録してから、独自の「管理者」セクションを介して、開催中のすべての最新イベントをアップロード/投稿できます。非常に多くの会場がサインアップし、それぞれに多数のイベントがあり、非常に大きなデータセットが生成されることを期待しています.

次に、エンド ユーザーがサイトを通じて特定の種類のイベントを開催しているすべての会場を検索できるようにしたいと考えています。また、モバイルの iPhone/Android アプリケーションを介して検索することも重要です。

私は当初、リソースが制限された VPS でこのシステムをホストしていますが、「アップグレード」するためにすべての要素をスケールアップする必要があります (追加の帯域幅/ディスク容量などを支払わずに RAM の負荷を強打することはできません)。必要に応じてアップグレードする予定です。

多くの調査の結果、私が実装のために検討している 2 つの最良のオプションは、Zope/Plone または Django+PostgreSQL (ゼロからのサイト) であり、どちらも以前に使用したことがありません。

私の質問は、人々の経験では、「この種のサイト プラットフォームとデータセットに最も適しているのはどれか」です。'

これらのいずれかをゼロから学習するために多くの時間を割く余裕はありますが、変更して別のフレームワークでゼロからやり直す余裕はありません。

要約すると、私は目指しています(非現実的である場合はお知らせください):

  • 初期費用が安い。(時間入力と引き換えに)
  • データ追加のための会場ユーザー管理セクション。
  • レビュー/コメントを投稿するためのユーザー ログイン。
  • スケーラブル。
  • 最終的に大規模なデータセット。
  • 限られたリソースで高速に実行します。
  • 将来性のあるフレームワークを使用します。
  • 時間の経過とともにデータ モデルを比較的簡単に維持/拡張できます。
4

3 に答える 3

2

要件に優先順位を付ける必要があります。

たとえば、「最終的に大規模なデータセット」はあまり興味深いものではありません。「大」になれば、それは良いことです。一番の要件として「大規模」から始める (実際のデータがまったくない場合) 制限があります。本当に必要のない複雑さを生み出します。

また、「将来性のあるフレームワークを使用する」ことは不可能です。未来を保証するものは何もありません。何もない。毎日、誰かが非常にクールな新しいフレームワークを作成する可能性がゼロではないため、以前のすべてのフレームワークは愚かであると見なされ、すぐに破棄されて無視されます。

データを「将来的に保証」する必要があります。あなたのフレームワークではありません。簡単だ。

ランキングを修正しました。これが私の推奨する要件のランキングです。

  1. 初期費用が安い。(時間入力と引き換えに)
  2. スケーラブル。
  3. 時間の経過とともにデータ モデルを比較的簡単に維持/拡張できます。
  4. 限られたリソースで高速に実行します。

これらは興味深いものではありません:

  • 将来性のあるフレームワークを使用します。 そのようなことはありません。
  • 最終的に大規模なデータセット。「大きい」場合は、ある程度の感覚が得られるまで待ちます。これも「スケーラブル」の定義です。要件を 2 回含めないでください。

これらはフレームワークではなく、アプリの要件です。

  • データ追加のための会場ユーザー管理セクション。
  • レビュー/コメントを投稿するためのユーザー ログイン。

結論。これらは Django を指しているようです。コストが低く、拡張性が高く、モデルの保守が容易で、動的コンテンツから静的コンテンツ (画像、.css ファイルなど) を分離すると高速に実行されます。

また、Django のビルトイン admin はおそらく「venue user admin」を処理できます (これが何であるかは明確ではありませんが、おそらく Django の admin が行うことです)。

最後に、ユーザー ログイン (および関連するセキュリティ) は、既に Django の一部です。レビュー/コメント用のアプリを作成 (または検索) する必要があります。

于 2009-08-16T17:09:49.940 に答える
1

データモデルの長期的な維持/拡張が比較的容易

これは、Zope をお勧めします。'Zope Object DataBase ' を使用すると、Python 内でデータ オブジェクトを思いのままにチャックできます。

[Django] 動的コンテンツから静的コンテンツ (画像、.css ファイルなど) を分離すると、高速に実行されます

Zope/Plone は、速度が遅いという根拠のない評判がほとんどあります。Django のように静的コンテンツを分離すると、Zope/Plone でも同じ利点が得られます。

最後に、ユーザー ログイン (および関連するセキュリティ) は、既に Django の一部です。

Zope3 と Plone には、非常に強力な組み込みのユーザー ログインおよび管理コンポーネントもあり、どちらもコンポーネント アーキテクチャを介して簡単に拡張できます。

初期費用が安い。(時間入力と引き換えに)

これは難しいものです。Plone は、数日で基本的なサイトを立ち上げ、実行し、スキンを適用します。しかし、私の経験では、Plone サイトは非常に RAM を消費します。小さなサイトでさえ、ほとんどの安価な仮想ホストの RAM の基本的な量 (256/512mb) をすぐに使い果たします。

特注の Zope3 サイトの方がよいかもしれませんが、Zope に慣れていない場合は、学習して実行するのにはるかに時間がかかります。(Grokから始めることをお勧めします)

どちらのテクノロジーも、いわゆる「Z 形状学習曲線」に悩まされています。起動して実行するのは非常に簡単ですが、さらに先に進むには、いくつかの大きな知識のスピードバンプがあります(私見ですが、それだけの価値はあります)。

(注: 私は大規模な Zope3 サイトといくつかの小規模なビジネス Plone/Zope2 サイトを運営した経験がありますが、Django を使用した経験はありません)

于 2009-08-24T08:24:09.080 に答える
0

「時間の経過とともにデータモデルを維持/拡張するのが比較的簡単」は、Djangoを使用するための議論です。私は両方のフレームワークの専門家ではありませんが、両方の経験があります。Zope を初めて使用する場合、Zope オブジェクト モデルを変更および拡張するのは非常に難しいと思います。私は Zope のアーキテクチャが本当に好きで、Zeo はおそらくアプリのスケーリングに非常に役立つでしょうが、事前に Zope の知識がなければ、Django を選ぶでしょう。

于 2009-08-16T16:40:26.670 に答える