CherryPy для панели управления веб-хостингом - PullRequest
1 голос
/ 01 декабря 2008

В течение достаточно долгого времени я хотел запустить проект для домашних животных, который будет нацелен на время стать панелью управления веб-хостинга, но в основном ориентированной на хостинг Python - то есть я хотел бы, чтобы пользователи могли сгенерировать / запустить Django / другие фреймворки проектов прямо с панели. Я, казалось, имел нашел идеальный инструмент для создания моего приложения с его помощью: CherryPy.

Это позволило бы мне сделать это так, как я хочу, создав приложение с собственным HTTP / HTTPS-сервер, а также все на моем любимом языке программирования.

Но теперь возникает новый вопрос: поскольку CherryPy является многопоточным сервером, это будет правильным для такого рода задач?

Там будет много трудоемких задач, так что если один из блоки задач, остальные пользователи, пытающиеся получить доступ к другим страницам, быть оставленным в ожидании и в конечном итоге получить тайм-аут.

Я полагаю, что такого рода проблемы не возникнут на сервере на базе вилки.

Что бы вы посоветовали?

1 Ответ

1 голос
/ 01 декабря 2008

Серверы с «резьбой» и «на основе Fork» эквивалентны. «Многопоточный» сервер имеет несколько потоков выполнения, и если один из них блокируется, то другие продолжаются. На «Fork» сервере выполняется несколько процессов, и если один из них блокируется, то другие продолжаются. Единственное отличие состоит в том, что по умолчанию многопоточные серверы разделяют память между потоками, по умолчанию «основанные на вилке» не разделяют память.

Еще один момент - модуль «подпроцесс» не является потокобезопасным, поэтому, если вы попытаетесь использовать его из CherryPy, вы получите странные ошибки. (Это Python Bug 1731717 )

...