我希望我的Google應用程序引擎webapp2應用程序儘快啓動(創建新的應用程序實例)。我想知道我應該注意什麼明顯的緩慢起伏(我知道..過早優化,但我不想在最後做一個大規模的重新因素,如果我可以幫助它)如何在webapp2中導入模型和處理程序以確保新應用程序實例的快速啓動
我有一個文件夾這個層次類似於:
-root_folder
__init__.py
main.py
config.py
routes.py
models.py
gviz_api.py
... 20 more .py files
-web_folder
__init__.py
some_handlers.py
more_handlers.py
20 more.py files
..
-data_model_folder
__init__.py
some_models.py
more_ndb_models.py
10 more model files
-many more folders e.g. templates, simpleauth etc.
in main.py,我用路由器創建一個應用實例(路由器從routes.py導入)。 routes.py導入每個處理程序(爲每個路由分配一個處理程序)。每個處理程序幾乎導入每個數據模型。這是否意味着我的應用程序創建新應用程序實例的速度很慢?
我期待在我的項目結束時擁有大約100個處理程序和30個數據模型,但其中很多將很少使用。
進口(從內some_handlers.py)
數據模型將只需要將下面夠快:
from root_folder.data_model_folder.more_ndb_models import special_model
我應該尋找使用config /註冊表?
這超出了我的「沒有模型類找到類'X'」可能會發生 - 我會考慮不使用懶惰進口不管。你提到的其他一切都非常有幫助。 –
另外,通過「大型框架」,你的意思是包含在應用程序引擎中的任何一個?例如numpy etc –
「如果您從用戶接收到編碼密鑰並從數據存儲中檢索到該密鑰,則可能會發生沒有找到類型爲'X'的模型類」。如果鍵的類型是X,但定義類X的模塊尚未導入,則會出現此錯誤,因爲客戶端代碼需要具有類X以構建結果。大型框架中,我主要是指Django;儘管整個應用程序引擎也很重要。 :-) –