Gold revenue: support longer-term memoization

This commit is contained in:
Chad Birch
2013-12-04 12:06:26 -08:00
committed by Neil Williams
parent 82a3a80f09
commit a17328dcfd
2 changed files with 11 additions and 5 deletions

View File

@@ -35,7 +35,8 @@ from r2.models.gold import (
gold_received_by_user,
days_to_pennies,
gold_goal_on,
gold_revenue_on,
gold_revenue_steady,
gold_revenue_volatile,
get_subscription_details,
TIMEZONE as GOLD_TIMEZONE,
)
@@ -4200,9 +4201,9 @@ class Goldvertisement(Templated):
tomorrow.month,
tomorrow.day,
tzinfo=GOLD_TIMEZONE)
revenue_today = gold_revenue_on(today)
revenue_today = gold_revenue_volatile(today)
yesterday = today - datetime.timedelta(days=1)
revenue_yesterday = gold_revenue_on(yesterday)
revenue_yesterday = gold_revenue_steady(yesterday)
revenue_goal = float(gold_goal_on(today))
revenue_goal_yesterday = float(gold_goal_on(yesterday))

View File

@@ -322,8 +322,13 @@ def gold_revenue_multi(dates):
for truncated_time, pennies in ENGINE.execute(query)}
@memoize("gold-revenue", time=600)
def gold_revenue_on(date):
@memoize("gold-revenue-volatile", time=600)
def gold_revenue_volatile(date):
return gold_revenue_multi([date]).get(date, 0)
@memoize("gold-revenue-steady")
def gold_revenue_steady(date):
return gold_revenue_multi([date]).get(date, 0)