Стабильность блоголёта
05.09.2009За последние несколько дней, в связи с изменениями в ядре, ко мне поступают многочисленные жалобы на работоспособность блоголёта - порой мне кажется, как блоголёт вообще работает. Жалобы в основном связаны с повреждением данных в том или ином случае. Конкретно - каким то образом теряются данные в одном из классов. Целиком весь сайт работает и можно малой кровью восстановить работоспособность сайта. Так или иначе это напрягает. Причина такой нестабильности - использование файлов вместо бд.
БД сама по себе не гарантирует целостности и работоспособности. Пример сайт blogolet.ru который всегда работает. Так что я более чем реально призадумался про хранение данных в бд, точнее в частичном хранении данных в бд. Соответственно неспешно подумываю про фреймворк для бд - простой класс прослойка между блоголётом и бд, как пример code igniter, в котором реализован доступ к нескольким типам бд: mysql, sqlite, mssql и т.д.. С code igniter мне связываться не хочется - он мне лично не нравиться, да и вообще написан по стандартам php4. Хочется чего то более простого и легкого. Безусловно, у меня есть некая самописная надстройка, но это надстройка только для mysql, да и написана слишком давно, чтобы я мог ею гордиться. Так что блоголёт на бд мне за горами.
Комментарии (50) на запись “Стабильность блоголёта”
Оставить комментарий
Разбить обновления на 2 группы. Первая группа, для бетатестеров (желающих), а вторая - уже отмученная проверенная версия Блоголета, которая достаточно надежно обновляется.
Т.е. автообновление централизованно затормозить до решения проблем совместимости. Вот до изменения ядра версия была более чем рабочей.
А если хотят что-то новое пусть скачивают и устанавливают заново.
Пока. Пока не реализован способ перекачки данных независимо от версий.
А я в последнее время так загружен, что совсем перестал следить за обновлениями Блоголёта. То есть в RSS-ридере читаю новые посты, но вот ничего не скачиваю. Хотя в скором времени собираюсь запустить с нуля несколько проектов.
Надеюсь, развитие Блоголёта с БД никак не отразится на уже существующем? Ибо мне нравится текущая концепция установки за несколько минут. Без MySQL – это самое то для небольших блогов и сателлитов.
Линейка на файлах останется, в планах сделать версию пригодную для импорта любых xml, и статейиз liex.ru и контента из xap.ru, для этих целей вполне подходит текуще состояние, к тому же реально можно повысить ремонтоспособность блоголёта.
Версия с бд будет также легко ставиться, в первоначальной анкете надо будет заполнить ппараметры базы и все. Вначале сделаю двойную версию, то бишь будет общее ядро и можно будет переключать способ хранения из файлов в бд и наооброот.
А вообще еще раз убеждаюсь, какое тебе техническое решение не советуй, у тебя, все-равно, что-нибудь получше в запасе.. :)
Всегда восхищался твоей целенаправленностью и терпимостью, пусть она тебе и в этот раз поможет! Чтоб кризис Блоголета не перекинулся на тебя!
Кстати, счас попробую, если у меня остались тестовые блоги до 2.55 версии обновить таким образом..
Так, вот все сделал аккуратно. Т.е.
1. Сделал бэкапы (с 3 отмеченными пунктами и полный)и сохранил
2. Снес блог и установил с нуля новую версию.
3. Выставил права, запустил.
4. Чтоб файлы data/domain - classes.php и options.php в установленном блоге не потерлись, переименовал их в _classes.php и _options.php
5. Распаковал сохраненный бэкап (с 3 отмеч. пунктами)
6. Залил файлы бэкапа поверх (с заменой файлов) файлов в новом блоге.
7. Так как в бекапе файлов classes.php и options.php не оказалось, (видимо, можно было пункт 4 не делать), то просто восстановил название файлов classes.php и options.php
8. На всякий случай у всех файлов перепроверил достаточность прав на запись. Подправил.
Запустил в броузере. Выдало ошибку:
Fatal error: Call to undefined method TClasses::instance() in /home/clear/public_html/index.php on line 26
Жду указаний :)
Да, такую же ошибку дает как и в первый раз. Но вот, может я напрасно из бекапа папку lib поверх новой заливал? Кстати, пробовал и без заливки бекапной папки lib. Поругалось замысловато:
Warning: key_exists() [function.key-exists]: The second argument should be either an array or an object in /домен/lib/templateclass.php on line 47
Caught exception: The requested property themename not found in class TTemplate
trace error
0 lib/kernel.php(28): TDataClass->Error('The requested p...')
1 lib/kernel.php(212): TDataClass->__get('themename')
2 lib/templateclass.php(55): TEventClass->__get('themename')
3 lib/templateclass.php(65): TTemplate->__get('themename')
4 lib/kernel.php(181): TTemplate->Load()
5 lib/kernel.php(473): TEventClass->__construct()
6 lib/kernel.php(481): GetInstance()
7 lib/templateclass.php(22): GetNamedInstance()
8 lib/kernel.php(790): TTemplate::Instance('TTemplate')
9 lib/kernel.php(779): TUrlmap->PrintClassContent('template', 'TTemplate')
10 lib/kernel.php(674): TUrlmap->PrintContent()
11 lib/kernel.php(651): TUrlmap->DoRequest('TAdminIndex', Array)
12 index.php(33): TUrlmap->Request(Array)
13 {main}
Кстати, может это из-за того, что архив был на одну тему настроен, а новый блог на дефолтную, и этой темы в папке нового блога не было?..
Fatal error: Call to undefined method TClasses::instance() in /home/clear/public_html/index.php on line 26
Попробую еще раз.
Владимир, есть переработанный CI - CIEXtended http://ciex.levallois.biz/ - выкинули php4, сделали простой ORM, модульность
еще неплохой yii
А в движках с мускулом, много конкурентов, соответственно очень многое реализовано за предыдущие годы и найти свою нишу будет очень сложно, да и потребуется много времени что бы хоть как-то выделится среди общей массы....
По удобству нравится modx.
По производительности Next Generation.
Fatal error: Call to a member function DeleteClassArg() on a non-object in /домен/lib/commontags.php on line 180
Fatal error: Call to a member function DeleteClassArg() on a non-object in /домен/lib/commontags.php on line 180
но метка удаляется
Категории тоже удаляются.
Мне нужно заменить заголовок виджета "облако меток" на другой, это можно как-то сделать не изменяя ru.ini?
Посмотри файл .htaccess - если ты его редактировал, также есть скрипт генерации пароля без формы:
http://litepublisher.googlecode.com/svn/trunk/utils/password.php
попробуй, может вылечиться.
Через блогклиент записи получает, больше никак не заходит!!! Я ничего не редактировал =(
AddDefaultCharset UTF-8
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
</IfModule>
Вот хтацес =(
http://litepublisher.googlecode.com/svn/trunk/utils/auth.php</p><p>на своем срвере, логин и пароль test - что пишет?