Error AWStats в Vesta панель

При обращении к статистике AWStats в один прекрасный день получил ошибку:
Error: An AWStats update process seems to be already running for this config file. Try later. If this is not true, remove manually lock file ‘/tmp/lock’.
Error AWStats в Vesta

Пару месяцев пилил и с неделю назад завершил и залил белый проект под edu траф под зарубеж. Есно постоянный мониторинг и такой облом со стороны надежнейшего скрипта (как минимум с десяток лет). Баг разрабам AWStats известен и в новых версиях пофикшен (обновляемся от греха подальше).

Поиски в нете дали несколько вариантов решения, начиная от удаления как рекомендовано в Error Message файла блокировки /tmp/AWStats.domain_name.com.lock до установки в 0 параметров AllowToUpdateStatsFromBrowser и EnableLockForUpdate в awstats.conf, увы но результата рекомендации не принесли. Аналогично в одном из случаев перестановка ОС с нуля не привела к решению проблемы. Попутно выяснилось, что статистика после восстановления будет потеряна, т.е. логи бекапим заранее. Версия Vesta 0.9.8 (i686).

Решение достаточно простое, никаких консолей и плясок с бубном, все из панели.

  • В меню панели WEB находим сбойный домен и для него кнопь Редактировать.
  • В select боксе Статистика сайта переключаемся на Webalizer, подтверждаем пароли на статистику/доп.фтп и сохраняет изменения.
  • Перегружаем сервер (в меню панели Сервер кнопь Перезапустить). Ждем пару минут, рефрешим страницу (F5), повторно логинимся.
  • В меню панели WEB для сбойного домена проверяем и убеждаемся что Webalizer успешно работает (кнопь Открыть отчет веб-аналитики).
  • Снова Редактировать домен и теперь статистику ставим AWStats, также подтверждаем Pass для статистики/доп.фтп и сохраняемся.

Все, AWStats доступна по обычному адресу.

 


Количество просмотров :284

Производительность циклов в Java (Android)

Протестировал скорость работы всех типов циклов на Андроиде/Java SE. Разница между самым быстрым циклом и самым медленным составила в среднем 69,7% и в лучшем для самого быстрого случае 109,8%.

Тестировалось на HTC Wildfire (Andoid 2.2.1). Число запусков ~10000, т.е. выборка для практического применения результатов вполне приличная.
Во всех циклах запускалось стандартное суммирование переменной цикла для контроля корректности результата. При тестирование циклы равномерно менялись местами (что бы исключить возможное влияние первого запуска).

Пример кода

concat не делал, оно тут погоды не делает
long timeStart;
long timeEnd;
long s;
String strOut = «»;
int size = 300_000;
int[] arrNums = newint[size];
for(int i=0; i < size; i++)
{
arrNums[i] = 1;
}
for(int r=0; r < 2500; r++)
{
strOut = «id=»+r + «\n»;
s = 0;
timeStart = Calendar.getInstance().getTimeInMillis();
int iw=0;
while (iw < size) {
s+=arrNums[iw];
iw++;
}
timeEnd = Calendar.getInstance().getTimeInMillis();
strOut = strOut + «While: » + (long)(timeEnd — timeStart) + » ms (s=» + s + «)\n»;
s = 0;
timeStart = Calendar.getInstance().getTimeInMillis();
for(int i_fa : arrNums) s+=arrNums[i_fa];
timeEnd = Calendar.getInstance().getTimeInMillis();
strOut = strOut + «For_array: » + (long)(timeEnd — timeStart) + » ms (s=» + s + «)\n»;
s = 0;
timeStart = Calendar.getInstance().getTimeInMillis();
for(int i_f=0; i_f < size; i_f++) s+=arrNums[i_f];
timeEnd = Calendar.getInstance().getTimeInMillis();
strOut = strOut + «For_standart: » + (long)(timeEnd — timeStart) + » ms (s=» + s + «)\n»;
s = 0;
timeStart = Calendar.getInstance().getTimeInMillis();
int idw = 0;
do {
s+=arrNums[idw];
idw++;
} while (idw < size);
timeEnd = Calendar.getInstance().getTimeInMillis();
strOut = strOut + «Do_While: » + (long)(timeEnd — timeStart) + » ms (s=» + s + «)\n»;
//tvOut.setText(strOut);
Log.e(TAG, strOut);
}

Результаты выводятся в лог под дальнейшую обработку в Excel

Результаты

For array (мс) For standart (мс) Do While (мс) While (мс)
Среднее 147,0 110,9 99,5 110,3
Мин 140 105 94 105
Макс 443 346 495 291

 

Результаты после отбрасывания лучшего и худшего

For array (мс) For standart (мс) Do While (мс) While (мс)
Среднее 146,9208 110,8214 99,41190108 110,369
Мин 141 106 95 106
Макс 418 339 356 272

 

