Сломанный пул процессов: исполнитель пула процессов внутри приложения django, размещенного на Apache.Apache

Ответить Пред. темаСлед. тема
Anonymous
 Сломанный пул процессов: исполнитель пула процессов внутри приложения django, размещенного на Apache.

Сообщение Anonymous »

У меня есть приложение Django, которое я хотел бы разместить на своем сервере Apache. Вариант использования приложения — получение запросов и выполнение операций с интенсивными вычислениями над набором заданных входных данных. Чтобы распараллелить свои вычисления, я использовал исполнитель Future.ProcessPool в ядре приложения django. Распараллеливание незаменимо для моего приложения.
Хотя описанная выше настройка работает локально, я сталкиваюсь с ошибкой BrokenProcessPool, особенно когда приложение размещено на сервере Apache. Попробовал несколько трюков в некоторых связанных вопросах (здесь), но у меня нет четкого представления, что происходит и как это решить. Может кто-нибудь помочь мне понять:
  • Технически, в чем заключается основная проблема в моей настройке?
  • Как мне это сделать? решить эту проблему, не меняя существенно существующую структуру (Django, Apache)?
  • Можете ли вы предоставить мне ссылки на идеальный рабочий процесс, используемый в некоторых известных веб-приложениях для обработки данных или графики, использующих Django и параллельные приложения? вычисления. Это может помочь мне пересмотреть мою текущую структуру.
Ниже приведена некоторая важная информация
  • views.py выглядит

    Код: Выделить всё

     import core.ray_trace
    
    def get_heatmap(request):
    list_of_inputs = request.POST.get('inputs')
    # parallel computation of list happens inside raytrace
    response_data = ray_trace(list_of_inputs)
    return JsonResponse(response_data, status=200)
    
  • Конфигурация Apache для моего проекта

    Код: Выделить всё

       WSGIDaemonProcess sp python-path=/home/ubuntu/_/spaceplanning python-home=/home/ubuntu/_/venv processes=3 threads=10 request-timeout=600
    WSGIProcessGroup sp
    WSGIScriptAlias / /home/ubuntu/_/sp/spAPI/wsgi.py
    
  • Код: Выделить всё

    ps aux | grep apache
    Изображение
  • Сообщение об ошибке и обратная трассировка: concurrent.futures.process.BrokenProcessPool: процесс в пуле процессов был внезапно завершен во время выполнения или ожидания будущего.
    Изображение
Я читал, что переключение моего фреймворка на сервер Celery или Gunicorn может помочь, но, честно говоря, я не мог уловить тонкости предоставленных деталей.
Наконец, есть ли хорошие услуги веб-хостинга обслуживание приложений для обработки данных и графических приложений, которые я мог бы использовать, чтобы освободить себя от хостинга?

Подробнее здесь: https://stackoverflow.com/questions/786 ... -on-apache
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Apache»