Потоковый код на mod_python

Я написал приложение Django, которое использует потоки Python для создания веб-паука, который работает как серия потоков для проверки ссылок.

Когда я запускаю это приложение с помощью тестового сервера django (встроенного), приложение работает нормально, и кажется, что потоки запускаются и останавливаются вовремя.

Однако при запуске приложения на Apache кажется, что потоки не запускаются и не выполняются (примерно через 80 секунд должно появиться обновление базы данных в очереди, и эти изменения не происходят).

Кто-нибудь знает, что мне здесь не хватает?

- Обновлено: у меня вопрос: как Apache обрабатывает многопоточные приложения, т.е. есть ли ограничение на количество потоков, которые могут быть запущены из одного приложения?

Любая помощь будет оценена по достоинству!

Как Django связан с Apache? mod_python? mod_wsgi? Mod_fastcgi?

S.Lott 13.12.2008 01:25

Пожалуйста, дополните свой вопрос соответствующими фактами.

S.Lott 13.12.2008 01:29
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
2
537
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Скорее всего, вам не хватает создания новых процессов. Apache не будет работать в отдельном процессе, а будет время от времени формировать новые процессы для запросов (в зависимости от дюжина или около того параметров конфигурации). Если вы запустите django в каждом процессе, они не будут совместно использовать память, и результаты, полученные в одном рабочем процессе, не будут видны другим. Кроме того, процесс Apache может завершиться (в режиме ожидания или по прошествии определенного времени), потеряв результаты в памяти.

Другие вопросы по теме