bsyomov

bsyomov
Рейтинг
31
Регистрация
25.01.2012
osavin86:
трафик в 1кк в день и бесплатная cms по дефолту
цирк...
помните анекдот про напильник?

А что плохого по вашему в бесплатной CMS? Платная, а кстати какая, чем-то лучше будет? =)

При большой нагрузке напильник нужен будет для любой....

По сути вопроса:

Джумлу бы я не рассматривал бы - будут проблемы и при разработке, и большие проблемы при поддержке...

На Drupal делают высоко нагруженные проекты, есть даже соответствующий usergroup на drupal.org.

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

CentOS вполне хороший выбор, ещё можно было бы рассмотреть Debian.

Из BSD в принципе можно использовать FreeBSD, но зачем?

Поясню немного почему "сама идея - жесть"... =)

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

Т.е. способ идентификации пользователя по ip адресу катастрофически не надёжен - толку в такой проверке нет, и она только создаст лишние проблемы.

ModX это конечно CMF, если говорить о Revo - внутри довольно развитый фреймворк xPDO, в принципе, можно сделать довольно сложное приложение, но есть много проблем:

-Фреймворк весьма неудобный, и не слишком функциональный, если сравнивать с любым популярным php фреймворком, типа СI, Yii, Kohana, Symfony.

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

-Документация довольно слабая, если рассматривать с точки зрения разработки чего-то сложного, особенно на основе того же xPDO.

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

-Сейчас можно хранить код снаружи, и для этого даже не обязательно писать расширения, но изначально предполагается хранение большей части кода в БД, что является ОЧЕНЬ плохой практикой.

-Структура шаблонов/снипетов/чанков это ад. Сразу видно, что создатель изначально дизайнер, а не программист. Для быстрого прототипирования и натягивания дизайна удобно, в продакшене - тихий ужас.

Мои соображения по поводу выбора:

Если разрабатывать сайт самому, то не стоит использовать ModX, если сайт не совсем элементарный, но и в этом случае стоит подумать о выборе другого инструмента...

Evo довольно убог, Revo не слишком хорошо документирован, довольно неудобный фреймворк в основе, не слишком качественные расширения в массе.

Если заказывать сайт, то тоже вряд-ли стоит:

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

Плохо с поддерживаемостью - всё в куче, код в шаблонах.

Профессиональные разработчики, скорее всего, выберут что-нибудь более удобное. И, соотвественно, сайт будет, с немалой долей вероятности, не тем, что вам нужно, или не совсем тем, или не так быстро и просто... =)

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

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

sqlinj:
на сервере (centos) были разбиты файлы, таким образом split -b 2G file
теперь на винде нужно склеить, как я понял, тотал к, и прочее не поможет.

Копировать в один файл, выбрать дописать в конец(append). У большинства таких программ есть такая опция.

Можно в командной строке(cmd):

copy /b file1+file2+...+fileN target_file

И, на всякий случай, если файлов более 2х, в вашем случае, раздел должен быть не fat32, из-за лимита на размер файла.

Batch API вам в помощь...

forest25:
Как будут себя вести кешеры в случае с вариантом 2, но apache в режиме mpm-itk?

Также, как prefork, основное отличие ITK в смене пользователя, после разбора запроса.

forest25:
И насчет первого варианта: я так понимаю в данном случае порождается дополнительный процесс php, кешер сохарняет опкод, затем скрипт отрабатывает и процесс завершается.
Кому в таком случае будет нужен кешированный опкод? И куда он девается?

Процесс не порождается на каждый запрос а живёт определённое конфигурацией количество запросов... Это время кеш актуален.

foxi:
в реальной жизни главный тормоз сайта - это запросы к базе, которые могут обрабатываться и пару секунд, над ними и нужно думать как кешировать, а кеширование пхп кода - это ускорение на 0,000001 сек, что на том же вордпресе с генерацией страницы в 1-2 сек будет не заметно )))

