Сайт HR-Portal.ru переехал на Drupal 7

Прислано: Valeratal

чт, 12/05/2011 - 18:04

Другие статьи по теме:

Сайт HR-Portal.ru переехал на Drupal 7

О сайте, многие из присутствующих слышали
Если коротко. Это более 40к нод, более 1м уников в месяц и 2м просмотров в месяц

Попытался вначале сам перевести, благо опыт апгрейда с 5-ки на 6-ку был.
Но, помучившись 3 дня, понял что не получается.
Обратился Виктору ( RxB), который собственно и проделал гигантский объем работы по данному апгрейду.
За что ему огромное спасибо.
Технические моменты он опишет сам, я же остановлюсь на некоторых наблюдениях и впечатлениях.

1. Бэкапы. Делать их надо постоянно. Понятно что до обновления. Но и после, перед каждым включением модуля под 7-ку (то есть апгрейда данных с 6-ой версии) хорошо бы иметь бэкап. Ибо включиться может по разному.

2. Наличие 6-ой версии. Это сильно помогает при ручном переносе. А также, устаревшая версия может выполнять ряд функций, которые вы к примеру не успели включить и настроить в 7-ке. Например, модуль simplenews. Прекрасно отправил рассылку находясь на 6-ой версии, в то время как я настраивал этот модуль на 7-ке. Как оказалось, проще экспортировать подписчиков из базы 6-ой версии и импортировать в 7-ою, чем разбираться, почему не включается то или иное поле. Это же правило думаю относится и к визуальным редакторам. Имхо проще их удалить а уже потом ставить и настраивать заново. Тем более при смене друпал-версии модуля, часто меняется и его архитектура.

3. Темизация. Я заранее подготовил тему, но, поскольку не проверял с контентом, уже при использовании на сайте обнаружились глюки (лишний пейджер). Поэтому в срочном порядке пришлось переделывать (делал из бартика. Бартик не слишком хорош из коробки с точки зрения SEO, но это легко исправляется).

4. Вьюсы. Как ни странно, практически все заработали. Донастраивал вьюсы только те, где я выводил полями тизеры, это и понятно, так как были известные изменения в API. А в остальном, заработало сразу. Интерфейс Views 3 не сильно изменился. Правда пока не нашел, где вставлять текст выше и ниже собственно выводимого.

Вот пожалуй и все. Готов ответить на вопросы.

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано RxB в чт, 12/05/2011 - 18:24.

Сайт попал ко мне в виде каши из шестёрочной БД и ошмётков Drupal7, Валера неоднократно пытался обновить сайт самостоятельно, но всё время спотыкался.

Например, в таблице с алиасами были семёрошные поля и прочие радости апгрейда не доведённого до конца.
Сначала я привёл таблицы в порядок. Попутно всплыла ещё одна детать: в некоторых таблицах отсутствовали индексы от шестёрки. Затрудняюсь сказать, удалил ли индекс апдейт на семёрку или они отпали когда сайт с Drupal 5 переводился на Drupal 6, но производительности сей факт не добавляет.

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

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

После наката ядра выяснилось что не мигрировали алиасы и аватары у пользователей мигрировали криво. Алиасы просто не работали, с аватарами была такая беда:
В пятом и шестом друпале, данные об аватарке хранятся просто в таблице users в поле picture, в таблицу files они не заносятся. В седьмом друпале же, поле users.picture хранит просто fid, т.е. первичный ключ к таблице file_managed. В результате каких-то кривостей, у некоторых пользователей аватара не стало вообще, у других вместо аватара установился случайный файл, были даже zip-архивы.
Проблема была решена следующим образом: был взят бекап шестой версии, оттуда взята таблица users, с седьмого (уже продакшен на тот момент) была взята таблица file_managed, туда я занёс данные из users шестой версии, потом первым запросом я внёс информацию об аватарах в file_managed, вторым обновил аватары в продакшен-таблице users, аватары заработали.

Следующая беда с приватными сообщениями, в результате не знаю чего, таблица pm_index оказалась пустая, для решения этой беды, взял аналогичную таблицу с шестого друпала, посмотрел hook_update() в модуле приватных сообщений. Подправил схему БД в таблице system, в модуле проверка стоит, и удалось сделать обновление приватных сообщений.

Следующая интересная проблема была с пейджером, он показывал абсолютно некорректные данные. Нода, на ней 4 коммента, пейджер показывает 64 страницы. Экспериментальным путём было выяснено, что чего-то у Валеры с темой не то, но он быстро перенёс свою тему на Bartik и мы не стали на этой проблеме заострять внимание.

Вот такое было вкратце обновление


Опубликовано Sentrashy@drupal.org в чт, 12/05/2011 - 18:07.

поздравляю ;)


Опубликовано q2_faith в чт, 12/05/2011 - 18:22.

кстати, что по поводу нагрузки на сервер после переезда на 7-ку?)


Опубликовано RxB в чт, 12/05/2011 - 18:25.

"q2_faith" написал(а):

кстати, что по поводу нагрузки на сервер после переезда на 7-ку?)

1. Она меньше
2. Из-за того что шестой друпал работал со слетевшими индексами семёрка хоть как будет легче, так как индексов не было в таблице comments и node


Опубликовано q2_faith в чт, 12/05/2011 - 18:40.

еще вопрос. что лучше, сделать сайт на 6-ке и осенью перевести на 7-ку, или делать на 7-ке на бета-версиях доп.модулей? речь не о визитке идет)


Опубликовано RxB в чт, 12/05/2011 - 18:44.

Делай сейчас на семёрке. Быстро не сделаешь всё равно.
Я даже знаю один крупный, реально крупный проект, социальной сети, который делается русскими программерами для запада, который решено было стартовать на семёрке


Опубликовано q2_faith в чт, 12/05/2011 - 18:52.

"RxB" написал(а):

большое спасибо)

"Valeratal" написал(а):

поздравляю с переездом) в блоге отписывайтесь об ощущениях от 7-ки)


Опубликовано Valeratal в чт, 12/05/2011 - 18:53.

"q2_faith" написал(а):

еще вопрос. что лучше, сделать сайт на 6-ке и осенью перевести на 7-ку, или делать на 7-ке на бета-версиях доп.модулей? речь не о визитке идет)

Вопрос в том, какие модули будут использоваться

По факту, "бета или не бета" это не вопрос. Вопрос "Работает-Не работает". К примеру симплнью я проверял только тестовую рассылку. Но вроде как страшных багов в исусах не пишут. У некоторых модулей авторы так и пишут. Версия для 7-ки есть, но не юзабельная пока.

Под 6-ку конечно проще сейчас делать, мануалы, модули, сниппеты - бери, да делай.

Захотите ли вообще осенью переходить - тоже вопрос, надо ли спешить?


Опубликовано Valeratal в чт, 12/05/2011 - 18:57.

"Valeratal" написал(а):

поздравляю с переездом) в блоге отписывайтесь об ощущениях от 7-ки)

Ну, ощущения то хорошие, много стало удобней. Думаю что начинать проект на 7-ке точно приятней.

Но, нехватает привычных вещей. Та же ссылка для отображения регионов у меня не показывается. Я не гордый, посмотрю в page.tpl.php :) Ну и по мелочи. Про вьюс я уже писал.


Опубликовано Ильич Рамирес Санчес в чт, 12/05/2011 - 19:23.

короче бекап для 6ой надо развернуть в БД рядышком чтобы допереносить ошметки данных .
(те же файлы для юзерей насоздавать)
эхехе. в субботу всех пошлю на йух и попробую кое что мигрировать таки чтобы ощутить вкус процесса =)

поздравляю с тем что отмучались :)


Опубликовано Valeratal в чт, 12/05/2011 - 19:44.

Спасибо. Желаю удачи


Опубликовано RayB в чт, 12/05/2011 - 20:55.

поздравляю с переездом :)
да... чувствую мой сушифан так навсегда и останется на 6-ке. Как представлю, во что может вылиться переезд на 7-ку, в голове только сразу: "чур меня, чур меня, не трогай!"


Опубликовано Anton1 в чт, 12/05/2011 - 21:15.

1. а в чем причина переезда именно сейчас? почему нельзя было подождать условно полгода-год пока 7ка стабилизируется?

2. не понял в чем выигрыш 7ки (этот вопрос двойной, и как пользователю и как админу сайта)

конечно поздравляю. дропед индексы это жесть. :)

PS: Я сейчас начал пару проектов с OG и как то даже не стал смотреть в сторону 7ки.


Опубликовано kyky в чт, 12/05/2011 - 22:42.

Валера, Виктор — молодцы! И ссылку на сайт ставь пожирнее.


Опубликовано Dan в чт, 12/05/2011 - 23:12.

Поздравляю!
Отдельный респект за смелость и проделанную работу :)


Опубликовано Andruxa в пт, 13/05/2011 - 06:30.

Поздравляю!


Опубликовано Tesmon в пт, 13/05/2011 - 07:01.

Поздравляю.


Опубликовано Valeratal в пт, 13/05/2011 - 08:38.

Отвечая на вопрос о том, почему так рано и вопрос о производительности
скажу, что переехать на 7-ку порекомендовал мой хостер. Свои сайты они на 7-ку уже перевели


Опубликовано Valeratal в пт, 13/05/2011 - 12:59.

Добавляю, что важно

?-ка не вешает сервер, не жрет непомерных ресурсов. Все работает нормально и штатно.


Опубликовано q2_faith в пт, 13/05/2011 - 13:25.

"Valeratal" написал(а):

?-ка не вешает сервер, не жрет непомерных ресурсов. Все работает нормально и штатно.

здесь вместо вопроса каждый должен подставить свою версию друпала)


Опубликовано sas@drupal.org в пт, 13/05/2011 - 13:30.

Мои поздравления.

"q2_faith" написал(а):

речь не о визитке идет)

D7


Опубликовано Crea в пт, 13/05/2011 - 13:42.

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

впрочем, маркетинг всегда одерживает победу над здравым смыслом, чему удивляться ))


Опубликовано Crea в пт, 13/05/2011 - 13:44.

Valeratal написал(а):

Но вроде как страшных багов в исусах не пишут.

"вроде как" - прекрасно характеризует ситуацию ))


Опубликовано Dan в пт, 13/05/2011 - 15:26.

"Crea" написал(а):

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

Потому что нет "такого момента". При наличии критической уязвимости команда безопасности ткнёт мэйнтенера носом в модуль в любом состоянии. Пример:  qviews, который никогда не был стабильным, и даже бэтой - только дев и альфа. Тем не менее - прикрыли (причина идиотская, но результат - на литццо).


Опубликовано Sentrashy@drupal.org в пт, 13/05/2011 - 15:28.

"Crea" написал(а):

агитаторов семерки

дык если все займут выжидательную позицию, то 8-ку можно вообще не увидеть...


Опубликовано Crea в пт, 13/05/2011 - 15:34.

Dan написал(а):

Потому что нет "такого момента".

Будем отрицать очевидное ? Ну ну

Dan написал(а):

При наличии критической уязвимости команда безопасности ткнёт мэйнтенера носом в модуль в любом состоянии.

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


Опубликовано Crea в пт, 13/05/2011 - 15:38.

Sentrashy@drupal.org написал(а):
"Crea" написал(а):

агитаторов семерки

дык если все займут выжидательную позицию, то 8-ку можно вообще не увидеть...

В том то и дело, что все не займут. Кому-то функционал 7-ки перевешивает все ее недостатки. У кого-то есть своя команда программистов, чтобы править баги (модулей и ядра) и исправлять уязвимости модулей самостоятельно.
А вот когда пиарят 7-ку как массовое решение - это вызывает удивление и насмешку.


Опубликовано q2_faith в пт, 13/05/2011 - 15:43.

"Crea" написал(а):

А вот когда пиарят 7-ку как массовое решение - это вызывает удивление и насмешку.

тут еще зависит от того кому пиарят) я как то новичкам 7-ку не советую, но при этом хочу именно на 7-ке сделать пару проектов


Опубликовано Sentrashy@drupal.org в пт, 13/05/2011 - 16:00.

Ну пиарят и пиарят, какая разница то. Те, кому это важно итак все понимают. penexe вон, как я понимаю на 6-ке клепает и не заморачивается вообще. Андед, судя по блогу и постам тут наоборот активно юзает семерку. Каждому свое.

А с точки зрения новичков..тут уж не вам судить ;) А вот я могу сказать, что если начинать более менее серьезно изучать друпал, то можно и с седьмой версии начинать. Т.к. времени на то, что бы проникнуться хоть чуть-чуть уходит не мало. А это важнее модулей. В общем к тому времени как у новичков дело дойдет но багов, не работующих модулей, ситуация в семерке не сильно будет отличаться от шестой версии. Тем более, что для 7-ки, допустим есть модули не имеющие аналогов в шестой версии - это в противовес не портированным модулям. Ну это все имхо конечно ;)


Опубликовано q2_faith в пт, 13/05/2011 - 16:09.

"Sentrashy@drupal.org" написал(а):

А вот я могу сказать, что если начинать более менее серьезно изучать друпал, то можно и с седьмой версии начинать.

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


Опубликовано Sentrashy@drupal.org в пт, 13/05/2011 - 16:18.

"q2_faith" написал(а):

а в тоже время по 6-ке гораздо больше инфы

тем полезней начинать учить с семерки ;) посмотрите на товарищей которые учили 4-5 вообще практически без инфы ;)) Ниньзя епт ;)


Опубликовано q2_faith в пт, 13/05/2011 - 16:20.

"Sentrashy@drupal.org" написал(а):

тем полезней начинать учить с семерки ;) посмотрите на товарищей которые учили 4-5 вообще практически без инфы ;)) Ниньзя епт ;)

не надо утрировать)


Опубликовано Ильич Рамирес Санчес в пт, 13/05/2011 - 16:21.

"Dan" написал(а):

Потому что нет "такого момента". При наличии критической уязвимости команда безопасности ткнёт мэйнтенера носом в модуль в любом состоянии. Пример: qviews, который никогда не был стабильным, и даже бэтой - только дев и альфа. Тем не менее - прикрыли (причина идиотская, но результат - на литццо).

Пример http://drupal.org/node/987922
есть такой момент что дохрена багов в этом вашем стабильном релизе семерки не исправлены.

Есть проблемы с JS на 8 осле.
Много чего есть. такое ощущение что большинство разрабов пишут под мозиллу исключительно.


Опубликовано q2_faith в пт, 13/05/2011 - 16:22.

"Ильич Рамирес Санчес" написал(а):

такое ощущение что большинство разрабов пишут под мозиллу исключительно.

наверно их сотрудники)


Опубликовано Sentrashy@drupal.org в пт, 13/05/2011 - 16:23.

"Ильич Рамирес Санчес" написал(а):

большинство разрабов пишут под мозиллу исключительно.

а вот максим бы сказал, что под сафари )


Опубликовано Valeratal в пт, 13/05/2011 - 16:36.

всегда надо смотреть на имеющийся функционал
Например, тагаделик нет до сих пор. Кому то это критично, кто то может сделать сниппетом, кто то нарисует от руки, кому то все равно

OG - там кажется тоже темный лес

Про коммерц - я думаю все знают. Еще работать и работать

Поэтому, надо исходить из проекта, от своих ЗУНов и наличия времени.

Для новичков, запускающих свои проекты, я бы рекомендовал все таки 7-ку (при наличи конечно критичных модулей), так как главное на сайте это контент и юзеры. Эти 2 "сущности" (да простит меня Энди) являются определяющими. И для них, в 7-ке в принципе все есть


Опубликовано Ильич Рамирес Санчес в пт, 13/05/2011 - 17:06.

"Valeratal" написал(а):

тагаделик

ждем блин.

"Valeratal" написал(а):

OG - там кажется тоже темный лес

мы пользуем og. и в 7ке он сырой + кардинальная переделка там. не ясно как данные переносить.

еще сыра довольно капча и еще модули. я у себя на блоге еще зимой делал обзор.
http://brainstorm.name/blog/migration-from-drupal6-to-drupal7-awaiting-b...
и ситуация с той поры не сильно изменилась. все в бетах и в альфах. читай - вести себя будет как бог на душу положит.
и резко переносить все с 6ки... стремновато. свой блог я на выходных либо перенесу, либо отработаю процедуру переноса. не знаю, на сыром коде жить не хочется. и да. гонка за релизами малость напрягает.


Опубликовано Sentrashy@drupal.org в пт, 13/05/2011 - 17:11.

"Ильич Рамирес Санчес" написал(а):

гонка за релизами малость напрягает.

ниче, поддадутся тенденции браузеров и начнут клепать мажорные версии каждые 4 месяца ;))


Опубликовано Dan в пт, 13/05/2011 - 17:42.

"Sentrashy@drupal.org" написал(а):

