0

mod_pythonでPythonサーバーを実行していますが、構成変数でいくつかの問題が発生しました。これは実際には2つの質問が1つにまとめられています。これは、これらの質問が非常に関連していると思うためです。

  1. 実行中にPythonで使用できる変数を構成する方法が必要です。現在、他のモジュールにインポートする名前と値のペアを設定するモジュールがありますが、最近PythonOptionを読んでいて、代わりにそれを使用することでどのような利点が得られるのか疑問に思いました。

  2. サーバーに状態を保存する方法が必要です。1日にX回の実行に制限されているAPIにアクセスできます。その制限に達したら、(より少ない)コードに戻す必要があります。1日にクエリを実行した回数を追跡するにはどうすればよいのでしょうか。

ファイルまたはデータベースを使用することを考えましたが、全員が同じファイルまたは行に一度にアクセスしようとすることで、リクエストの速度が低下するのではないかと心配しています。mod_pythonでこれを設定するためのより良い方法はありますか?

4

2 に答える 2

1
  1. を使用PythonOptionすると、サーバーごとに変更する必要がある可能性のあるものを構成できます。ただし、Apache構成ディレクティブをいじるのはちょっと面倒なので、あまり使用しません(さらに、サーバーをリロードする必要があります)。PythonOption実際の構成変数を含む設定ファイルの名前を指定するために使用するようなものを検討するかもしれません。(または、ほとんどのフレームワークのように、設定ファイルの標準の場所を探すこともできます)

  2. 本当にファイルやデータベースを検討したくない場合は、を試してくださいmemcached。これは基本的に非常に単純なデータベース(キーのみで取得、設定、クリア)であり、完全にRAMに格納されているため、非常に高速です。ただし、格納する必要があるのがカウンター変数だけの場合は、モジュールがリロードされたときにカウンターがリセットされることを心配しない限り、Pythonモジュールにグローバル変数として貼り付けることができます。

于 2009-08-04T04:24:15.463 に答える
0
  1. 実行中にPythonで使用できる変数を構成する方法が必要です。

    Djangoが行うことを実行します。Python代入ステートメントの単純なインポート可能なスクリプトを使用します。

  2. サーバーに状態を保存する方法が必要です。

    Djangoが行うことを実行します。SQLite3を使用します。

また、PEP 333を読み、WSGIをサポートするようにアプリケーションコンポーネントを構造化します。これは、既存のコードに適切なWSGI構造を持たせるために、比較的小さなリビジョンである必要があります。

mod_pythonからmod_wsgiに切り替えると、これらのことを実行し、作成したコードの量を減らすための多数のコンポーネントを見つけることができます。

于 2009-08-04T10:20:49.710 に答える