|
|
|
Ведение статистики количества просмотренных страниц
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Подскажите, может кто сталкивался с такой проблемой. Есть сайт, со средней нагрузкой, приблизительно 25000-30000 посещений в сутки. Нужно вести статистику количества просмотренных страниц и отображать их пользователю. Сейчас эта функция реализована следующим образом: Перед каждый запросом на открытие страницы идет запрос в базу данных UPDATE который увеличивает счетчик (определенное поле) на +1, потом идет второй запрос SELECT где получаем все нужные данные и показываем их пользователю. Так как тип таблицы MYISAM при каждом запросе UPDATE происходит блокировка базы, эта операция при средней нагрузке довольно сильно грузит систему. Как можно решить эту проблему? Может есть какой-то сервис, который просто показывает счетчик для каждой страницы или может количество просмотренных страниц писать не в базу, а в файл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2015, 10:44:18 |
|
||
|
Ведение статистики количества просмотренных страниц
|
|||
|---|---|---|---|
|
#18+
pr0n1xТак как тип таблицы MYISAM при каждом запросе UPDATE происходит блокировка базы, эта операция при средней нагрузке довольно сильно грузит систему. Как можно решить эту проблему?Переводите на InnoDB. pr0n1xМожет есть какой-то сервис, который просто показывает счетчик для каждой страницы или может количество просмотренных страниц писать не в базу, а в файл?Есть внешние счетчики, которые вообще ни вашу базу, ни ваши файлы не трогают. По многим параметрам они удобнее и функциональнее. А нередко и точнее, если нужно учитывать именно людей-посетителей, а не всех ботов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2015, 10:50:34 |
|
||
|
Ведение статистики количества просмотренных страниц
|
|||
|---|---|---|---|
|
#18+
pr0n1x, авторТак как тип таблицы MYISAM при каждом запросе UPDATE происходит блокировка базы ...точно? Мне как-то всегда казалось что только той таблицы, куда идет update ... сейчас нет возможности глянуть в мануал... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2015, 13:19:54 |
|
||
|
Ведение статистики количества просмотренных страниц
|
|||
|---|---|---|---|
|
#18+
Arhat109pr0n1x, авторТак как тип таблицы MYISAM при каждом запросе UPDATE происходит блокировка базы ...точно? Мне как-то всегда казалось что только той таблицы, куда идет update ... сейчас нет возможности глянуть в мануал...Конечно, таблицы. Это просто многозначное слово "база". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2015, 13:24:25 |
|
||
|
Ведение статистики количества просмотренных страниц
|
|||
|---|---|---|---|
|
#18+
miksoft, Тогда мне непонятно утверждение автора "сильно грузит базу" ... она что, на андроиде? 30000 запросов в сутки это в среднем 1 запрос (html) в 3-5сек... на каждый такой запрос (судя по первому посту) идет 1 апдейт к таблице, которая ровно на него и лочится... работы на пару-десяток миллисекунд. Может "проблема" где-то ишо?!? Просто именно так делал свой сервер статистики ... и нагрузка была похожая в то время. 20-25 тыс. посетителей (не ботов) в сутки ... с ботами было около 120к записей в эту таблицу ... и ничего не "нагружалось". По крайней мере от статистики. Так она ещё "принимала" JS-свистки "страница активна в браузере юзверя" ... каждые 10сек. Ну и сервер был прямо скажем "не айс", практически уже ноутбуки лучше. И все равно, пиковая нагрузка от 100 одновременных юзверей на сервере не превышала 55 запросов в сек ... итого, с отдачей страниц. А там были достаточно тяжелые выборки по 60-80 строк в sql-запросе и по 0.5сек на отработку... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2015, 16:27:30 |
|
||
|
Ведение статистики количества просмотренных страниц
|
|||
|---|---|---|---|
|
#18+
pr0n1xЗдравствуйте. Подскажите, может кто сталкивался с такой проблемой. Есть сайт, со средней нагрузкой, приблизительно 25000-30000 посещений в сутки. Масса разных программ анализаторов текстовых журналов существует. Анализ посещаемости часто не требует ни оперативности, ни суперточности по товарам и тд. Не говоря уже о внешних счетчиках типа google analitics и Яндекс.Метрика. Ну а если все-таки требует : делайте insert вместо update. Он блокируется не так. И не допускайте накопления большого объема первичных данных - сразу агрегируйте и удаляйте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2015, 18:01:40 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38974568&tid=1833122]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
48ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 189ms |
| total: | 292ms |

| 0 / 0 |
