Commit 34de75cb authored by ibuler's avatar ibuler

[Update] 修改eventlet

parent 6e153a1a
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
import os
from flask_socketio import SocketIO from flask_socketio import SocketIO
from flask import Flask from flask import Flask
...@@ -17,8 +18,10 @@ socket_io = SocketIO() ...@@ -17,8 +18,10 @@ socket_io = SocketIO()
socket_io.on_namespace(ProxyNamespace('/ssh')) socket_io.on_namespace(ProxyNamespace('/ssh'))
socket_io.on_namespace(ElfinderNamespace('/elfinder')) socket_io.on_namespace(ElfinderNamespace('/elfinder'))
# init_kwargs = {'async_mode': 'threading'} if os.environ.get('USE_EVENTLET', '1') == '1':
init_kwargs = {'async_mode': 'eventlet'} init_kwargs = {'async_mode': 'eventlet'}
else:
init_kwargs = {'async_mode': 'threading'}
socket_io.init_app(app, **init_kwargs), socket_io.init_app(app, **init_kwargs),
socket_io.on_error_default(lambda x: logger.exception(x)) socket_io.on_error_default(lambda x: logger.exception(x))
......
...@@ -304,8 +304,8 @@ class InteractiveServer: ...@@ -304,8 +304,8 @@ class InteractiveServer:
) )
def display_page_bottom_prompt(self): def display_page_bottom_prompt(self):
msg = wr(_('Tips: Enter the asset ID and log directly into the asset.')) msg = wr(_('Tips: Enter the asset ID and log directly into the asset.'), before=1)
self.client.send(msg, before=1) self.client.send(msg)
prompt_page_up = _("Page up: P/p") prompt_page_up = _("Page up: P/p")
prompt_page_down = _("Page down: Enter|N/n") prompt_page_down = _("Page down: Enter|N/n")
prompt_back = _("BACK: b/q") prompt_back = _("BACK: b/q")
......
...@@ -92,7 +92,7 @@ class SSHServer: ...@@ -92,7 +92,7 @@ class SSHServer:
t.daemon = True t.daemon = True
t.start() t.start()
transport.close() transport.close()
except paramiko.SSHException: except (paramiko.SSHException, sock.timeout):
logger.warning("SSH negotiation failed") logger.warning("SSH negotiation failed")
except EOFError as e: except EOFError as e:
logger.warning("Handle EOF Error: {}".format(e)) logger.warning("Handle EOF Error: {}".format(e))
......
#!/usr/bin/env python3 #!/usr/bin/env python3
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
import os
#import eventlet if os.environ.get('USE_EVENTLET', '1') == '1':
#from eventlet.debug import hub_prevent_multiple_readers import eventlet
#eventlet.monkey_patch() from eventlet.debug import hub_prevent_multiple_readers
#hub_prevent_multiple_readers(False) eventlet.monkey_patch()
hub_prevent_multiple_readers(False)
print("Use eventlet dispatch")
else:
print("Use local threading")
import os
import sys import sys
import argparse import argparse
import time import time
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment