Кажется, что он отличается. Один очень медленный, а anthor очень быстрый. Просто потому, что [import demo]? Зачем?web.py заблокирован при использовании multiprocess-lib
Медленный один:
[demo_app.py]
import web
urls = ('/(.*)', 'demo.hello')
app = web.application(urls, globals())
application = app.wsgifunc()
if __name__ == "__main__":
app.run()
[demo.py]
from multiprocessing import Manager
tmp = Manager()
class hello:
def GET(self,name):
return 'Hello world'
[работать с uwsgi] uwsgi -d demo.log - http 127.0.0.1:8893 -w demo_app -p 1
[curl http://127.0.0.1: 8893 /] очень медленно
OK (быстро) один:
[demo_app.py]
import web
import demo
urls = ('/(.*)', 'demo.hello')
app = web.application(urls, globals())
application = app.wsgifunc()
if __name__ == "__main__":
app.run()
[demo.py]
from multiprocessing import Manager
tmp = Manager()
class hello:
def GET(self,name):
return 'Hello world'
[работать с uwsgi] uwsgi - d demo.log --http 127.0.0.1:8893 -w demo_app -p 1
[завиток быстро
---------------------
В 'медленных' один, я Трассирование (Linux) подпроцесс (uwsgi forked). После того, как uwsgi будет писать контент, он будет epoll_wait 60s. Параметры epoll_event в функции epoll_wait пусты. посмотрите на рис. ниже: strace log
Первый запрос очень медленный, и второй раз в порядке. – lee
Существует еще один вопрос: если remove (tmp = Manager()), медленнее становится быстро. Код Thist (tmp = Manager()) стоит более 30 секунд, я не думаю, что это имеет смысл. – lee