4

次の2つのシナリオを検討してください。

app.yamlには2つのURLハンドラーがあります

handlers:
- url: /main
  script: main.app1
- url: /secondary
  script: secondary.app2

およびmain.pyのURIルーター

app1 = webapp2.WSGIApplication([('/main', MainHandler)])

もう1つはsecondary.pyにあります

app2 = webapp2.WSGIApplication([('/secondary', SecondaryHandler)])

vs

app.yamlには1つのURLハンドラーがあります

handlers:
- url: /.*
  script: main.app

そしてURIルーターがハンドラーを決定します

app = webapp2.WSGIApplication([
        ('/main', MainHandler),
        ('/secondary', SecondaryHandler)
      ])

App Engineが2つのシナリオをインポートする方法に違いはありますか?すべてのリクエストがMainHandlerに対するものである場合、App Engineは最初のシナリオでSecondaryHandlerに関連付けられたファイルをインポートしますか、それともインスタンスは最初に初期化されたときに常に各ハンドラーをインポートしますか?

明らかに、これらはアプリケーションを論理的に分割するためのさまざまな方法ですが、関連するパフォーマンスの考慮事項があるかどうかを尋ねています。

4

1 に答える 1

7

webapp2 で遅延ハンドラーを使用して、読み込みを最適化し、単一のアプリを使用できます。このリンクを参照してください: https://webapp2.readthedocs.io/en/latest/guide/routing.html#lazy-handlers

于 2013-02-28T12:17:13.713 に答える