Поля типа Счетчик — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
Строка 13: Строка 13:
  
 
В xml-драйвере поля типа counter являются алиасом поля int.
 
В xml-драйвере поля типа counter являются алиасом поля int.
 +
[[category:Архитектура UMI.CMS]]

Версия 22:41, 26 января 2011

Описание

Поле счетчик - новое поле числового типа, предназначенное для хранения часто изменяющихся целочисленных данных. Предполагается хранить в этих полях такие данные, как:

  • количество просмотров страницы
  • различные рейтинги
  • количество показов/переходов в баннерах
  • промежуточные вычисления - кол-во комментариев, тем и т.д..

Символьное название этого типа полей - "counter".

Внутреннее устройство

Данные этих полей хранятся в отдельной таблице cms3_object_content_cnt для ускорения доступа к данным. При изменении значения поля в запросе передается не новое абсолютное значение, а сложение предыдущего значения с дельтой между новым и старым результатом. Это позволяет избежать коллизий при одновременном изменении данных на уровне приложения (см. проблему с подсчетом показов баннеров на высокопосещаемых сайтах), на уровне БД mysql разруливает это уже сам.

В xml-драйвере поля типа counter являются алиасом поля int.