我使用GAE(谷歌应用程序引擎),制作一个非常简单的Web应用程序。在处理请求的方法中,我只是创建了大量对象。在那之后,我删除了对该数组的所有引用。之后,我致电gc.collect。
但是当我长时间测试(发送请求)时,仪表板的内存使用量继续增加。
我看起来像内存泄漏。但是我认为代码还可以。
下面是示例代码。
from flask import Flask, request
import gc
app = Flask(__name__)
@app.route('/', methods=['POST'])
def hello():
gc.enable()
bigArr = []
for x in range(10000):
raw_data = request.get_data(cache=False)
bigArr.append(raw_data)
del raw_data
print('len(bigArr):' + str(len(bigArr)))
del bigArr
gc.collect()
return 'Hello World'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=80, debug=True)
Run Code Online (Sandbox Code Playgroud)
App引擎配置:运行时:python37 automatic_scaling:max_instances:1