LINUX.ORG.RU

А как сейчас на python форумы пишут?


0

1

Щас будет очень дебильный вопрос.

Опыта в веб-разработке и проектировании веб-сервисов мало, ограничивается бэкэндовыми демонами на C++. Вот, например хочу я свой форум для забавы на питоне написать... Люблю делать велосипеды, хочу форум с хитрой системой карм, виртуальных денег и блекджеков.

А каким путём нужно идти, чтобы в итоге код работал быстрее всего? Я понимаю, есть и компилируемый-в-бинарь-питон и 100500 вяских альтернативных интерпретаторов, а производительность сайта зависит и от баз и от выдачи статики и от архитектуры в целом и вообще от провайдера - это всё понятно. А как, всё-таки, лучше делать? Вот я знаю, есть nginx - он типа самый быстрый и у него есть FastCGI.

1) А будет ли кошерно написать на питоне некий «демон», который будет долго жить на FastCGI-соединении, держать коннекты к базе, держать проинициализированные структуры и за счёт этого быстро отвечать? Какая есть для этого FastCGI-либа?

2) А написанный на Python FastCGI-«демон» не будет заметно тормознее аналога на C++, если всё равно нужно лазить в базу?

3) Знаю про cherrypy. Но она принимает сразу HTTP-запросы, не FastCGI. Наверное используют сразу много демонов cherrypy, сидящих параллельно за балансером?

1-ый уровень. Берешь wsgi-сервер, делать синтетические тесты, а потом дрочишь на тот, который оказался быстрее. Причино-следственные связи тут не важны. Главное подрочить.

2-ой уровень. Модно делать все асинхронным. Берешь короче Twisted и делаешь все на Deffered-ах. Работать оно будет с той же скоростью, что и обычный Django-сайт.

3-ий уровень. Компиляешь PyPy 10 часов, и запускаешь все, что накодил в нем.

Сам я в этом не разбираюсь... Но думаю, это сейчас самые модные тренды в питоно-разработке.

trupiko
()

А каким путём нужно идти, чтобы в итоге код работал быстрее всего?

напиши на яве, srsly. Или еще на какой скале. Питон имхо - это вообще в принципе никак не быстро.

arkhnchul ★★★
()

Скорость языка не является узким местом почти нигде. Всё упирается в скорость БД и кривость кода. Для аппсервера посмотри uwsgi.

Shtsh ★★★★
()

Склонируй ЛОР. Правда он на жабке.

anonymous
()
Ответ на: комментарий от arkhnchul

Питон имхо - это вообще в принципе никак не быстро.

Примерно 100 запросов в секунду на одно ядро проца если руки прямые. На данной задаче, думаю, и все 500 выжать можно.

true_admin ★★★★★
()

Сагалаев что-то пилил на питоне, с поэтессами и преферансом. Это было давно, python не был так распространён как сейчас, поэтому финал оказался немного предсказуем.

Но если ты хочешь быть одним из тех, кто запилит наконец-то нормальный форум на питоне, то не стесняйся поинтересоваться у него, что там да как :)

shrub ★★★★★
()
Последнее исправление: shrub (всего исправлений: 1)

Берешь Scala, Play framework, Akka, Postgresql и клепаешь свой проект. А python, не, не надо python.

anonymous
()

Судя по вопросам, у тебя был тяжелый сексуальный опыт с FastCGI. Возможно в извращенной форме.

Братюнь, расслабься, питон нагибать не будет. Просто пройди какой-нибудь тутор, django или flask.

baverman ★★★
()

Используй кеширование во все поля. Все остальное не нужно. И так да, форум у тебя упрется в БД в первую очередь. Все остальное - хрень.

dizza ★★★★★
()

Лол, преждевременная оптимизация — корень всех бед. Нахрен тебе, чтобы было быстро, если твой форум будут посещать полторы калеки? Пиши тогда ни Си, что уж там.

anonymous
()
Ответ на: комментарий от bismi

И ты наверное подумал что python за FastCGI буде быстрее :)

bismi
()

Для питона разработан свой интерфейс для взаимодействия с web сервером - WSGI (расширение FastCGI)

Все современные питон фреймворки его поддерживают.

Самый заоптимизированный по производительности фреймворк для питона Pyramid http://allframeworks.ru/blog/624.html

Без базы и темплейта держит 3000 запросов в секунду

Так что бери Pyramid, и не думай о производительности

bismi
()
Ответ на: комментарий от uhbif19

+1.

Но педон не бери, бери эрланг он 1 миллион коннектов держит и байтики пиу пиу пиу

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.