Оптимизация админки

Post Reply
Steel
Posts: 18
Joined: Wed Nov 13, 2013 8:07 am

Оптимизация админки

Post by Steel »

Всем доброго дня!

offtopic: очень давно использую SmartCJ (еще со времен популярности незабвенных TM, ATX, ATS Pro, Proton etc.), но почему-то постоянно доставал Lemon'a своими идеями напрямую. Не прошло и года - решил исправиться ;)

СУТЬ: момент по улучшению админки, который легко реализуем. Косметика, но важная, как мне думается. Суть в том, что есть опция "авторефреш", которая по таймеру рефрешит Всю админку, что вызывает не совсем приятное моргание экрана + нагружает сервер каждый рефреш для пересчета показателей. А что если сделать следующим образом:
в папке admin создать папку static, куда будет генериться файло по крону при плановом пересчете показателей (если опция авторефреш установлена). Параллельно пересчету. Вот например "List trades". Самое главное там - основная табличка, вот и генерить туда tbl_active.html вида "<table>...</table>", а jquery по таймеру будет делать $( "#tbl_active" ).load( "static/tbl_active.html" );
Можно еще и таймер вывести например в скобочках рядом со временем вполовину светлее, чтобы не напрягал + снабдить это каким-нить нежным fadein/out. Но это уже так - изврат :)

ПЛЮСЫ: Таким образом будет визуально приятнее + не будет нагружать сервак пересчетом дополнительным + обновлять таблицу будет только в случае, если статический html обновился (насколько мне известно, jquery проверяет дату последнего изменения документа). И самое главное - данные для отображения в админке все равно не изменяются чаще отработки крона, не так ли? Соответственно можно саму админку собирать инклудами php'шными. Что обеспечит МОЛНИЕНОСНОЕ отображение админки (у кого еще и nginx прикручен - совсем фарш будет ;) с актуальными данными. Главное не забыть, что при редактировании, допустим, описания трейдера, тоже можно вызвать регенерацию соответствующего html, либо всех, если лень заморачиваться. Сама реализация требует минимальных изменений скрипта, как мне кажется, а эффект от наконец-то "скользко" работающей админки будет колоссальный.

МИНУСЫ: нагрузка на сервер при записи статических кусочков админки, когда человек не смотрит оную. Не думаю, что запись 10-20 файлов (это если обновлять еще и графики в других табличках например) хоть как-то перегрузит сервер, ведь пересчет все равно происходит - можно параллельно после апдейта базы и записать статику. Пересчет админки при рефреше грузит ту же дисковую систему значительно больше imho.

Что скажете?
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Оптимизация админки

Post by admin »

Как не будет нагружать если по крону туда все равно будет пересчитываться ?
Don't forget to run script update
Steel
Posts: 18
Joined: Wed Nov 13, 2013 8:07 am

Re: Оптимизация админки

Post by Steel »

admin wrote:Как не будет нагружать если по крону туда все равно будет пересчитываться ?
Обычно человек совершает более одного действия в минуту. Данные же чаще не обновляются. К тому же пересчет показателей все равно ведется по крону. Я внутрь скрипта не лез, однако рискну предположить, что большинство, если не все необходимые показатели в процессе обновления крона все равно считаются. Нужно только добавить запись статики на диск, пока все данные в массивах/переменных, дабы не лезть второй раз в базу. Таким образом нагрузка минимизируется. Возможно я не знаю каких-либо тонкостей скрипта, которые в корне меняют проблему, но могу сказать следующее: я участвовал в альфа- и бета-тестировании ATS Pro. Можно по-разному относится к нему и, скажем прямо, по предоставляемому объему возможностей, гибкости равного SmartCJ на данный момент попросту нет, однако я вот к чему - элементарная замена запросов к MySQL на запись и чтение статики повысила скорость работы в несколько десятков раз, причем уменьшила нагрузку на ЦП. Понятное дело, что это касается отдельных моментов и не везде этот трюк сработает, но мне кажется эффект будет положительным. Если все не так - посыпаю голову пеплом - я всего лишь стараюсь помочь.
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Оптимизация админки

Post by admin »

ок, вернемся к этому вопросу как будут сделаны более востребованные фичи.
Don't forget to run script update
Post Reply