[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Прошу совета в выбора языка
Daniel
Всем привет.

Планирую создать сайт. Довольно крупный как по количеству функционала, так и по нагрузке, которая в перспективе планируется.

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

Основной акцент делается на музыку - пользователи смогут либо прослушивать композиции на сайте через флэш плеер, либо слушать в потоковом режиме (то есть потребуется ШаутКаст или что-то в этом роде). А прослушивание большого количества музыки это и большие нагрузки. Мощный сервер и "толстый" канал - это понятно, но нужно чтобы и сам сайт работал шустро, держа удар, так сказать.

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

Предполагается довольно активное использование Ajax (листинги страниц, поиск и т.д.)

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

Резюмируя, от языка потребуется: гибкость (возможность "безболезненного" внедрения новых возможностей и функционала, которые, безусловно будут появляться по мере роста сайта), надежность (максимальная защита от недоброжелателей) и скорость (с учётом больших нагрузок на сервер).

Собственно, по сабжу. Прошу совета в выборе языка программирования, на котором разумнее всего написать такой портал. Подойдёт ли PHP или лучше использовать Питон/Руби и другие?

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

Заранее спасибо.



Спустя 6 минут, 38 секунд (19.10.2010 - 15:04) vasa_c написал(а):
Все ваши проблемы относятся к архитектуре системы, а не к языку программирования.
Это всё можно сделать и на PHP и на питоне и на руби и ещё полно на чём.
Выбирайте то, что вам удобнее и привычнее.

Спустя 16 минут, 40 секунд (19.10.2010 - 15:21) aH6y написал(а):
Daniel
PHP, хоть его некоторые и недолюбливают считаю вполне хороший язык.

раз
два
три

Спустя 1 день, 22 часа, 28 минут, 6 секунд (21.10.2010 - 13:49) Daniel написал(а):
Хотелось бы услышать ещё мнения.

Спустя 1 час, 15 минут, 55 секунд (21.10.2010 - 15:05) phpdreamer написал(а):
если посещалка планируется больше 1-2к в день, пиши на питоне

Спустя 2 минуты, 21 секунда (21.10.2010 - 15:07) Daniel написал(а):
При хорошем стечении обстоятельств - конечно, намного больше тысячи-двух в день. От 50к и выше.

Почему именно на Питоне?

Спустя 1 день, 18 часов, 10 минут, 42 секунды (23.10.2010 - 09:18) htaccess написал(а):
Главное include и подобные функции не используйте, нагрузка очень высокая от них.

Спустя 4 минуты, 55 секунд (23.10.2010 - 09:23) kirik написал(а):
Цитата (phpdreamer @ 21.10.2010 - 07:05)
если посещалка планируется больше 1-2к в день, пиши на питоне

20k в сутки, apache+php+mysql+memcached - в легкую (Core™2 Duo E4500 2.20GHz, 4gb). Фэйсбук (и вконтакт) на php, ниче, стоят пока..

Спустя 3 часа, 23 минуты, 43 секунды (23.10.2010 - 12:47) vasa_c написал(а):
Цитата
Главное include и подобные функции не используйте, нагрузка очень высокая от них.

А? Чо?

Спустя 2 дня, 22 часа, 37 минут, 26 секунд (26.10.2010 - 11:24) aH6y написал(а):
kirik
Много сайтов написанны на php. Если хочеться писать сайт лучше и проще php считаю нет, но если хочеться поэксперементировать, то есть множество языков, cms систем и фреймворков...

Спустя 11 минут, 3 секунды (26.10.2010 - 11:35) Basili4 написал(а):
htaccess
Пруф Есть ?????? или это во дворе пацаны сказали ?

Спустя 7 часов, 7 минут (26.10.2010 - 18:42) kirik написал(а):
Цитата (vasa_c @ 23.10.2010 - 04:47)
А? Чо?

Цитата (Basili4 @ 26.10.2010 - 03:35)
Пруф Есть ??

Есть такая тема, тоже слышал не раз что жалуются. Zend фреймворк на высокой нагрузке потребляет немеренно из-за инклюдов. Его для продакшена даже специально в один файл засовывают.
Попробую пруф найти.

Спустя 1 час, 3 минуты, 11 секунд (26.10.2010 - 19:45) Paha4 написал(а):
Цитата (vasa_c @ 23.10.2010 - 09:47)
Цитата
Главное include и подобные функции не используйте, нагрузка очень высокая от них.

А? Чо?

+1

Спустя 1 час, 28 минут, 17 секунд (26.10.2010 - 21:14) sergeiss написал(а):
Цитата (kirik @ 26.10.2010 - 19:42)
Есть такая тема, тоже слышал не раз что жалуются.

Без замеров не поверю smile.gif И при условии, что все начальные условия будут чётко описаны.

Допустим, такая ситуация. Есть у меня общего кода тыщ на 10 строк. Если всё "впихнуть" в один файл, то так и будет 10 тысяч. Со всякими ИФами и другими хреновинами. А если покрошить на логические куски и инклудить, то тыщи 1,5-2-3 может и наберется. Остальные 7 или более строк в данном случае не будут обрабатываться вообще!
И с чего тут падать скорости?

Если же мы все эти 10 тысяч строк заинклудим и сравним с обработкой этих же строк, находящихся в одном файле... Может и получим падение скорости.

Спустя 1 час, 22 минуты, 2 секунды (26.10.2010 - 22:36) kirik написал(а):
Вот собственно решение проблемы. А если есть решение, значит и проблема существует.

UPD
Вот еще замеры интересные. Для тебя, sergeiss smile.gif

Спустя 2 минуты, 17 секунд (26.10.2010 - 22:38) Paha4 написал(а):
kirik не ищи решений, не найдешь проблему. laugh.gif

Спустя 5 минут, 49 секунд (26.10.2010 - 22:44) kirik написал(а):
Вот еще интересная статейка.

Цитата (Paha4 @ 26.10.2010 - 14:38)
kirik не ищи решений, не найдешь проблему.

Есть проблема - есть решение, скорее так smile.gif

Спустя 35 минут, 14 секунд (26.10.2010 - 23:19) vasa_c написал(а):
да, но заявления "не использовать include и подобные им функции" несколько натянутое

Спустя 3 часа, 18 минут, 31 секунда (27.10.2010 - 02:38) kirik написал(а):
Цитата (vasa_c @ 26.10.2010 - 15:19)
аявления "не использовать include и подобные им функции" несколько натянутое

Согласен.

Спустя 9 часов, 8 минут, 15 секунд (27.10.2010 - 11:46) sergeiss написал(а):
Цитата (kirik @ 26.10.2010 - 23:36)
UPD
Вот еще замеры интересные. Для тебя, sergeiss

Совершенно некорректный пример! smile.gif Тут просто собрали в кучу много информации. А если в зависимости от условий надо инклудить тот или иной файл? Тогда общий объем информации будет меньше!!! Иногда - в разы, а то и в десятки раз. Этого замера там нету. Впрочем, и нормального замера тоже нету...

По другой ссылке. Там в цикле инклуды одного и того же файла... Это то же самое, что и апдейты в цикле smile.gif Маразм, говорящий только о том, что автор текста изначально плохо очень плохо представлял себе, как вообще оптимизировать ПХП. В процессе работы он пришел к какому-то пониманию. Но его выводы вовсе не говорят о том, что, якобы, инклуд - это плохо. Инклуд плох в цикле, т.к. будет очень много дисковых операций. В примере - не менее 100. Но если один раз "подинклудить" файл с функциями и строить всю эту же хрень посредством функций, то будет примерно то же самое, что и через eval. ГДЕ эта проверка? Нету. Потому что автор даже не думал о ней. Хотя это наиболее естественный вариант построения скрипта (т.е., один раз подинклудить то, что надо, и потом уже вызывать эту хрень внутри цикла).

И в любом случае. Если мы говорим о разнице выполнения чего-то, получая в одном случае 10 секунд, а в другом 50 секунд, то это - проблема. А если разница измеряется в 10е-5, то больше только копий поломано будет, чем пользы.

Спустя 1 день, 17 часов, 36 минут, 26 секунд (29.10.2010 - 05:22) kirik написал(а):
Цитата (sergeiss @ 27.10.2010 - 03:46)
если в зависимости от условий надо инклудить тот или иной файл?

В этом посте ссылка, там как раз есть замеры с автолоадом - все равно один файл в 2 раза быстрее smile.gif

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

Цитата (sergeiss @ 27.10.2010 - 03:46)
Но если один раз "подинклудить" файл с функциями и строить всю эту же хрень посредством функций, то будет примерно то же самое, что и через eval. ГДЕ эта проверка?

Да там же не замеряется "грамотность программиста в построении логики проекта и инклюдов".. там измеряется имеено скорость инклюдов. И не важно с чем они и что там внутри инклюда будет происходить. Показывается именно слабое место php при больших нагрузках - медленные инклюды.

Спустя 5 часов, 8 минут, 46 секунд (29.10.2010 - 10:31) sergeiss написал(а):
Цитата (kirik @ 29.10.2010 - 06:22)
Показывается именно слабое место php при больших нагрузках - медленные инклюды.

Еще раз повторю: это не слабое место ПХП, а слабое место конкретного программиста smile.gif Потому что понятно, что если много (== сотни или тысячи) раз открываются файлы, то это будет, скорее всего, медленнее, чем всё запихнуть в один файл. Это и без замеров можно предположить.
И из этой частности (=== неверная логика построения начального скрипта!!!) делается НЕВЕРНЫЙ вывод о том, что "инклуды - ффтоку!".

Если же мы берём НОРМАЛЬНУЮ организацию скриптов, когда инклудов "в сумме" набегает 5-10, и при этом общая сумма загруженных (и только загруженных) скриптов В РАЗЫ МЕНЬШЕ, чем общий объем всех имеющихся скриптов, то тут еще большой вопрос, что будет быстрее.
Например (цифры "с потолка" smile.gif), всего объем скриптов 10 тыс. строк. А загружаем мы 4 скрипта, один начальный и 3 инклуда, всего на 2 тыс. строк. И чего? Это будет считаться неверным только потому, что у кого-то 1000 "кривых" инклудов проходит (в сумме) на 0.5 мс дольше? wink.gif ФФТОПКУ такие измерения! smile.gif

Спустя 15 часов, 28 минут, 33 секунды (30.10.2010 - 02:00) kirik написал(а):
Цитата (sergeiss @ 29.10.2010 - 02:31)
НЕВЕРНЫЙ вывод о том, что "инклуды - ффтоку!".

Да елки-палки smile.gif Никто не говорит: "фтопку иклюды". Это тоже самое что говорить "фтопку mysql, ибо она тормозит". И то и другое тормозит под нагрузкой. Если в случае с БД, при большом количестве запросов за реквест используют кэширование, то в случае с иклюдами используют объединение в один файл.

Спустя 15 часов, 20 минут, 49 секунд (30.10.2010 - 17:20) sergeiss написал(а):
Цитата (kirik @ 30.10.2010 - 03:00)
Да елки-палкиНикто не говорит: "фтопку иклюды"

Да ну? wink.gif

А вот это что? Появляется как раз такое утверждение
Цитата (htaccess @ 23.10.2010 - 10:18)
Главное include и подобные функции не используйте, нагрузка очень высокая от них.

а затем ты же утверждаешь следующее:
Цитата (kirik @ 26.10.2010 - 19:42)
Есть такая тема, тоже слышал не раз что жалуются.

и потом начинаешь вываливать ссылки, где некие тёмные личности smile.gif "учат", как жить без инклудов smile.gif Это всё вместе и есть утверждение "фтопку инклуды", с которым я и спорю.

Спустя 3 часа, 7 минут, 19 секунд (30.10.2010 - 20:28) kirik написал(а):
Цитата (sergeiss @ 30.10.2010 - 09:20)
а затем ты же утверждаешь следующее:
Цитата (kirik @ 26.10.2010 - 19:42)
Есть такая тема, тоже слышал не раз что жалуются.

Яж это как ответ Basili4'у написал. Так сказать привел пруфлинки, которые он просил smile.gif

Спустя 1 час, 49 минут, 43 секунды (30.10.2010 - 22:17) Basili4 написал(а):
kirik
Да спасибо. Прочел все по ссылкам тобой приведенным. Тесты с инклудом в цикле мне показались не адекватными.
Было полезно узнать про eaccelerator. Сейчас пробуй поставить

Спустя 1 день, 3 часа, 47 минут, 11 секунд (1.11.2010 - 03:05) kirik написал(а):
Цитата (Basili4 @ 30.10.2010 - 14:17)
Было полезно узнать про eaccelerator. Сейчас пробуй поставить

Эта штуковина невероятно увеличивет скорость обработки скриптов! Только я не помню что я использовал.. или eAcc то ли APC.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.