Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Выбор CMS, позиционирование TYPO3, бизнес веб-разработки > Вопросы выбора CMS

Ответ
 
Опции темы Опции просмотра
Старый 31.01.2012, 21:40   #1
Lucifer
Senior Member
 
Аватар для Lucifer
 
Регистрация: 01.07.2008
Сообщений: 392
По умолчанию

ну почему же?
page = PAGE
page.userFunc = tx_вашплагин
и все... пили, что хочется. и от самого тайпо может остаться какой то минимум.
Lucifer вне форума   Ответить с цитированием
Старый 01.02.2012, 11:54   #2
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

Это как раз расширение и дополнение стандартных возможностей. А тут скорее проблема в том что даже страница с кодом
Код:
page = PAGE
page.10 = TEXT
будет генерится (в том числе из кэша) минимум 150-200ms (выделенный сервер), и это время уходит просто на загрузку кода ядра и основных экстов. Если грубо прикинуть, то на 16 ядрах при самых лучших условиях эта страница загрузит сервер на 100% уже при 16 * 5 = 80 одновременных обращениях от пользователей. А если одновременно обращатся будет 300 или 1000 ?
dmartynenko вне форума   Ответить с цитированием
Старый 01.02.2012, 15:30   #3
Илья
Senior Member
 
Регистрация: 15.02.2006
Адрес: Петербург
Сообщений: 462
По умолчанию

Цитата:
Сообщение от dmartynenko Посмотреть сообщение
будет генерится (в том числе из кэша) минимум 150-200ms (выделенный сервер), и это время уходит просто на загрузку кода ядра и основных экстов. Если грубо прикинуть, то на 16 ядрах при самых лучших условиях эта страница загрузит сервер на 100% уже при 16 * 5 = 80 одновременных обращениях от пользователей. А если одновременно обращатся будет 300 или 1000 ?
Думаю что в ваших расчетах ошибка...
Почему считаете как 16*5?
Реально 16 ядерный сервер потянет на несколько порядков больше пользователей
Илья вне форума   Ответить с цитированием
Старый 01.02.2012, 15:41   #4
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

Расчеты очень грубые, так как не учитывается реальное обращение в БД, ФС, сети и влияние этих факторов. Но примерно так: если 1 страница генерится 200ms (1/5 секунды), то одно ядро за секунду сможет сгенерить только 5 страниц. Значит 16 ядер смогут выдать не более 16 * 5 = 80 страниц в секунду.

Я писал именно про число одновременных запросов. Это не то же самое что число онлайн пользователей. Может быть 1000 пользователей онлайн, но каждый открывает страницу и просматривает ее скажем не менее 30 секунд. В таком случае число одновременных запросов от 1000 пользователей будет в среднем намного меньше 1000, опять же грубо 1000 / 30 = 30 страниц в секунду.

PS: Что-то мы далеко вышли за рамки исходного вопроса.
dmartynenko вне форума   Ответить с цитированием
Старый 05.02.2012, 11:17   #5
Lucifer
Senior Member
 
Аватар для Lucifer
 
Регистрация: 01.07.2008
Сообщений: 392
По умолчанию

Цитата:
Сообщение от dmartynenko Посмотреть сообщение
Это как раз расширение и дополнение стандартных возможностей. А тут скорее проблема в том что даже страница с кодом
Код:
page = PAGE
page.10 = TEXT
будет генерится (в том числе из кэша) минимум 150-200ms (выделенный сервер), и это время уходит просто на загрузку кода ядра и основных экстов. Если грубо прикинуть, то на 16 ядрах при самых лучших условиях эта страница загрузит сервер на 100% уже при 16 * 5 = 80 одновременных обращениях от пользователей. А если одновременно обращатся будет 300 или 1000 ?
А напильничком не, ваще никак? 150-200 - это пожалуй typo3 на апаче с дефолтным конфигом. nginx+phpfpm+apc - результаты намного более интересные.
А расчеты типа "одновременно 300-1000" - уж слишком заоблачные. Если считать "одновременно" за "в секудну", даже если это пиковая нагрузка, то подобные проекты не живут на одном сервере и на CMS-CMF. Да и по пальцам посчитать их можно.
Lucifer вне форума   Ответить с цитированием
Старый 05.02.2012, 22:56   #6
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

А причем здесь Апач ? Это время parsetime, которое считает сам TYPO3 - запускает счетчик при вызове index.php, и выводит в конец кода страницы в конце index.php. Накладные расходы до и после вызова index.php это дополнительное время. Да все это измерение сферического коня в вакууме. На каждом проекте свои уникальные задачи (проблемы) и свои уникальные их решения (см. пример про www.calis.lv).

