Подтвердить что ты не робот

Запуск двигателя цикла asyncio с использованием внешнего плагина python

У меня есть установка uWSGI, которая работает в режиме императора. Вассалы используют разные версии python, поэтому я не могу использовать плагин python, встроенный в двоичный файл uWSGI.

Имея это, я хочу использовать механизм цикла asyncio в одном из вассалов, но я не могу понять, как запустить плагин asyncio и плагин greenlet, которые не встроены.

Что я пробовал до сих пор:

  • встраивание asyncio и greenlet в uWSGI, используя:

    CFLAGS="-I/usr/local/include/python3.4" make PYTHON=python3.4 asyncio
    

    построить uWSGI. Но это также будет включать плагин python, и я не хочу его.

  • Построение asyncio и uwsgi в качестве внешних плагинов с использованием:

    PYTHON=python3.4 ./uwsgi --build-plugin "plugins/greenlet greenlet"
    PYTHON=python3.4 ./uwsgi --build-plugin "plugins/greenlet greenlet"
    

    для создания плагинов, но плагины не смогут загружаться с помощью:

    /usr/local/lib/uwsgi/asyncio_plugin.so: undefined символ: вверх
      /usr/local/lib/uwsgi/greenlet _plugin.so: undefined символ: вверх

    в журналах.

    //Правка

    Я выяснил, что плагин python должен быть включен до настроек asyncio и greenlet в настройках, поэтому ошибка больше не происходит, но greenlet не работает, родитель в текущей родословной отсутствует.

Что еще я могу попытаться сделать? Я уверен, что внедрение asyncio и greenlet в плагине python3.4 будет работать, но я не знаю, как это сделать или если это возможно.

В настоящее время я использую второго императора со встроенными необходимыми плагинами, но я больше не могу использовать это решение из-за ограничений платформы.

4b9b3361