4

Python で分散アプリケーションを開発しています。現在、システム コンポーネントの一部を再編成して別のサーバーに展開しようとしているため、このようなアプリケーションの展開についてさらに理解を深めたいと考えています。複数のバックエンド コード サーバー、複数のデータベース サーバー (さまざまな種類)、および場合によっては複数のフロントエンド サーバーを使用します。

私の質問は次のとおりです: 分散アプリケーション (Python または一般的に) の適切な展開パターンは何ですか? 複数のサーバー (デプロイ システムで IP をパラメーター化する必要があります) へのコードのプッシュ、複数のフロント エンドへの静的ファイル、サーバーでのプロセスの開始/停止などを管理するにはどうすればよいですか? おそらく使いやすいソリューションを探していますが、ほとんどの場合、一度セットアップすると邪魔にならず、できるだけ簡単に展開できるものです.

明確にするために、この特定のアプリケーションには単一の標準ソリューションがないことを認識していますが、この質問は、単一の統合ソリューションよりも、展開のさまざまなタイプ/部分のベスト プラクティスのガイドを対象としています。

本当にありがとう!これまたは他の展開/アーキテクチャのポインターに関する提案は非常に高く評価されます。

4

1 に答える 1

2

それはすべてアプリケーションに依存します。

あなたはできる:

  • Puppet を使用してサーバーをデプロイし、
  • Fabric を使用してサーバーにリモート接続し、特定のタスクを実行します。
  • pip を使用して Python モジュール (公開されていないものも含む) を配布し、依存関係をインストールします。
  • 特定のタスクに他のツールを使用する (たとえば、boto を使用して Amazon Web Services API を操作し、新しいインスタンスを開始するなど)、

それは必ずしも単純ではなく、おそらく何かカスタマイズする必要があります。あなたのシステムを見てください: それはそれほど「標準的」ではないので、「標準的」な方法で処理されるとは思わないでください。

于 2012-11-08T19:38:15.873 に答える