1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
  3. Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Веб [JSON] Быстрый кэширующийся мониторинг в 4 вариантах

Тема в разделе "Веб-обвязки и лаунчеры", создана пользователем MattRh | IP, 3 ноя 2014.

  1. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Всем привет!
    Недавно писал скрипт мониторинга для одного проекта (чтоб не кидались тапками, скажу сразу, что писалось все по собственной инициативе) и решил выложить скрипт в общий доступ.
    Есть 2 варианта скрипта:
    1. С обновлением кэша при обновлении страницы с заданным интервалом
    2. С обновлением через CRON или при помощи батника (скрипт разбит на 2 файла).

    Предпочтительней использовать 2 вариант, т.к. он не дает увеличения времени загрузки страницы, но уж если вы не умеете обращаться с CRON, то придется использовать 1 вариант.
    1. Удобное изменение дизайна
    2. Удобный конфиг
    3. Правильная верстка и стили
    4. Встроенный дебаг
    5. Чистый код
    6. Очень быстрый (старался максимально ужать)
    7. Приятный начальный дизайн
    8. Совместимость со spigot серверами
    9. Встроенное кэширование (кэшированный вариант грузится мгновенно)
    10. Все нужное описано в readme.txt
    11. Для работы не требуется MySQL
    12. Мониторинг кэшируется в формате json, так что можно написать скрипт вывода онлайна на JS, тем самым сняв часть нагрузки на хостинг (также это дает возможность применить различные анимации к барам и даже постоянное обновление мониторинга в браузере, без обновления страницы)
    1. Реализация вывода через JS
    [​IMG]
    [​IMG] [​IMG]
    Скачать последние версии:

    1 вариант (не для CRON)
    2 вариант (для CRON)

    UPD:
    Создана версия с выводом мониторинга через JS. Эта версия только для 2 варианта(CRON), т.к. писать это для первого варианта не вижу смысла. Идея позаимствована у @Cyber Owl. Работает корректно и быстро. Дизайн тот же, настройки все еще в config.php
    Для работы необходим JQUERY!!!



    P.S. Если есть пожелания или придирки к коду, пишите сразу, всегда рад улучшить скрипты.

    =========================================================
    =========================================================
    =========================================================


    Написана 4 версия:
    AJAX без CRON
    Все доки расписаны в !doc

    1. Все так же быстр
    2. Встроенный шаблонизатор
    3. Использует AJAX для загрузки данных
    4. Не требует создания задачи CRON
    5. Постоянно обновляет онлайн серверов
    6. Улучшенный дизайн
    7. Огромные возможности
    [​IMG] [​IMG]


    Ссылка:
    СКАЧАТЬ!

    P.S. Если есть желание заказать уникальный дизайн или функционал, то пишите мне в скайп - infernalpalace - обсудим
     
    Последнее редактирование: 11 янв 2015
  2. Vladlen_198

    Vladlen_198 Старожил Пользователь

    Баллы:
    108
    Skype:
    ultrashock98
    Имя в Minecraft:
    UltraShock
    Научись правильно пользоваться табуляцией. Её где то нету, где то сильно много.
    Можно было по лучше. Но это паб )
     
  3. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Можешь скинуть скрины, что именно не устроило?
    И вообще коммент попахивает бредом, т.к. табуляция - штука сугубо индивидуальная и как придирка она так себе. О5 же код написан на пыхе, а не Питоне, потому табуляция не влияет на работу скрипта
     
    Последнее редактирование: 4 ноя 2014
  4. Vladlen_198

    Vladlen_198 Старожил Пользователь

    Баллы:
    108
    Skype:
    ultrashock98
    Имя в Minecraft:
    UltraShock
    Табуляция это хороший тон программирования
     
  5. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Табуляция у всех может отображаться по разному. Покажи мне скрин с кодом, где я явно не так расставил табы
     
  6. Vladlen_198

    Vladlen_198 Старожил Пользователь

    Баллы:
    108
    Skype:
    ultrashock98
    Имя в Minecraft:
    UltraShock
    Почему ты не использовал array() для настроек ?
    Снимок.PNG
    Снимок.PNG
    Снимок.PNG
    Да и вообще можно было использовать масивы так
    Код:
    $array = array(
        '1' => '1',
        '2' => array(
                    '3' => '3',
                ),
    );
    echo $array['2']['3'];
    
    UPD
     
    Последнее редактирование: 4 ноя 2014
  7. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Не использовал, т.к. выглядит громоздко и не имеет смысла, если можно сделать так.
    Каюсь, в одном массиве поставил табуляция так, как удобно мне. Все же не существует жёстких правил оформления кода. И если код оформлен не так как ты считаешь нужным, то это не значит, что я не умею пользоваться табуляцией.
    Опять же я не придираюсь к твоей неграмотности :)
     
  8. Vladlen_198

    Vladlen_198 Старожил Пользователь

    Баллы:
    108
    Skype:
    ultrashock98
    Имя в Minecraft:
    UltraShock
    Я лишь пытаюсь показать ошибки, я привёл пример масив в масиве
    rb всю табуляцию испортил :C
    И в чём же я не грамотен ?
     
  9. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    а) это то, как ты считаешь правильным оформлять отступы, это не обязательно является правилом
    б) не совсем понял, зачем ты вообще привёл этот пример, если показал свою точку зрения в скрине
    в) непонятно, зачем в примере эхо
    Да вообще непонятно, к чему этот пример
    Где-то
    Нет
    Где-то
    По-лучше
    Как видишь, даже в твоих 20 словах я нашёл 4 ошибки
    Это называется многомерный массив, а не массив в массиве
    .
    Ещё одна ошибка: табуляция - это
    Многомерные массивы использовать можно было, но зачем?
     
  10. blogger2

    blogger2 Старожил Пользователь

    Баллы:
    123
    Skype:
    ilja0176
    Имя в Minecraft:
    XuPoH
    Получше.
    Где-то.
    Сам не лучше. Вот ненавижу таких людей, которые пытаются умничать в русском, а сами допускают идиотские ошибки. Вам место в аду.
     
  11. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    А чем моё где-то не устроило?

    И да, ошибка "по-лучше" не совсем уж и идиотская​

    И я не верю в ад ;)
     
    Последнее редактирование: 4 ноя 2014
  12. blogger2

    blogger2 Старожил Пользователь

    Баллы:
    123
    Skype:
    ilja0176
    Имя в Minecraft:
    XuPoH
    Жизнь твоя и есть сущий ад.
    Ты рассыпешься на элементарные частицы, сознание твоё покинет тебя. Ты обретешь в каком-то смысле покой, но более ты не ощутишь красок сего мира. Ты не ощутишь лёгкого бриза, ты не увидишь красот закатов, и даже рассветов. Ты не сможешь услышать птичьи трели в лесу. Ты не сможешь потрогать первый снег. Никогда.
    Неужели тебе легко живётся, веря в такой конец?
     
    Последнее редактирование: 19 апр 2015
  13. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Тебе не кажется, что эта информация никому не нужна?
    И если мое сознание покинет меня, то мне будет параллельно, что есть закаты и рассветы и т.д.
     
  14. Cyber Owl

    Cyber Owl Старожил Пользователь

    Баллы:
    153
    Если есть желание, то можно воспользоватся и JS.
    Более легковесная связка получится.
    JS(Client) > PHP (JSON ответ) > Render
     
  15. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Интересный вариант.
    Но не все предпочтут пользоваться неким сторонним http://jmc.url.ph/

    Немного непонятно правда, зачем использовать для каждого сервера уникальный айди, а не работать с $(this)
     
  16. blogger2

    blogger2 Старожил Пользователь

    Баллы:
    123
    Skype:
    ilja0176
    Имя в Minecraft:
    XuPoH
    >> Сознание покинет меня
    Если Оно покинет ТЕБЯ, тогда что есть ты?
    Сознание и есть эго.
     
  17. BestMark

    BestMark Старожил Пользователь

    Баллы:
    103
    Skype:
    BestMarkBukkit
    Имя в Minecraft:
    BestMark
    Извиняюсь за глупый вопрос, но что лучше:
    а) 1-й вариант (без Kron)
    б) 2-й вариант (Kron)
     
  18. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Я считаю, что второй, т.к. он а) обновляет сразу все сервера, а не по одному и по очереди(в итоге и при добавлении сервером или изменении их названия будет еньше ошибках в логах) и б) он не дает прибавки ко времени загрузки страницы
    И даже никаких вразумительных комментариев по коду и мониторингу :(
     
  19. Cyber Owl

    Cyber Owl Старожил Пользователь

    Баллы:
    153
    Имеется в виду обрабатывать ответ от Вашего скрипта, а не от http://jmc.url.ph/
     
  20. Автор темы
    MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    А, ну это да, только придётся имена переменных немного поменять
     

Поделиться этой страницей