[bigdata-053] flask开发和高并发部署
发布时间:2020-12-14 03:17:18 所属栏目:大数据 来源:网络整理
导读:Flask的web server,可以以python3 myflask.py的方式运行,但这种方式不能用于生产环境,不稳定,比如说,每隔十几分钟,有一定概率遇到连接超时无返回的情况。 有各种方式部署。比较简单的方式,就是用gevent部署。 1. pip3 install gevent 2. myflask.py如
Flask的web server,可以以python3 myflask.py的方式运行,但这种方式不能用于生产环境,不稳定,比如说,每隔十几分钟,有一定概率遇到连接超时无返回的情况。 有各种方式部署。比较简单的方式,就是用gevent部署。 1. pip3 install gevent 2. myflask.py如下 #!/usr/bin/env python3 #! -*- coding:utf-8 -*- from flask import Flask,jsonify from gevent.wsgi import WSGIServer app = Flask(__name__) #这里的json使用中文key @app.route("/",methods=['GET','POST']) def index(): return jsonify({'ret':'hi'}) WSGIServer(('0.0.0.0',8889),app).serve_forever() 3. 测试代码如下: #!/usr/bin/env python3 #! -*- coding:utf-8 -*- import urllib import json import time url = 'http://localhost:6666/' while True: t1 = time.time() print(t1) res = json.loads(urllib.request.urlopen(url,timeout=10).read().decode('utf-8')) dt = time.time() - t1 print("耗时"+"%.2f秒" % dt) print(res) time.sleep(0.01)4. 但是,这并不能保证每一次请求都能返回结果。必需设置timeout,失败后要重试。web http服务不是100%就能得到结果的。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |