Записи с тегом «python»
Web-разработка на Python. Ресурсы
13
Январь
2008
Рускоязычное сообщество Python-разработчиков расширется с каждым годом. В прошедшем году немало успеха принес проект Ивана — Конференция «Exception». Достаточно много информации регулярно «подливают» авторы блогов о Python и веб-разработке. Хотелось бы еще обратить внимание на сообщества, где можно задать вопросы и найти себе партнеров для работы в сфере python и web. Итак ссылки:
- Форумы по веб-разработке на python.com.ua — python.com.ua/forum .
- Форум на softwaremaniac.org по Django .
- Форумы на pydev.ru по веб — pydev.ru/forum.
- Гугл-группа по Django — django-russian .
- Гугл-группа по многим другим фреймворкам и библиотекам — webpython-ru .
Еще ссылки на блоги и более специфичные сайты по разработке на Python можно найти на pydev.ru/links.
категории: заметки
Обзор django-сайтов, которые у нас хостятся
25
Февраль
2007
Хотелось бы рассказать о наших достижениях на полях современных технологий по разработке сайтов.
На данный момент все больше вебмастеров и вебразработчиков интересуясь про поддержку хостинга django и rails приложений смелее разрабатывают на этой платформе новые сайты. И может они пока не блистают чем-то особым внешне, первые шаги навстречу новым технологиям делаются уверенно.
Сегодня мы сделаем краткий обзор нескольких сайтов, которые работают на базе веб-фреймворка Django. Вот список, с краткими пояснениями.
- vepr.com.ua - Сайт украинского внедорожника "ВЕПР". По словам разработчиков работа еще не доделана, но мы видим уже вполне функциональный и информативный сайт. Начали обзор с него, т.к. сам по себе проект очень интересный. Любой автолюбитель не без интереса посмотрит фото и видео галерею.
- rupy.ru - Сайт конференции разработчиков, использующих языки программирования Python и Ruby. Первая конференция прошла 10 февраля в Омске. В работе конференции принимали участие сорок восемь человек, в том числе гости из Новосибирска, Абакана, Екатеринбурга. Надеемся что конференция будет развиваться и привлекать новых людей в число разработчиков на Ruby и Python.
- fact.kiev.ua - Сайт известного киевского издательства "Факт", работающего с 1997 года. На сайте есть как общая информация про издательство, так и регулярно обновляемый каталог выпускаемой продукции с хорошим поиском и сортировкой. Также есть регулярно обновляемый раздел со статьями.
- kvant.net.ua - интернет-магазин с легким и простым интерфейсом.
- unt-systems.com - Сайт компании, занимающейся разработкой и реализацией новых технологий. Сайт компании еще наполняется, но уже вполне можно можно понять род деятельности и общую информацию о компании.
- gardi.com.ua - Сайт цветочной группы "Гарди", занимающей лидирующие позиции по производству тепличных цветов и горшечной продукции в Украине. Каталог продукции компании еще в стадии заполнения.
- dina.com.ua - Сайт предприятия по производству трикотажных изделий. На сайте есть довольно полный каталог продукции.
Вот наш скромный обзор и закончился, позже мы еще сделаем обзор уже rails-сайтов, которые у нас хостятся. Могу сказать еще, что в ближайшее будущее появятся еще новые сайты, сделанные с помощью Django, т.к. некоторые разработчики используют наш хостинг как платформу для разработки и мы уже наперед знаем общую информацию о проектах.
Так что ждем Ваших приложений! Пишите смелее на Ruby и Python .
категории: обзоры наш хостинг
Python-хостинг: издержки производства
20
Декабрь
2006
Хостинг python приложений имеет некоторые нюансы, не всегда удобные и приятные для хостера. Мы уже больше года предоставляем python-хостинг и столкнулись с рядом особенностей. Да, не все в нашем мире идеально :-)
Вся суть в способах связки python-приложения с веб-сервером. С тех пор как php прочно вошел и закрепился в среде веб-разработчиков, его постоянно стали сравнивать с другими языками программирования, применимыми для написания веб-приложений. В том числе сравнивали и производительность. Естественно скорость работы php-парсера была высока по сравнению с perl-кодом, работающим через cgi. Да и вообще cgi стандарт себя уже изживал.
Поэтому серверные веб-технологии пошли двумя основными направлениями в плане сопряжения программной части с веб-сервером:
- разработка всяких mod_* — встроенных интерпретаторов в веб-сервер;
- переботка стандарта cgi с целью увеличения производительности (FastCGI);
В тредовой (thread) модели python есть такое понятие как Interpreter Lock. Это когда тред блокирует интерпретатор на определенное время (пока не выполнит операцию, выполнит определенное кол-во инструкций или не пройдет таймаут). В принципе этот метод разделения ресурсов вполне хорошо работает на практике. Но в случаем с хостингом есть свои нюансы...
Представте вполне реальную картину. Веб сервер (Apache) с встроенным mod_python обслуживает 50 python-приложений. Если апач работает в тредовом режиме, тогда и mod_python тоже (апач настраивается на тредовый режим через опции компиляции, а модуль уже при сборке сам определяет в каком режиме работает апач и собирается в этом же режиме). Теперь сама ситуация: 50 веб-сайтов смогут вполне создать нагрузку 1-5 запросов в секунду, а на каждый процесс апача у нас приходится, например, по 25 тредов и одному интерпретатору python. Теперь вспомним про Interpreter Lock и прикинем какие могут быть ситуации. В общем говоря в тредовом режиме mod_python работает достаточно нестабильно. Выглядеть это будет как таймауты (код будет долго ждать разблокировки интерпретатора).
При работе в fork() режиме веб-сервера, проблема блокировок снимается (т.к. на каждое соединения клиента выделяется отдельный процесс веб-сервера и следовательно отдельный интерпретатор), но возникает проблема с экономией оперативной памяти. Т.к. каждый процесс потребляет значительное кол-во памяти (от 20 до 50 Мб ориентировочно).
Теперь вспомним про второй способ сопряжения приложенияс веб-сервером и подумаем о связке не встроенным способом — т.е. через популярный FastCGI. Веб-сервер в этом случае разгружается и никак практически не зависит от стабильности приложения. Т.е. конечный пользователь в любом случае получит или запрашиваемый результат или страницу с ошибкой, что намного лучше таймаута без каких либо объяснений. В этом случае сам веб-сервер может работать в тредовом режиме и экономить память. Но есть другая проблема. Каждое отдельное python-приложение будет запущено отдельным процессом и будет также потреблять память, что в итоге может дать не экономию, а большие затраты.
Интересно что приложение запущенное в режиме FastCGI может также работать в тредовом и fork() режимах, что соответственно влияет на потребление ресурсов. В тредовом режиме проблемы остаются те-же что и с mod_python. Только кол-во запросов к отдельному FastCGI-процессу в принципе сокращается, что дает меньшую вероятность таймаута в связи с блокировкой интерпретатора.
Подводя итог. Хочу отметить что идеального решения нет. Для каждых отдельных случаев нужно разрабатывать решения (чем мы в принципе и занимаемся). Просто имея эту информацию, Вы сможете сами представить при написании Вашего проекта в каком окружении его лучше запускать. Следовательно Вы сможете его правильно спроектировать и оптимизировать.
Желаем успехов в разработке!
категории: статьи
Exception #1 done!
26
Октябрь
2006
Конференция по Python в Киеве Exception #1 прошла успешно!
Было приятно познакомиться с некоторыми нашими клиентами в реале :-)
Презентация к моему докладу в виде pdf
Фото можно посмотреть в моем альбоме. Пока офциальная версия фоток не выложена.
Для интересующихся пишу ссылки по материалам моего доклада.
Frameworks:
ORM про который много говорилось SQLAlchemy
Мои персональные контакты: dobrych [at] gmail.com отзываюсь как на email так и на чат (google talk).
Про конференцию еще написал Алексей в своем блоге. Обсуждение на deveopers.org.ua
Два треда на PythAgora-ua — Материалы с Exception #01 и Exception #01 прошёл.
категории: заметки
-
теги:
- conference
- exception
- python
Апдейт Python до 2.5 на серверах
11
Октябрь
2006
категории: наш хостинг
TurboGears в наших рядах
26
Сентябрь
2006
Убедился! работает :-). Скачал из svn Turboblog и через 15 минут разбирательств с документацией движок был запущен. Почитал еще для развития про фреймвок — впечатления приятные, вызвал интерес, обязательно уделю время для личного его ковыряния.
категории: наш хостинг
-
теги:
- blog
- python
- turbogears
Блог переехал под управление Django!
18
Сентябрь
2006
Наш Хостинговый Блог работает теперь под управлением Django. Переход с wordpress был практически безболезненный, не считая конвертирования many-to-many sql-таблиц. Но это дело 20 минут. Самое трудное было написать саму логику и темплейты. Теперь наш блог выглядит как и весь сайт, в одном стиле. URL-ы все остались целыми, а некоторые редиректятся на новые.
Это далеко не последняя версия блога. Мы продолжаем работать над сайтом дальше!
категории: офтопик
-
теги:
- blog
- django
- mysql
- programming
- python
версии django
1
Август
2006
категории: наш хостинг
Django для разработчиков, обновление до trunk
2
Май
2006
категории: заметки наш хостинг
Обновление Python до 2.5 снапшота
26
Март
2006
echo "PYTHON_VERSION=python2.5" >> /etc/make.conf
категории: заметки
Ruby on Rails на хостинге
12
Март
2006
категории: заметки
И опять кеширование! - часть3
27
Февраль
2006
- Статья на английском "Doing HTTP Caching Right: Introducing httplib2"
- Перевод на русский от xmlhack.ru "Правильное HTTP-кэширование: httplib2"
- И сам Httplib2.
категории: статьи
Доработка девелоперского хостинга
21
Февраль
2006
категории: наш хостинг
Python для системного программирования
26
Декабрь
2005
категории: заметки
