Comments 4
Это бы уже был не XML-RPC, значит, помимо все прочего, пришлось бы переписывать еще и клиентов. Такой вариант был не желателен.
Признаюсь, я не понял ваш ответ снова. XML-RPC - это протокол, причем, довольно высокоуровневый. gunicorn вообще не в курсе что там происходит выше HTTP.
Как я понял, ваша задача была обеспечить работу клиентов по этому протоколу, но однопоточный SimpleXMLRPCServer тормозил при нескольких клиентах.
Посмотрим документацию:
Servers can either be free standing, using
SimpleXMLRPCServer
, or embedded in a CGI environment, usingCGIXMLRPCRequestHandler
.
Вам не подошел CGIXMLRPCRequestHandler? CGI-приложение и Apache - просто и давно известно.
Я, например, не люблю апач, мне нравится связка nginx+gunicorn. Превратить любое приложение в WSGI - дело пяти минут. По сути, там одна функция перегружается только.
Прошу меня извинить, не сразу уяснил вопрос. Ваше решение больше уже архитектурное (nginx+gunicorn), мне же хотелось решить только инструментом Python.
Но благодаря Вам у меня возникло желание исследовать ещё и архитектурные варианты, может даже вторую часть напишу, как минимум уже два варианта имеется)
XML-RPC: Ускоряем работу сервера, пользуясь только стандартной библиотекой Python