Статистика авторитету як це працює

Свій перший пост я почну з опису нутрощів сервісу.

Основне завдання сервісу - розширити цифри, які показані на офіційній сторінці статистики та "оживити" їх.

Там ви бачите лише поточну кількість очок гільдій і її місце в таблиці ТОП-100.

У моєму сервісі є ряд поліпшень:

2) Ви бачите скільки вас відділяє очок від гільдії, яка йде попереду. І можете знати, скільки залишилося набрати очок гільдії, яка знаходиться на 1 місце нижче вас. Ці цифри дозволяють стежити за вашим темпом серед суперників і бачити як сильно ви втрачаєте позицію або, навпаки, можуть спіткати найближчого суперника.

3) І, нарешті, всі цифри можна порівнювати з іншими гільдіями.

У недавні часи сервіс був змінений. По суті я повністю переписав його код і практично повністю поміняв алгоритми збору інформації і його підрахунку. Залишився тільки мінімалістичний дизайн сайту, який я вважаю вдалим - його фішка в тому, що він не "рве" очей. Так само я не став обважувати сайт свистілки-перделкі, щоб було все красиво. Тому дизайн отримав дрібні правки і залишився тим же.

Статистика складається з двох частин: збирача інформації (граббер) і сайту, на якому показується інформація (паблік).

Являє собою ряд мінімалістичний скриптів (чанкі), завдання яких виконати свою функцію і більше нічого. Деякі чанкі вміють запускати інші чанкі, а деякі засипають і нікому нічого не повідомляють.

Так, наприклад, щоб записати інформацію в базу даних по типу "дата-гільдія-окуляри" потрібно послідовний запуск 4 скриптів: вибрати сервер, скачати сторінку з офіційного сайту, вичленувати цифри, зберегти дані. Потім ще один скрипт записує всі цифри в базу даних. Його завдання - знизити кількість інформації, що зберігається в базу даних в 10 і більше разів.

Раніше: сервер не "засмучувався" відсутньої цифрою і йшов далі. Він знаходив цифру поряд (наприклад ще на 2 дні раніше), і вважав її результатом. Але це давало наближений результат.

Таким чином виходять прирости за сьогодні / вчора /. /30 днів.

Самі цифри показуються на паблік - простому сайті на простому фреймворку. Для того, щоб сайт отримував мінімум навантаження, спеціальний шостий скрипт готує спеціальну таблицю в базі даних і заповнює її вже готовими цифрами. Тобто інформація для відвідувача готується заздалегідь і після цього він працює тільки зі зліпком вже обчислених даних. А раз нічого не треба вже обчислювати, сайт працює дуже швидко і не гальмує. Так само таку маленьку таблицю дуже просто сортувати і це абсолютно не створює ніяких навантажень.

Як же працює таблиця "Все сервера"? Якщо у нас запитують тільки один сервер, виводиться 100 записів. Інакше - виводимо всі 800. Тобто таблиця "все сервера" завжди містить 800 записів, які представляють результат найостанніших розрахунків статистики.

  • Одного разу сервер статистики перестав вважати деякі гільдії і вперто виставляв їм одне і те ж кількість очок Я не помічав цієї помилки кілька місяців до тих пір, поки глава однієї з топ-гільдій не написала мені про дивну поведінку цифр. Яке ж було моє здивування, коли виявилося, що ця гільдія набрала таку кількість очок (більше двох мільярдів), що ця цифра перестала поміщатися в базі даних. Тип INTEGER якраз і вміщував таку цифру (2 мільярди 147 мільйонів 483 тисячі 647), а більше просто не міг. Я змінив тип комірки пам'яті на наступний BIGINT, і все запрацювало.

    З тих пір я не належу до цифр в своїх прогнозах настільки безтурботно.

  • Найчастіше сайт відвідують у вівторок. Це самий "посетітельний" день. А всього в день сайт відвідують в середньому 500 різних людей. Рекорд - 921 чоловік за добу.
  • Сервер "Спадщина Джун" міг бути підключений в минулій версії сайту протягом п'яти хвилин, але не підключався більше року. Причина банальна - я забував, а коли пам'ятав - не мав доступу до вихідного коду і кожен раз обіцяв собі, що зроблю це. Абидно досі.

    Едрён батон, не думав що у ГОЛ такий відрив від Армади на ГВ.

    Статистика це добре.

    Ще пам'ятається був такий ось сайт у нього взагалі супер функціонал.

    Якби його хто-нить реанімував

    1) Чи можна було зробити все сервера.

    3) динаміка БСЛ коштує +1 місце. Я, чесно кажучи, скільки пам'ятаю, вони завжди на цьому місці.

    4) Оновлення раз о третій годині не дуже актуально: офіційний сервер працює з інтервалом півгодини, максимум годину. Правда у мене трохи складніше - мені треба обійти всі сервера. Тому виставлений паркан однієї сторінки з одного з Шардена раз в три хвилини.

    А так дуже непогано зроблено, є поділ по фракціях, нормальна колірна гамма, сортування.

    Можна, але гільдія "расколовская" і статистика по інших серверів не цікава.

    Дельта береться сумарна без прив'язки до 4 вранці. Тим більше, як Ви говорите, статистика оновлюється раз на півгодини-годину, то при чому тут 4 годині ранку?

    Раз на три години - цілком нормальний час, тому що live трансляцію робити не хочеться) Статистики по набору за годину немає, є тільки за добу, але і це цілком вистачає, щоб зрозуміти динаміку набору.

    P.S. Від статистики по набору за годину і я відмовився. Користь сумнівна, а контрольних точок в 24 рази більше.

    На сайті прикручена форма сторонньої системи для обговорення ідей. Якщо у вас є якийсь процес, який доводиться виконувати вручну, його можна обговорювати в цій системі разом з іншими користувачами. Якщо виявиться, що багато людей робить якусь марними роботу, я постараюся автоматизувати вам процес. Але без ваших обговорень, я можу до цього не здогадатися)

    Схожі статті