converted pageviews tracking to sorted set, and using pre-built getStatsForSet function

thanks @barisusakli
This commit is contained in:
psychobunny
2014-09-27 16:06:01 -04:00
parent 80ca6bb0a2
commit 144992426d
3 changed files with 10 additions and 50 deletions

View File

@@ -49,29 +49,13 @@ middleware.updateLastOnlineTime = function(req, res, next) {
};
middleware.incrementPageViews = function(req, res, next) {
var nextMonth = new Date(),
nextDay = new Date();
var today = new Date();
nextMonth.setMonth(nextMonth.getMonth() + 1, 1);
nextMonth.setHours(0, 0, 0, 0);
nextDay.setDate(nextDay.getDate() + 1);
nextDay.setHours(0, 0, 0, 0);
db.increment('pageviews:monthly', function(err) {
if (err) {
return;
}
db.pexpireAt('pageviews:monthly', nextMonth.getTime());
});
db.increment('pageviews:daily', function(err) {
if (err) {
return;
}
db.pexpireAt('pageviews:daily', nextDay.getTime());
});
today.setDate(today.getDate());
today.setHours(today.getHours(), 0, 0, 0);
db.sortedSetIncrBy('analytics:pageviews', 1, today.getTime());
next();
};