Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Обновление большого сайта на Yii2?
Форумы портала PHP.SU » » CMS и фреймворки » Обновление большого сайта на Yii2?

Страниц (1): [1]
 

1. vlom - 11 Августа, 2015 - 13:23:16 - перейти к сообщению
Суть такова есть достаточно крупный медиа проект, запускался и был написан 10 дет назад и первая версия написана практически полностью процедурно. Потом в году эдак в 2010 начали обновлять и переносить функционал на yii1. Сейчас принято решение доделывать сайт и внедрять новый функционал, по пути редизайн. Встает вопрос что сайт надо переделывать с учетом современных реалий и технологий, соответственно выкинув нафиг старую часть, переписав все предварительно на yii2. В силу того что разом переписать весь функционал не получится, хотелось бы оставить старую часть рабочей и потихоньку накатывать новый функционал на yii2.
Самая загвоздка заключается в том что старая часть сайта работает на php5.3, да еще и со включенными глобалсами (не ругайтесь писал не я). Дак вот каким образом можно произвести апдейт этого всего? Учитывая что yii2 работает на 5.4
2. DeepVarvar - 11 Августа, 2015 - 13:46:11 - перейти к сообщению
Медленно но верно, писать ВСЕ локально, пол года, год.
А когда будет готов и оттестирован новый, тогда и полностью внедрять.
Иначе ты только увеличишь число костылей и запутаешься где новый, а где старый.
Ибо проблема в инструменте, который устарел, или был не верно выбран изначально.
3. vlom - 11 Августа, 2015 - 13:54:15 - перейти к сообщению
DeepVarvar пишет:
Ибо проблема в инструменте, который устарел, или был не верно выбран изначально.

Выбрано было все правильно, но времена иду, технологии совершенствуются и логично что старый сайт просто морально устарел
DeepVarvar пишет:
Иначе ты только увеличишь число костылей и запутаешься где новый, а где старый.

Там и сейчас черт ногу сломит. несколько дней разбирался что работает на yii, а что еще с лохматых времен
4. Мелкий - 11 Августа, 2015 - 14:12:53 - перейти к сообщению
Если целиком - слишком много, значит надо делить на части поменьше.
Как запустить в принципе - собрать и поднять рядом второй fpm с другим root. И сразу актуальной версии.
Дальше мне в голову приходят такие варианты:
0) делить на nginx по request_uri: такие-то запросы отдавать старому fpm, такие-то - новому
Придётся что-то придумывать с шареными данными - авторизацией, например.
1) заменять функционал бекенда. Написать на новом сайте api для внутренних нужд, заменять на старом сайте весь функционал на вызовы api, пока не станет возможным заменить целиком фронтенд.
В обоих вариантах не поддавайтесь на соблазн использовать единую кодовую базу - решительно запрещайте какое-то взаимодействие на уровне PHP-кода. Иначе старые костыли так и переползут.
5. DeepVarvar - 11 Августа, 2015 - 14:15:38 - перейти к сообщению
Мелкий, мне кажется в таком варианте будет понаписано перевалочных плюшек намного больше, чем вообще без них.
И есть же еще -- работает не трожь.
Но это все конечно ИМХО, там всеравно надо по месту смотреть и принимать конкретное решение.
Так то мы тут все советчики-безответчики ))
6. Мелкий - 11 Августа, 2015 - 14:21:16 - перейти к сообщению
DeepVarvar, возможно. Но зависит от проекта.
Когда переносили профит-партнер, то авторизацию и данные на одном довольно жирном поддомене оказалось проще синхронизировать. Потом ещё долго готовили обновление для этого поддомена.
7. Panoptik - 11 Августа, 2015 - 22:51:36 - перейти к сообщению
а еще можно прогнать код по ченджлогу с 5.3 на 5.4 и убрать все несовместимости, и обновить сам пых до 5.4. а после будет меньше шаманства с настройкой сервера и разных версий пыхов
8. DeepVarvar - 12 Августа, 2015 - 08:46:14 - перейти к сообщению
А почему вы, образно говоря, считаете, что писать

вместо

это шаманство?
9. Panoptik - 12 Августа, 2015 - 14:02:44 - перейти к сообщению
я имел ввиду возможные несовместимости релизов. обратно совместимые вещи не нужно трогать.
например открываем
http://php.net/manual/en/migrati...incompatible.php
и по списку ищем все возможные места в легаси коде, и заменяем их на актуальные для новой версии
а массивы - это дело вкуса
10. RomAndry - 12 Августа, 2015 - 14:15:13 - перейти к сообщению
один из жизненных законов, заключается в том, что затраты на "переписать" и время на это могут быть очень большими. Из этого следует планировать бюджет, что бы не оказалось, что все деньги были потрачены на "перепись" и на остальное не осталось

 

Powered by ExBB FM 1.0 RC1