Вы пририсовали очень много лишних нулей. На разбор php скрипта необходимы ресурсы процессора. А на его считывание ещё и неспешный дисковый ввод/вывод - без кешера он не будет гарантированно лежать в кеше файловой системы, к тому же обработанный скрипт куда компактнее. Всё это не только занимает определённое время, но и кушает ресурсы, которые могли бы быть потрачены на обработку запросов mysql. И в условиях наличия конкурентных запросов это вполне себе заметно.

Кеширование же данных на уровне приложения или веб сервера это уже совсем другое дело. Одно другого не заменит. Кстати, APC умеет и данные пользовательские кешировать, и работает в этой ипостаси быстрее того же memcached...

foxi:
Лучше ограничиться Apache + mod_php + nginx
APC|XCache больше глюков добавят, чем принесут заметной пользы.

Кто вам такую глупость сказал?

Кеширование опкода заметно прибавляет производительность. На скриптах без сложных запросов к БД, файлового ввода/вывода, интенсивных вычислений разница может быть даже на порядок. И в любом случае она будет.

forest25:
Вот к примеру:
1) Apache + mod_php + APC|XCache

В этом случае будет один общий кеш.

forest25:

2) Apache + mod_fcgid + APC|XCache

Будет отдельный кеш у каждого процесса php.

Это конечно бОльшие накладные расходы, но всё равно может быть полезно, при разумном размере кеша конечно.

Есть ещё модуль mod_fastcgi, который порождает один или более процессов php(maxClassProcesses за это отвечает), и его дочерние процессы в нужном количестве(PHP_FCGI_CHILDREN). Вот тут у всех дочерних процессов будет общий кеш, и количество отдельных кешей будет задано количеством мастер процессов(например по одному на сайт или пользователя), и если всё правильно настроить не будет оверхеда по потреблению памяти, просто вместо одного общего кеша будет несколько отдельных такого же суммарного размера.

Ещё есть php-fpm, который нынче официальный fastcgi менеджер php. И там тоже проблемы с кешерами опкода нет.

Собственно именно его и надо бы использовать - он наиболее функционален... Для работы с ним Apache нужен будет proxy_fcgi_module.

Кстати, apache + mod_php, при прочих равных, несколько более производительное решение - там нет необходимости во взаимодействии по fastcgi, и соответственно немного меньше оверхед. И если нет необходимости разделения прав, то это наилучший вариант если смотреть с точки зрения времени выполнения скриптов.

aftamat4ik:
вот этот код
if(soundManager.canPlayLink('/sites/all/modules/rmodule/audio/Zwitter.mp3')){

alert("да");
}else alert("нет");

Выдает Нет. Хотя файл есть. В то самой директории :( странно... В чем же ошибка то?

А вы научитесь отлаживать Javascript, и не будут возникать такие вопросы. =)

Если зайти к вам на сайт, и заглянуть в консоль, можно увидеть вот такую ошибку:


Uncaught Error: soundManager: Fatal: JavaScript file build "V2.97a.20120318" does not match Flash SWF build "V2.97a.20121104" at http://trucontent.org/sites/all/modules/rmodule/player/soundmanager2.swf. Ensure both are up-to-date.

Думаю, это поможет вам решить проблему. Ну и конечно дело-то тут не в Drupal. =)

Pavel_:
Интересно, можно ли задать стиль шаблона вывода картинки в процентах?
Например: ширина в анонсе 20%, в статье 70%

Т.е. в ноде руками это делаеццо, а вот автоматически?

Если имеется в виду вёрстка шаблона, то из большой картинки можно сделать маленькую в процентах, передав пользователю заведомо большую и свойствами css задав ей размер на стороне пользователя, и собственно к Drupal это отношения имеет мало...

А вот отмасштабировать миниатюру генерируемую на стороне сервера в процентах естественно нельзя - нет привязки (от чего проценты-то брать?) и возможности перегружать и нарезать картинку при изменении размеров окна, например...

Всего: 315