Навеяло проделанной работой
Четверг, 1 ноября 2007 г.
Просмотров: 2039
Подписаться на комментарии по RSS
За последнюю неделю сделал несколько сложных заказов. Из-за этого даже не успевал форум почитать. :(
Зато выяснилось несколько интересных моментов.
Первый - Мастерхост - это зло.
Обновил WordPress, загрузил свою подборку плагинов и на каком-то из них, выводится пустая страница сразу после активации. И надо же так случиться, что это произошло на моем собсвенном, который подключает дополнительные функции для шаблона. Я, давай, искать ошибку у себя. После 4-х часов (!!!) отладки, я решил попробовать просто поудалять все функции. И вуаля, на каком-то этапе сайт работает. Парадокс в том, что функции - пустышки. И вот как только добавляется еще одна такая пустышка, опять выводится пустая страница...
Не буду утомлять дальнейшим рассказом, оказалось, что Мастерхост просто не позволяет увеличивать память для php-скриптов. Просто тупо не позволяет.
Пока я не сообразил запустить phpinfo(), наверное до сих пор бился бы. То есть я привык, даже на самых убогих хостингах конструкция:
- php_value memory_limit 16M
- установит нужный лимит памяти. Здесь это просто не работает. Разрешено 10 Мб и всё. В итоге пришлось отключить массу плагинов и оставить только самые-самые.
Другой прикол. Поскольку у меня много клиентов с Мастерхоста, то естественно у меня есть параметры доступа к единому мастерхостовскому phpMyAdmin. Так вот, когда я вхожу с одним логином, то в одном фрейме (phpMyAdmin имеет фреймовую структуру) отображаются данные по одному клиенту, а в другом - другого.
При этом жми-не жми «выход», ничего не исправляется - разве что меняются логины для фреймов. В итоге пришлось обратиться к IE - поскольку я его никогда не использовал, то он уже не менял данные разных логинов.
Второй момент - как нужно обновлять совсем старые версии WordPress. Впрочем об этом я давно уже написал в readme.txt, но еще раз проверил на практике.
Итак, нужно последовательно довести версию до 2.0.9. И только после этого можно установить 2.2, а после неё уже 2.3. Любая другая последовательность приводит к различным глюкам. В общем что-то с этим обновлением недоглядели.
Третий момент - как нужно обновляться, если база данных покоцана. Когда вы входите в phpMyAdmin, то видите в таблицах кодировку сравнения cp1251, а вместо текста крокозяблы. Когда-то считалось, что нужно взять дамп, его переделать под нормальный utf-8 и залить обратно. Возможно это не сработает. То есть переделать можно, но вот буквы «И», «ш» и какие-то другие окажутся безвозвратно потеряны. Можно конечно вручную их подправить, но это если текстов немного.
Поэтому на старой версии делаем экспорт записей. Если версия 2.0.*, то нужно взять файл export.php из 2.1 кинуть его в каталог /wp-admin/ и вручную запустить: сайт/wp-admin/export.php.
После этого нужно открыть полученный файл в notepad2 и удалить вывод ошибки в самом начале файла. Сообщение может быть разным, просто запомните, что файл должен начинаться со строчки:
- <?xml version="1.0" encoding="UTF-8"?>
После этого можно поставить WordPress 2.3.1 с нуля, только перфикс таблиц поменяйте на другой (чтобы старую версию не затирать). В итоге получите «чистую» установку. Включаем нужные плагины, и после этого идем в Импорт и загружаем наш файл.
Есть один нюанс - если текстов много, то импорт-экспорт происходит с ошибкой. Наверное это связано с ограничением на сервере и как побороть я пока не знаю. Простое увеличение параметров для аплоада не дает положительного результата. Поэтому после получения экспорта проверьте его импорт на тестовом блоге например на локалхосте.
И еще. При экспорте/импорте записей теряется некоторая информация, например иерархия рубрик. Поэтому есть смысл предварительно сохранить старые настройки.



Комментариев: 20
Скорее всего это связано с квотами на процессорные ресурса хостера. В скрипте необходимо выставить некоторую задержку (паузу), чтобы скрипт через определенный промежуток времени просто останавливал свою свою работу на несколько секунд.
p.s.: у каждого хостера на разных тарифах различные квоты на выделяемую память и процессорные ресурсы.
Мастерхост это не только ЗЛО, но еще и тормозное ЗЛО
по крайней мере именно базы там тупят. Кстати по поводу количества плагинов - на одном сайте видел там стоит достаточно плагинов и все работает вроде бы
Это как раз и правильно, что не работает. Хостинг-то виртуальный. Следовательно на одном железе работает несколько сайтов. Если скрипт одного из них "съест" всю память или вообще подвесит компьютер (зациклится, например), то остальные сайты просто перестанут отвечать на запросы. Так, что все ОК. Это просто необходимо учитывать при написании скриптов.
IMHO проблема импорта в том, что WP тратит много времени на обработку записей, а потому скрипт обрывается по таймауту. При большом количестве постов имеет смысл резать файл на небольшие куски и заливать частями. Может у кого-то дойдут руки написать небольшую виндовую прогу для корректной разбивки xml файлов на части? А то оказалось, что не все понимают, как правильно резать xml (даже с учетом гуманности ворпрессовского импорта). ;)
Максим, подскажите по поводу мастерхоста для нубов - чем это плохо для конечного пользователя. Я так понимаю это значит, что не получится поставить столько плагинов сколько я захочу?
По моим ощущениям WordPress'у теперь ужно больше памяти, чем предыдущим версиям. Скажем для 2.0.11 хватает 8Мб со всеми плагинами. Тот же набор плагинов для 2.2 уже нужно 16Mb. Я не могу абсолютно это утверждать, но вот такое субъективное мнение.
Александр я с вами соглашусь только в том случае если считать, что сейчас мастерхост стал синонимом narod.ru ;) Хостинг должен быть нормальным. За эти же деньги можно взять куда более приличный американский, без всяких надуманных ограничений.
У меня Мастерхост... я шибко в базах данных шарю, но пока мне не сказали, что Мастерхост - суксь, я даже и не задумывался об этом, поскольку все нормально работало... :???:
Feelov, работает то оно у тебя более менее нормально, но помнишь я тебе показывал счетчик мускула - база тупит страшно
А где есть еще неплохой хостинг под Wordpress? Макс, не порекомендуете? У меня один из блогов сейчас на Yahoo.
Так вроде WordPress не настролько прожорлив, чтобы требовать какие-то особые условия. Тут речь собственно не идет о том, что мастерхост или кто-то другой ерунда. Речь идет о том, что может быть даже на их хорошие сервера ставят искусственные ограничения, а потом выдают их за разные тарифы, с целью подороже продать.
Ну вот например эта мулька про неограниченный трафик. Ну не может он быть безграничным по определению, иначе сервер просто рухнул бы. Поэтому объявляя безлимитку, вводят ограничение на нагрузку. То есть чуть превысил - включается какое-то ограничение. Выглядит это как длительная загрузка сайта. Это то, о чем Иван и сказал.
Хостингов сейчас очень много, причем много хороших. Называть не буду, но если кто хочет, может дать здесь ссылки. Но вот по моим критериям хороший хостинг должен:
- иметь нормальную панель управления. Мне нравится cPanel. Но ни в коем случае не самописные.
- должо быть «включено всё». То есть когда один тариф подразумевает использование PHP, а другой нет, значит вводится искуственное ограничение.
- должно быть четко написано в чем различия между тарифами: в 99% это размер места на диске и трафик. Если трафик неограниченный, то пишется максимально допустимый уровень нагрузки. (Понятно, что чем больше трафик, тем больше нагрузка, поэтому эти параметры связаны). При этом если вы и превысили максимальный уровень, то на нормальных хостингах можно без проблем немного доплатить и либо перейти на более высокий тариф, либо админ выставит специально для вас нужные параметры.
- остальные ограничения обычно касаются только количества дополнительных фишек. Ну например возможность создания 5 баз данных, в другом - 500. Или количество создаваемых email. На самом деле эти ограничения скорее «психологические», потому что меняются админом за две минуты и для сервера особой роли не играют. Да и в простом тарифе вы просто не сможете создать 100 БД - места не хватит. А если и создадите, то сразу превысите разрешенную нагрузку.
Ну и по моему опыту, серверы в США работают в несколько раз быстрее российских, а стоят на порядок дешевле.
Макс, огромное спасибо за подробный ответ. Буду знать, куда смотреть при выборе.
Если не сложно, не подскажете какие-нибудь американские сервера, которые дешевле, чем наши? Потому что 11 долларов в месяц на Yahoo вполне сравнимы с нашим 300 рублевым тарифом на Мастерхосте.
Смотрю сейчас на Godaddy - там 4 доллара в месяц. Но я слышал, что у Godaddy бывают проблемы именно со своими установками Wordpress...
имею хостинг на gudzon Поддержка на русском, единственный недостаток - ограниченный трафик, но мне пока хватает.
Согласен - хостинг должен быть нормальным. Именно поэтому все адекватные хостеры вводят упомянутые мной выше ограничения.
Поскольку информацией об американских хостерах не владею (дайте ссылки, если не затруднит), приведу пример с "Хостинг-Центром РБК". По ссылке можно увидеть самый дешевый (! 700 руб/мес.) тариф, на котором клиенту гарантируется выделение 64 Мб памяти и 2% процессорных ресурсов.
Очень сомневаюсь, что американский саппорт позволяет выделять скрипту памяти столько сколько программисту угодно. Например 4 скрипта с выделенной каждому по 16 Мб памяти, да плюс два одновременно зашедших посетителя заблокируют на железе хостера 128 Мб. А если посетителей будет больше?
p.s.: по-моему Мастерхост квоты ЦПУ считает немного иначе. Не в %, а в секундах. Например, значение "30 сек." будет означать следующее: скрипту (или сайту?) на данном тарифном плане разрешается нагрузить процессор с тактовой частотой 1GHz на 100% ровно на 30 сек., после чего работа скрипта прибивается. Это еще означает, что если скрипт нагружает процессор на на 100% а 20%, то проработать ему будет позволено в 5 раз больше, т.е. 150 сек.
Поправьте меня, если я ошибаюсь.
Прошу прощения за опечатку. Строку:
Следует читать как:
Вы говорите VPS-хостинг, а как правило требуется обычный виртуальный. Лично у меня сложилось достаточно негативное отношение к хостинку РБК - очень уж большие у них тормоза.
Предыдущие сообщения я приводил в качестве иллюстрации того, что даже более элитный (назовем это так) VPS (VDS) хостинг гарантирует выделение достаточно малого количества памяти. Чего же Вы ожидаете от обычного хостинга?
РБК - это первый попавшися пример с цифрами выделяемой памяти и процессорных ресурсов. Я не предлагал обсудить качества их услуг.
Скажите, Максим: не ужели сказанное мной сейчас не было очевидным из предущей иллюстрации? Или Вы читали в спешке?
Александр, ну вы прямо в какие-то дебри полезли так, что я уже не совсем понимаю, что вы пытаетесь сказать.
Мой тезис очень простой: для нормальной работы WordPress'у нужно 16Мб. Это с учетом множества плагинов. Если хостер ограничивает и не позволяет уставновить лимит выше, значит нет смысла брать такой хостинг. А как админы настраивают сервера, чтобы пользователи не завалили сервер, то это уже собственно их проблемы.
В конце-концов существует практика сообщать клиентам о том, что их сайт использует больше ресурсов, чем ему положено. Как правило вопрос решается очень просто - переход на больший тарифный план. Ну а для того, чтобы всё «летало» покупается выделенный сервер и делается с ним, что угодно. 
Несколько лет сидел на петерхосте, теперь (по слухам) его перекупил РБК.
На моем серваке вообще стало черти что твориться.
Ежедневные перегрузки ЦПУ, и на все техподдержка отвечала - что-то с Вашими скриптами. Или сайт стал пользоваться спросом и тогда Вам надо перейти на более дорогой тариф (нагрузка появлялась при том, когда я что-то писал на сайте или редактировал, а посещений... не более 20 в сутки :arrow: ).
Короче, ушел именно на мастерхост. Посмотрю, что там...
Недавно также столкнулся с нехваткой выделенной masterhost-ом памяти. Дело в том, что при попытке изменять размеры и создавать миниатюры из загружаемых картинок происходит сбой, если картинка большая по размеру. Ну скажем мне просто не удавалось создать миниатюру размером 200х200 пикселей из картинки более 450 пикселей по одной из сторон. Долго пытался понять в чём дело, пока не подсказали увеличить размер памяти. Как оказалось хостер запрещает изменять его через файл .htaccess
После того как я связался с тех.поддержкой они мне посоветовали поменять тариф на более дорогой или собрать собственный интерпретатор. Правда в письме, выдержку из которого можно прочитать на форуме этого сайта, была приписочка, что если после того как я создам интерпретатор, если загрузка на их сервер возрастёт, то они могут отключить сайт. :eek: