1
class ImageHandler(webapp2.RequestHandler):
    def get(self):
        a_user = db.get(self.request.get('img_id'))
        if a_user.profile_img:
            self.response.headers['Content-Type'] = 'image/png'
            self.response.out.write(a_user.profile_img)
        else:
            self.response.out.write("No image")

加载图像时这非常慢。每次重新加载页面时,我都会看到图像从图像顶部开始重新加载并逐渐加载整个图像(如果您不明白我的意思,请告诉我)。我应该缓存 img_id 吗?但在我看来,当您使用处理程序加载图像时,应用程序加载更快的图像并没有帮助。关于如何更快地加载图像的任何想法?提前致谢。

4

1 回答 1

5

你还在开发中吗?开发服务器中的事情会慢得多,因为它一次只处理一个请求。生产性能会好很多。

也就是说,使用 GAE 的内置图像托管可能会更好。为此,您无需将图像数据存储在模型中的 blob 属性中,而是将其直接上传到 blobstore 并使用BlobReferenceProperty. 完成后,您可以使用Image.get_serving_url()GAE 直接为其提供服务,因此它根本不需要通过您的应用程序。

于 2013-02-14T02:25:16.560 回答