作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在将图像(每张 <10MB)上传到一个简化的处理程序(如下)来展示这个问题。在 F1(128MB 的 ram)实例上处理 ~5 个请求后,我超出了内存限制:“在总共处理 6 个请求后,超过 152.414 MB 的软私有(private)内存限制”
在 F2(256MB 内存)实例上,我收到了更多请求,但数量不多:“在为总共 19 个请求提供服务后,超过了 258.156 MB 的软私有(private)内存限制”
示例代码:
import webapp2
class FileUploader(webapp2.RequestHandler):
def post(self):
test = self.request.get('file')
self.response.out.write('hi')
app = webapp2.WSGIApplication([('/leak-uploader-example', FileUploader)],
debug=True)
日志中的文本表明我的应用程序可能存在内存泄漏。请求完成后,问题似乎出在 Python 或 App Engine 垃圾收集上。关于如何防止我的实例仅在几次请求后终止的任何建议?
更新 -- 我在使用 webapp 框架(而不是 webapp2)时看到了相同的行为:“在处理总共 6 个请求后超过了 143.121 MB 的软私有(private)内存限制”
最佳答案
为什么不为您的图片使用 Blobstore? https://developers.google.com/appengine/docs/python/blobstore/#Python_Uploading_a_blob
关于python - App Engine 文件上传和分配给变量导致在服务 X 请求后出现内存使用错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18045205/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!