- Привет! Я Шикарно - Моя миссия - облегчить тебе жизнь! |
Пообщаться со мной:
cude@bk.ru |
Зачем нужен ШикарноЛюбой продукт должен решать проблемы (реальные или надуманные :)) Я пользовался Шикарно много лет, прежде чем решил сделать из него продукт для общественного использования, и могу утверждать, он решает реальные проблемы. Проблемы:Замена неудобному кронуCron по сути безальтернативный способ запуска скриптов по расписанию. Шикарно не только решает неудобства крона но и вносит дополнительные функции. По сути, крон это прекрасная низкоуровневая утилита, Шикарно просто решает проблему "забивания гвоздей микроскопом". Неудобство №1 - cложный формат времениФормат времени в cron
К слову, разработчики пошли на это ради универсальности. Только зачем ракета, когда нужен простой велосипед. РешениеПростой и понятный формат времени. Выбор времени запуска в Шикарно
Cуществует несколько режимов автоматического запуска:
Неудобство №2 - добавление новых заданийДобавление в cron через cpanel
Чтобы добавить задание в крон нужно зайти на сервер через ssh и с помощью утилиты crontab добавить задание. Тем кто не дружит с командной строкой unix, могут добавить задание через cpanel (если она конечно установлена). Причем добавив задание, 99% скрипт с первого, и даже со второго раза не запустится. Проблема в том что вы не видите сообщения об ошибка. Добавление в крон выглядит примерно так:
<?php
Цикл может повторяться по многу раз, отнять n-е кол-во нервных клеток и спокойно растянуться на несколько дней (личный опыт). В этот увлекательный процесс вносит разнообразие переписка с хостером, который невозмутимым тоном отвечает "мы не занимаемся отладкой клиенских скриптов". Решение Определение настроек хостинга при инсталяции
Автоматическое определение вариантов запуска Автоматическое добавление скриптов. Ручное добавление скрипта Для этого есть кнопочка "найти новые скрипты". Определяет очень просто: в скрипте должна быть метка //for_run_shikarno . Дополнитель, по возможности, сформирует название и описание скрипта из первого комментария. После чего скрипт можно запускать и тут же, в режиме реального времени, смотреть как он работает. Впрочем, есть возможность добавить скрипт и вручную.
Неудобство №3 - не понятно что работаетНепонятно какие скрипты выполняются в данный момент. Сложно сказать, насколько успешные были предыдущии запуски. По сути это можно отследить только по не правильной логике работы сайта (например должны быть свежие новости а их нет, значит надо проверить парсер новостей) РешениеВсе просто и наглядно. Неудобство №4 - просмотр логов
Итого: много лишних телодвижений. Что привод к тому, что в лог смотрят в самую последнюю очередь. А значит теряют время, потому что там проще всего определить ошибку. РешениеПросмоторщик логов
Достаточно щелкнуть на кнопочку рядом с нужным процессом и лог откроется в отдельной вкладке браузера через специальный скрипт, который покажет конец лога (истина обычно там). Это скрипт делит лог на кусочки и отправляет в браузер только нужную вам часть, что позволяет смотреть логи любого объема. Вы можете свободно перемещаться по этим частям. Есть поиск (поиск происходит по всему логу) Неудобство №4 - отладка и устранение проблемПри отладке скриптов, главные ресурсы - концентрация и нервы. Выполняя кучу лишних движений, чтобы запустить скрипт и посмотреть результат в логе, ресурсы очень быстро расходуются. Это превращает отладку из просто рутины в очень утомительную рутину. РешениеБерегите свои нервы, используйте Шикарно. Идея написать Шикарно как раз возникла из желания упростить жизнь при создании meksikanets.ru Многопоточный запуск php скриптовИногда возникает такая необходимость. Существует несколько способов: неблокирующие сокеты, fork, multicurl, запуск скрипта несколько раз. В гугле на эту тему достаточно материала. Я реализовывал разные варианты. По своему опыту, могу сказать что наиболее простой способ - запуск скрипта несколько раз. Конечно он требует несколько больших ресурсов, чем тот же multicurl. Зато это компенсируется легкость написания, гибкостью и простой отладкой. Схема такого скрипта примерно следующая:
<?php
Где нужна многопоточность:
Сбор и упорядочивание всех ваших скриптов в одном местеЭта проблема возникает в основном у оптимизаторов. Куча скриптов, разбросанных по одному или нескольким сайтам. Пока все это используешь каждый день, проблем особых не возникает. Но стоит не надолго переключиться и догадаться чем занимается файл parser.php, как надо его запускать (далеко не все скрипты имеют формы, многие просто берут данных из файлов) можно только открыв исходник. Шикарно позволяет собрать все ваши скрипты на разных сайтах в одном месте с названиями и описаниями. Переделать скрипт, для запуска через Шикарно очень просто, достаточно в начале скрипта вставить:
Контроль работоспособности множества сайтов из одного местаПанелька позволяет управлять скриптами на разных сайта из одного места. Если где то скрипт стал работать не правильно, вы об этом узнаете не от недовольных пользователей или потому что что-то стало работать не так. А от Шикарно. Этому также способствует раздел "ошибки", где собираются все ошибки из error_log, удаляются дубли, группируются по сайтам, папкам и файлам [картинка] и времени последнего появления. Обычно файлы error_log размазаны по директориям сайта и в них заглядывают в самую последнюю очередь. А ведь именно там будет отображена ошибка, которая например ИНОГДА возникает при авторизации ваших клиентов. Только найти ее там будет невозможно, потому что она будет окружена мегабайтами Notice-ов и прочим хламом.
|