Я ищу:
Веб-студию
Закрыть
E-mail:
Пароль:
Забыли пароль?
В каталоге проекта: 2 866 веб-студий, 393 CMS, 68 625 сайтов.
РегистрацияCMS MagazineАвторизация
CMS Magazine CMS Magazine

Дмитрий Дулепов о проекте «Первый латвийский семейный портал»


  подробнее

Об авторе

Имя: Дмитрий Дулепов

Отправить сообщение

О проекте

http://www.calis.lv/ Сайт: http://www.calis.lv/
CMS: TYPO3
тИЦ сайта: 20
Посещаемость: > >18 000
Страниц: > >12 000

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

Вопросы-ответы

Какое Вы имеете отношение к проекту?

Дмитрий Дулепов:

Разработчик, оптимизатор, администратор

В двух словах - о CMS

Дмитрий Дулепов:

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

На какой версии CMS работает проект?

Дмитрий Дулепов:

TYPO3 4.2.12

Был ли выбор между несколькими системами? Если да, то какими были критерии выбора, кто рассматривался в качестве "кандидатов"?

Дмитрий Дулепов:

В какой–то момент рассматривалась Joomla, но она не поддерживает древовидную структуру страниц. Кроме того, ни одна система не предоставляла гибкости в управлении контентом, подобной имеющейся TYPO3. Большое внимание уделялось безопасности, тут TYPO3 оказался вне конкуренции. Кроме того, в сообщество разработчиков TYPO3 входит много профессиональных программистов (TYPO3 является наиболее популярной CMS в Германии, Австрии, Швейцарии и многих других странах Европы). Рассматривались и прочие свободные CMS, но они и близко не подходили по требованиям. Платные CMS не рассматривались, т.к. проект на тот момент не был коммерческим.

Сколько времени заняла разработка сайта?

Дмитрий Дулепов:

Первая версия – примерно месяц. Сайт регулярно обновляется, в среднем на создание новой функциональности требуется от двух недель до полугода.

Сколько человек занимаются поддержкой сайта в настоящее время?

Дмитрий Дулепов:

Двое.

Можете выделить какие-то особенности CMS, которые были (есть) особенно полезны/вредны для Вашего проекта (при разработке, поддержке)?

Дмитрий Дулепов:

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

Насколько был достаточен стандартный функционал? Пришлось ли дорабатывать ядро, ставить плагины, дорабатывать функционал?

Дмитрий Дулепов:

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

Какая задача в проекте была самой интересной с технической точки зрения и как CMS помогла ее решить?

Дмитрий Дулепов:

Самой интересной была задача создания первой страницы, похожей на iGoogle, а также создания пользовательского центра с почтой, фотогалереями, личными блогами и прочими элементами социальности.

(этот и следующий вопросы - от Валерия Романчева, typo3.ru) На каком железе работает работает портал?

Дмитрий Дулепов:

1U SuperMicro server двухлетней давности (не помню модель), Intel chipset, 2 x QuadCore Intel Xeon CPU 4MB cache, 16GB RAM, 2 x SATA HDD (RAID 0 + LVM), 2 x Gigabit Ethernet.

Сервер работает под управлением openSuSE Linux 11.2. Выбор именно этого дистрибутива основан на том, что за SuSE стоит Novell, который использует этот дистрибутив как основу для SuSE Linux Enterprise Server, а значит заинтересован в стабильности и безопасности дистрибутива.

Бывают ли проблемы с пиками посещаемости?

Дмитрий Дулепов:

Нет. /proc/loadavg редко превышает 3, обычно держится около 1.5. Свободно около 5GB памяти. Из 8GB swap на данный момент используется 788MB.

Применялись ли какие-либо специальные меры по повышению производительности (установка nginx для отдачи статики, настройка кеширования в статические файлы nc_staticfilecache и т. п.)?

Дмитрий Дулепов:

