|
@@ -1,3 +1,6 @@
|
|
|
+from gevent import monkey
|
|
|
+monkey.patch_all()
|
|
|
+
|
|
|
import json
|
|
|
import time
|
|
|
|
|
@@ -10,8 +13,11 @@ from video_recall import PoolRecall
|
|
|
from db_helper import RedisHelper
|
|
|
import traceback
|
|
|
import ast
|
|
|
-
|
|
|
+from gevent.pywsgi import WSGIServer
|
|
|
+from multiprocessing import cpu_count, Process
|
|
|
+#from werkzeug.middleware.profiler import ProfilerMiddleware
|
|
|
app = Flask(__name__)
|
|
|
+#app.wsgi_app = ProfilerMiddleware(app.wsgi_app)
|
|
|
log_ = Log()
|
|
|
config_ = set_config()
|
|
|
|
|
@@ -94,7 +100,6 @@ def app_video_hot_list():
|
|
|
try:
|
|
|
page_size= 10
|
|
|
request_data = request.get_data()
|
|
|
- print(request_data)
|
|
|
request_data = json.loads(request_data)
|
|
|
page = request_data.get('page', 0)
|
|
|
log_.info('request data: {}'.format(request_data))
|
|
@@ -123,6 +128,30 @@ def app_video_hot_list():
|
|
|
result = {'code': -1, 'message': 'fail'}
|
|
|
return json.dumps(result)
|
|
|
|
|
|
+def serve_forever(ip='0.0.0.0', port=5000):
|
|
|
+ pywsgi.WSGIServer((ip, port), app).serve_forever()
|
|
|
+
|
|
|
+
|
|
|
+def apprun(MULTI_PROCESS=True, ip='0.0.0.0', port=5000):
|
|
|
+ if MULTI_PROCESS == False:
|
|
|
+ WSGIServer((ip, port), app).serve_forever()
|
|
|
+ else:
|
|
|
+ mulserver = WSGIServer((ip, port), app)
|
|
|
+ mulserver.start()
|
|
|
+
|
|
|
+ def server_forever():
|
|
|
+ mulserver.start_accepting()
|
|
|
+ mulserver._stop_event.wait()
|
|
|
+
|
|
|
+ #for i in range(cpu_count()):
|
|
|
+ for i in range(4):
|
|
|
+ p = Process(target=server_forever)
|
|
|
+ p.start()
|
|
|
+
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
- app.run()
|
|
|
+
|
|
|
+ #app.run()
|
|
|
+ #server = pywsgi.WSGIServer(('0.0.0.0', 5000), app)
|
|
|
+ #server.serve_forever()
|
|
|
+ apprun()
|