ниче, поддадутся тенденции браузеров и начнут клепать мажорные версии каждые 4 месяца ;))

Ну вон, каноникал клепает убунты каждые 6 месяцев - каждый релиз сырой вхлам, ещё месяц другой лучше сидеть на предыдущем. План губит качество )


Опубликовано iHappy в пт, 13/05/2011 - 17:48.

"Dan" написал(а):

Ну вон, каноникал клепает убунты каждые 6 месяцев - каждый релиз сырой вхлам, ещё месяц другой лучше сидеть на предыдущем. План губит качество )

ну вот все кричат, сырой, сырой, а я блин везучий походу, стабильно работает хоть ногой бей.
Везунчик наверно)))


Опубликовано Dan в пт, 13/05/2011 - 18:23.

"Crea" написал(а):

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

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

"iHappy" написал(а):

ну вот все кричат, сырой, сырой, а я блин везучий походу, стабильно работает хоть ногой бей.
Везунчик наверно)))

Проблемы в основном с железом - недодастоточное тестирование, поэтому либо работает либо нет :)


Опубликовано Crea в пт, 13/05/2011 - 19:05.

Dan написал(а):

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

Слово "все", кардинально меняющее смысл, вы добавили самостоятельно, поэтому сами и ищите свой пруф :)

Dan написал(а):

А репорт уязвимостей от команды объясняется просто - по правилам, если ты обнаружил проблемы с безопасностью, то надо не багрепорт модулю писать, а в "службу безопасности", там её рассмотрят и "примут меры".

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


Опубликовано Dan в пт, 13/05/2011 - 20:03.

"Crea" написал(а):

Слово "все", кардинально меняющее смысл, вы добавили самостоятельно, поэтому сами и ищите свой пруф :)

Тогда хотелось бы услышать продолжение фразы:

"Crea" написал(а):

все, что не стейбл, не поддерживается командой безопасности Drupal, и может содержать большое(ее) кол-во уязвимостей.

а всё, что стэйбл?...


Опубликовано Crea в пт, 13/05/2011 - 20:43.

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


Опубликовано Dan в сб, 14/05/2011 - 00:32.

С такой формулировкой соглашусь. Однако каково кол-во этих уязвимостей? Очевидно, что при обнаружении очередной бреши, она латается мэйнтейнером и в dev-модуле. То есть что сидеть на деве, что на стэйбле, на котором дыра ещё не обнаружена - разница не большая (но она есть, согласен). Плюс не стоит говорить, что дыры ищутся и находятся только в стабильных версиях. Да, security team, скорее всего, смотрит только стэйбл, но и другие разработчики (которые находят больше дыр) тоже мониторит модули и не только стабильные версии. Другое дело, что тот же друпал не будет верещать об уязвимости, если установлен dev-модуль и сам разработчик об этом может не узнать, если не подписан на securiry-news. Или модуль update вообще может быть отключен. Но это уже из разряда ССЗБ, таких разработчиков как-то и не жалко :)

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


Опубликовано Ильич Рамирес Санчес в сб, 14/05/2011 - 01:02.

"Dan" написал(а):

т.к. апдейты БД пишуться только для релизов

не всегда =)
а работать он может перестать.
таки да. потому -dev и -beta сам не пользую.

ща делаю одну охренительную фичу для своей  advimage, например и я бы не стал сам пользовать -dev версию. это то что собирается из git раз в сутки. и ща в данный момент один модуль из набора там поломан :)
это текущая ветка.

а те кто в танке пусть насласждаются -beta и -dev.


Опубликовано Dan в сб, 14/05/2011 - 01:12.

"Ильич Рамирес Санчес" написал(а):

не всегда =)

Согласен. Я имел ввиду, что надеятся на это не стоит )


Опубликовано Valeratal в сб, 14/05/2011 - 04:33.

ну вот, жди теперь 7.1. чтобы косяк в форуме поправить


Опубликовано restyler в ср, 18/05/2011 - 08:48.

"Ильич Рамирес Санчес" написал(а):

"Valeratal" написал(а):
тагаделик
ждем блин.

а я из гитхаба утянул, и нормально вроде работает.


Опубликовано Valeratal в ср, 18/05/2011 - 13:45.

надо глянуть

(по сути, для старого проекта, можно теги нарисовать вообще вручную, пересчитывая еженедельно) :)


Новое на сайте