Пробовал varnish, но часто возникали HTTP 500, в результате отказался. Работает чистый Apache. nc_staticfilecache не применяется. Когда он изначально был разработан, у него были проблемы с параметризироваными страницам (cHash) и некешируемыи блоками на странице (USER_INT). В общем, он и не нужен. Используется предварительное сжатие всех статических файлов (css, js) и их отдача в этом виде без участия mod_deflate. Этим занимается специальный скрипт, который знает как перестроить все файлы при их обновлении. Клиентское кеширование используется очень агрессивно: все картинки, flash, css и js кешируются на клиенте на долгое время вперёд.

Есть желание убрать статические файлы куда-нибудь на CDN, но останавливает отсутствие интеграции подобного решения со стороны TYPO3, а делать NFS не хочется. 

Для ускорения PHP используется APC. Ранее использовался Eaccelerator, он немного быстрее, но менее стабилен (несколько раз в неделю выдавал segmentation fault). С переходом на APC падения сервера прекратились. В APC используется только shared memory, дисковый кэш не используется вообще.

На сервере значительно оптимизирован MySQL. Индексы настраивались индивидуально, исходя из типичных запросов (по логу). Каждый запрос в собственных расширениях анализируется через EXPLAIN на реальных данных, и индексы настраиваются соответствено.

Установлен mod_security, который отсекает многих ботов (в т.ч. спамерских и сканирующих на "дыры" в безопасности). Таких – огромное колличество, их отсечение уменьшает нагрузку. На сервер закрыт доступ по HTTP из Китая и некоторых других азиатских стран, т.к. оттуда идёт только "мусорный" траффик.

Какое программное обеспечение, помимо TYPO3, используется на портале? Как оно интегрировано с TYPO3?

Дмитрий Дулепов:

На данный момент есть собственноручно написаные форумы, которые сильно оптимизированы по производительности и широко используют AJAX-запросы для уменьшения трафика и увеличения удобства пользователей (например, набирать текст при переходе между страницами топика без потерь). В них также есть
специфичные для портала сервисы, типа получения кодов доступа к платным возможностям по SMS. 

Сейчас разрабатываются новые возможности, используется Python + Django. Для этого написан TYPO3-Django bridge, который передаёт сессии из TYPO3 в Django. Они пока не выложены на сервер. Будет использоваться memcached для всего, что только возможно. Всё остальное реализовано через TYPO3.

Django был взят потому, что скорость разработки на нём значительно выше, чем на PHP + TYPO3.

Используются ли "рабочие области" (Workspaces) при редактировании на портале?

Дмитрий Дулепов:

Нет. В этой функциональности слишком много ошибок, чтобы её использовать. Обычно новые страницы делаются спрятаными, редактируются, а потом открываются для просмотра. Да и мусора в базе остаётся слишком много после workspaces.

Есть ли такие расширения, которые изначально задумывались и разрабатывались для портала, а потом были опубликованы в репозитории расширений TYPO3?

Дмитрий Дулепов:

Mnogosearch изначально разработан для портала, потом был выпущен в TER. Многие исправления в RealURL и TemplaVoila пришли с этого портала. Кроме того, большинство моих изменений в TYPO3 core тоже появились, благодаря порталу.

О CMS Magazine

Читаю время от времени, проект интересный.

Оценка:     0  

Комментарии (8)

Денис Туренко      Создано: 21.6.2010, 17:31          

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

Дмитрий Дулепов      Создано: 23.6.2010, 22:18          

Термин "модули" в TYPO3 используется в другом значении, чем в прочих системах. В TYPO3 используется темин "расширения" (extensions). Расширений в TYPO3 более 4000, можно найти очень много всего: галереи, новости, статистики, FAQ, опросники и т.д. Для нашего сайты мы делали специализированные расширения, типа календаря беременности или книги рецептов.