Я, например, APC не пробовал использовать. Только memcached. Хотя пару лет назад видел пост про сравнение скорости обращения (чтение-запись) APC vs memcached vs MySQL MEMORY TABLE. Так вот последние два были близки по скорости (но в MySQL то нормальный поиск есть), а APC до 10 раз был быстрее из за прямого доступа, минуя TCP.
dmartynenko вне форума   Ответить с цитированием
Старый 05.02.2012, 23:14   #7
Lucifer
Senior Member
 
Аватар для Lucifer
 
Регистрация: 01.07.2008
Сообщений: 392
По умолчанию

апач очень даже при чем. если брать apache + modulephp, то для каждого запуска надо поднять весь пхп со всеми модулями. да и сам по себе апач работает медленнее, и ест больше памяти. если пхп работает в режиме php-fpm, то все уже поднято.
мемкеш сравнивать с апц не совсем корректно. так как мемкеш - это просто кейвелью хранилище. апц же, кроме хранения отдельных ключей (в этой роли я его не пробовал) еще и самостоятельно кеширует код (аля eAccelerator), и, судя по ab, дает неплохие результаты )
Lucifer вне форума   Ответить с цитированием
Старый 06.02.2012, 12:14   #8
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

Уважаемый Lucifer! Вы не внимательны к моим словам.
Цитата:
Сообщение от Lucifer Посмотреть сообщение
то для каждого запуска надо поднять весь пхп со всеми модулями...
Но это никак не влияет на время parsetime, который считает сам TYPO3. Поднятие php и прочие вещи происходят до вызова index.php, или вы не согласны с этим?

Цитата:
Сообщение от Lucifer Посмотреть сообщение
мемкеш сравнивать с апц не совсем корректно
Необходимость кэша PHP кода для TYPO3 очевидна, без него parsetime вырастет в 5-10 раз. Но тут сравнивается именно задача того же рода - когда APC выступает в роли key-value хранилища (http://www.php.net/manual/ru/ref.apc.php). Причем основные функции практически идентичны таковым в memcached.
dmartynenko вне форума   Ответить с цитированием
Старый 06.02.2012, 12:27   #9
Lucifer
Senior Member
 
Аватар для Lucifer
 
Регистрация: 01.07.2008
Сообщений: 392
По умолчанию

Возможно я чего то не понимаю...
А разве нам важен именно parsetime, считаемый в typo3, или же нам все таки интересна реальная производительность?

Для использования мемкеша или апц в качестве key-value хранилища надо все таки допиливать систему внутреннего кешировани typo3, и модулей. А это дополнительное время на разработку. А что бы поставить апц просто для кеширования кода требуется 5 минут. При том прирост производительности он дает существенный.
Lucifer вне форума   Ответить с цитированием
Старый 22.03.2012, 13:57   #10
jettero
Senior Member
 
Регистрация: 24.06.2006
Сообщений: 143
По умолчанию

Цитата:
Сообщение от dmartynenko Посмотреть сообщение
Это как раз расширение и дополнение стандартных возможностей. А тут скорее проблема в том что даже страница с кодом
Код:
page = PAGE
page.10 = TEXT
будет генерится (в том числе из кэша) минимум 150-200ms (выделенный сервер), и это время уходит просто на загрузку кода ядра и основных экстов. Если грубо прикинуть, то на 16 ядрах при самых лучших условиях эта страница загрузит сервер на 100% уже при 16 * 5 = 80 одновременных обращениях от пользователей. А если одновременно обращатся будет 300 или 1000 ?
Наверно сервер слабенький, у меня на одном сайте-соцсети, страница с 5-6 USER_INT плагинами на ней, генерится за 70-100 мс (если и страница и плагины из кэша, в INT плагинах сделан внутренний кэш).
При этом, на сайте довольно сложные и большие шаблоны - вся генерация контента сделана исключительно на TS шаблонах, с добавлением самописных контент объектов, для работы с формами, сложными структурами в БД итп, общий объем TS кода где-то 10-20к строк.
Так что не все так страшно. Правда сервер не слабый - 2 проца, 8 ядер и дофига RAM, но memcached сейчас отключен из-за разных багов при работе с ним через caching framework, так что пока кэш целиком в mysql лежит.

Последний раз редактировалось jettero; 22.03.2012 в 14:12
jettero вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Каталог с большим количеством товара hotsnake Вопросы выбора CMS 1 09.01.2009 16:27


Часовой пояс GMT +4, время: 19:55.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория