diff --git a/app.py b/app.py index 67b57f9d6..304644684 100644 --- a/app.py +++ b/app.py @@ -5,10 +5,16 @@ import io import os from route import app, socketio +from gevent.pywsgi import WSGIServer +from geventwebsocket.handler import WebSocketHandler + try: if __name__ == "__main__": PORT = 7200 HOST = '0.0.0.0' + http_server = WSGIServer( + (HOST, PORT), app, handler_class=WebSocketHandler) + http_server.serve_forever() socketio.run(app, host=HOST, port=PORT) except Exception as ex: print(ex) diff --git a/class/core/site_api.py b/class/core/site_api.py index 27d74b1cc..c737a98ba 100755 --- a/class/core/site_api.py +++ b/class/core/site_api.py @@ -8,14 +8,12 @@ import re import json import pwd import shutil -sys.path.append("/usr/local/lib/python2.7/site-packages") -sys.path.append("/usr/lib64/python2.7/site-packages") import psutil from flask import request -# request.packages.urllib3.disable_warnings() +# request.urllib3.disable_warnings() class site_api: diff --git a/requirements.txt b/requirements.txt index 9b1e3568f..b28b1bd20 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8,7 +8,7 @@ cache==1.0.3 flask-caching==1.10.1 gunicorn==19.9 gevent==21.1.2 -gevent-websocket +gevent-websocket==0.10.1 psutil==5.8.0 chardet==3.0.4 flask-sqlalchemy==2.3.2 diff --git a/route/__init__.py b/route/__init__.py index 58521f842..81987356f 100755 --- a/route/__init__.py +++ b/route/__init__.py @@ -67,6 +67,11 @@ from flask_socketio import SocketIO, emit, send socketio = SocketIO() socketio.init_app(app) +# from gevent.pywsgi import WSGIServer +# from geventwebsocket.handler import WebSocketHandler +# http_server = WSGIServer(('0.0.0.0', '7200'), app, +# handler_class=WebSocketHandler) +# http_server.serve_forever() # debug macosx dev if mw.isAppleSystem(): @@ -319,7 +324,7 @@ def get_input_data(data): @socketio.on('webssh') def webssh(msg): - # print 'webssh ...' + print('webssh ...') if not isLogined(): emit('server_response', {'data': '会话丢失,请重新登陆面板!\r\n'}) return None diff --git a/setting.py b/setting.py index 6df5482eb..50a40a3d0 100755 --- a/setting.py +++ b/setting.py @@ -9,10 +9,10 @@ sys.path.append(chdir + '/class/core') import mw -cmd = 'ls /usr/local/lib/ | grep python | cut -d \\ -f 1 | awk \'END {print}\'' -info = mw.execShell(cmd) -p = "/usr/local/lib/" + info[0].strip() + "/site-packages" -sys.path.append(p) +# cmd = 'ls /usr/local/lib/ | grep python | cut -d \\ -f 1 | awk \'END {print}\'' +# info = mw.execShell(cmd) +# p = "/usr/local/lib/" + info[0].strip() + "/site-packages" +# sys.path.append(p) import system_api cpu_info = system_api.system_api().getCpuInfo() @@ -38,7 +38,7 @@ threads = workers * 1 backlog = 512 reload = False daemon = True -#worker_class = 'geventwebsocket.gunicorn.workers.GeventWebSocketWorker' +worker_class = 'geventwebsocket.gunicorn.workers.GeventWebSocketWorker' timeout = 7200 keepalive = 60 preload_app = True diff --git a/task.py b/task.py index a87523e2d..23152f72d 100755 --- a/task.py +++ b/task.py @@ -19,10 +19,10 @@ import mw import db -cmd = 'ls /usr/local/lib/ | grep python | cut -d \\ -f 1 | awk \'END {print}\'' -info = mw.execShell(cmd) -p = "/usr/local/lib/" + info[0].strip() + "/site-packages" -sys.path.append(p) +# cmd = 'ls /usr/local/lib/ | grep python | cut -d \\ -f 1 | awk \'END {print}\'' +# info = mw.execShell(cmd) +# p = "/usr/local/lib/" + info[0].strip() + "/site-packages" +# sys.path.append(p) import psutil