TYPO3 сделан так, что систему переписывать не надо. Существует множество точек подключения внутри системы, которые расширения могут использовать для получения информации о происходящем в системе или модификации поведения. Например, можно получать уведомления о создании, изменении или удалении любых данных и что–то делать с этим.

Туренко Денис      Создано: 24.6.2010, 9:45          

Спасибо Дмитрий, и еще вопросик (вы очень понятно объясняете), а подключение расширений происходит стандартным способом - кидаем папочку в папку с расширениями или нужно что-то прописывать? И по поводу точек по изменению состояния системы (изменение или удалении данных), в них врезаются в каком-то одном файле (заготовленный интерфейс) или это возможность в принципе есть в каждом файле ядра и если нужно, можно дописать в них код?

Дмитрий Дулепов      Создано: 24.6.2010, 10:34          

Всё даже проще. В TYPO3 есть специальный модуль (модуль – это часть административного интерфейса, отвечающая за определённое взаимодействие с пользователем), который этим занимается. Например, Вам нужна галерея. Вводите gallery, и extension manager показывает Вам список существующих расширений с этим ключевым словом. Если какое–то понравилось, нажимаете плюсик около него, TYPO3 импортирует его из центрального репозитория, создаёт базу данных и прописывает конфигурацию. Можете идти и вставляет галерею на страницу smile.gif

Dmitri Pisarev      Создано: 2.7.2010, 16:12          

Дмитрий, скажите, а почему Вы решили расширять сайт на Django, a не на Flow3/extbase?

Дмитрий Дулепов      Создано: 13.7.2010, 15:41          

FLOW3 в течение 4-х лет находится в стадии разработки, конца ей не видно. Делать что–то для работающего проекта на "сером" материале слишком рискованно. К тому же у FLOW3 есть проблемы с производительностью.

Про Extbase – у него ORM слишком тупой и медленный. У Django получается быстрее как разработка, так и работа. К тому же, множество готовых компонентов можно найти в Интернете. А для Extbase даже руководства толкового нет.

Dmitri Pisarev      Создано: 13.7.2010, 16:19          

Я с Вами и согласен и нет.
FLOW3 в альфе находится пока не будет больших проектов выполненных на нем. Думаю к осени что-то тут сдвинется.
Из личного опыта удалось уже 3 проекта сдать на extbase, опыт в основном положительный. Код хорошо документирован, по этому большая часть вопросов относительно документации снимаются.
С джанго сравнить не могу, т.к. не работал на ней, но разрабатывать на extbase одно удовольствие.
Искренне надеюсь, что flow3 ждет хорошее будущее.

Дмитрий Дулепов      Создано: 13.7.2010, 16:22          

Желаю успеха smile.gif

Полужирный
Курсив
Подчеркнутый
Вставить изображение
Вставить код
Обновить
Реклама:

Необходима разработка сайта? Создаём эффективные интернет-решения.
Интернет-агентство "Artus". Разработка и поддержка интернет-проектов, реклама в Интернете.

Партнер

Каталог русских web 2.0 сайтов, социальных сетей и сервисов. Ежедневные обзоры.

Интервью

Интервью с Артемом Овечкиным, директором по развитию агентства интернет-маркетинга «Matik»

Статьи

Иван Василевич

Оформление текста на сайте – то, на что «кладут» веб-разработчики, оптимизаторы и в конечном итоге – клиенты (в крайнем случае выделяя текст «красненьким»), потому что им не предоставили никаких нормальных способов расставлять акценты в тексте, не портя дизайн. Для устранения этой проблемы была создана технология и новая профессия «Вебстальщик» - специалист, который меняет дизайн текста на уже готовом сайте средствами CSS!

CMS Magazine CMS Magazine
RSS-подписка

Copyright © 2006-2009 CMS Magazine  Правовая информация
CMS Magazine – электронное средство массовой информации. Эл № ФС 77-32705.

CMS Magazine CMS Magazine
CMS Magazine