代码之家  ›  专栏  ›  技术社区  ›  AutomatedTester

从一个文件中为所有URL加载Google应用程序引擎应用程序,或为加载速度从每个URL加载一个文件

  •  0
  • AutomatedTester  · 技术社区  · 15 年前

    我在AppEngine上运行了一个小的Web应用程序,在一个文件中处理所有的URL,在另一个文件中处理所有的URL,该文件是在主python的顶部导入的。

    例如

    import wsgiref.handlers
    from wsgiref.handlers import format_date_time
    import logging
    import os
    import cgi
    import datetime
    from time import mktime
    
    #Google Libraries
    from django.utils import simplejson
    from google.appengine.ext import webapp
    from google.appengine.ext import db
    from google.appengine.ext.db import Error
    from google.appengine.ext.webapp import template
    from google.appengine.api import memcache
    
    #Model Libraries
    from Models import *
    from Render import *
    from Sound import *
    
    
    #Few classes to handle the URLS
    

    因为它们位于文件的顶部,所以当任何URL被点击时,它们首先被加载。我这样做是因为一些URL需要具有相同的库。

    我的问题是,如果我继续以这种方式构建我的应用程序,是否更好地将URL与它们所需的库分割成它们自己的文件,以便在请求更多的URL时缓慢但肯定地将库移动到内存中,或者在命中任何一个URL时,最好一次性完成所有工作?

    另外,我很感激在现实世界中这可能不是问题,但我只是好奇

    1 回复  |  直到 15 年前
        1
  •  1
  •   Wooble    15 年前

    不需要将处理程序拆分为单独的文件。但是,如果导入的内容在导入时会占用大量CPU,并且许多处理程序都不会使用它,那么最好将导入内容移动到处理程序类中,这样您就可以利用延迟加载。