|
|
|
| Нужно мнение специалистов.
Задача следующая:
Аппликация ответственная за подсчёт показов банеров.
Тоесть нужно подсчитывать сколько раз показался какой баннер.
Количество обращений около 10 000 в секунду.
Нужна статистика на каждый баннер на каждый день.
Делаю следующие:
1)При каждом показе баннера, обращение к php, insert в таблицу MEMORY (Mysql)
insert into banner_views_memory (banner_id) values ($banner_id)
2) Раз в 5 минут данные складываются и переносятся в постояную таблицу banner_stats. А затем таблица очищается.
Урезаный код:
DECLARE c1 CURSOR FOR select banner_id,count(banner_id) from banner_views_memory group by banner_id;
cursor_loop:LOOP
update banner_stats set views=views+l_views where banner_id=l_banner_id and date=CURRENT_DATE();
END LOOP cursor_loop;
truncate banner_views_memory;
Может можно что то оптимизировать ? Может есть более лучший способы ? | |
|
|