Неожиданно присутствует значительный разброс времени, достигающий 500% (500% Карл!!!) И это не единичные отдельные случаи. ~1% числа запусков по всем циклам превосходит 200. Возможно Java Android этому причина. На php такого не наблюдалось. Потому для пущей корректности нужно пустить этот же код на серверной Java, где Андроид будет исключен из процесса или хотя бы на другом смартфоне.

Неожиданно Do While лидирует со значительным отрывом.

Ожидаемо For по предустановленному массиву показал наихудший результат (аналогичный цикл в php foreach в плане скорости также оставляет желать лучшего).

 

Циклы по убыванию скорости

  1. Do While (100%)
  2. While (110,9%)
  3. For standart (111,5%)
  4. For array (147,7%)

Кто решит проверить на своем андроиде ссылка на гитхаб


Количество просмотров :1188

Не получается залогинится в vesta панель? — Решено

Проблема
Вдруг ни с того ни с сего веб-интерфейс Vesta Control Panel перестал впускать с правильным логином-паролем. Все сервисы ВПСки и все сайты работают.

Не получается залогинится vesta панель

Invalid username or password

Веб интерфейс Vesta доступен по адресу https://its.my.vps.ip:8083/login/

Ось: CentOS 6.5 Minimal
Версия Vesta панели 0.9.8

У меня на этих панельках три впски, взятых по промо с ценником по $8/год, авторизация слетела только на одной. На стороне ноды никакие операции не проводились, потому явно что-то внутреннее.

Причина — в моем случае полностью закончилось место на диске, так что панель даже сессию при логине не могла сохранить.
Решение — подключаемся по ftp и удаляем часть устаревших данных, например бекапы или статистику — и все, логин проходит успешно.

Нюанс — альтернативное решение — ни по фтп, ни в этой админке быстро посмотреть куда утекло 20-60Гб диска нельзя, потому проще подключиться через PuTTY и воспользоваться mc, где посмотреть размеры дир в метрах можно по Ctrl-Space или меню Command — Show directory sizes (предварительно выделив диры).

CentOS размеры папок в мб

CentOS размеры папок в мб

Панелька стабильная, не требовательная к ресурсам, на 500Мб ОЗУ спокойно держит с десяток WP + штук 5 сайтов чисто на php с суммарным дейли трафом прилично за 10k. И к тому же бесплатная.


Количество просмотров :4378

Directadmin проблемам с кодировкой сайта, выставленной по умолчанию!

screenshot-enhanced[1]Клиент дал хостинг с хостинг панелью Directadmin но она по умолчанию вставляет ненужный мне тег header закголовок кодировки, Читать продолжении статьи: Directadmin проблемам с кодировкой сайта, выставленной по умолчанию! »


Количество просмотров :4840

Автоматическое наполнение таблицы — SQL Модуль CatFace — SEO.

Этим запросом можно наполнить таблицу с SEO описанием для модуля DLE CatFace для категорий,
ПО шаблону заданному в SQL
Читать продолжении статьи: Автоматическое наполнение таблицы — SQL Модуль CatFace — SEO. »


Количество просмотров :5292

Putty автоматическое пере подключение при обрыве связи

Я люблю работать c моими серверами с помощью Putty по SSH. Я думаю, что это больше чем просто клиент SSH, сама программа очень класная!
Читать продолжении статьи: Putty автоматическое пере подключение при обрыве связи »


Количество просмотров :6146

Решено: Upstream sent too big header while reading response header from upstream // NginX PHP FPM

Решено: Upstream sent too big header while reading response header from upstream when using NginX PHP FPM
Когда вы используете NginX , а в качестве upstream PHP — FPM server.

salmon_2[1]
Читать продолжении статьи: Решено: Upstream sent too big header while reading response header from upstream // NginX PHP FPM »


Количество просмотров :12122

PHP скрипт конвертации Mysql InnoDB в ENGINE MyISAM.

Этот PHP скрипт позволит вам сконвертировать все таблицы InnoDB доступные пользователю $dbuser на сервере mysql из InnoDB в БД ENGINE MyISAM.
Читать продолжении статьи: PHP скрипт конвертации Mysql InnoDB в ENGINE MyISAM. »


Количество просмотров :5388

Понижение версии PHP 5.4 до 5.3 в Debian 7

Debian Wheezy по умолчанию стоит PHP версии 5.4.*
Если эта весрия пхп слишком новая для ваших приложений то для того что бы поставить PHP версии пониже нужно выполнить следующее:
,
downgrading to PHP 5.3.

Читать продолжении статьи: Понижение версии PHP 5.4 до 5.3 в Debian 7 »


Количество просмотров :6900

БЛОК ВЫВОДА ПОСЛЕДНИХ СООБЩЕНИЙ С ФОРУМА для IPB 3 (для wordpress)

БЛОК ВЫВОДА ПОСЛЕДНИХ СООБЩЕНИЙ С ФОРУМА для IPB 3 Читать продолжении статьи: БЛОК ВЫВОДА ПОСЛЕДНИХ СООБЩЕНИЙ С ФОРУМА для IPB 3 (для wordpress) »


Количество просмотров :15434