]> cat aescling's git repositories - mastodon.git/commitdiff
Reduce user active duration from 7 days to 2 days (#8282)
authorEugen Rochko <eugen@zeonfederated.com>
Sun, 19 Aug 2018 01:50:34 +0000 (03:50 +0200)
committerGitHub <noreply@github.com>
Sun, 19 Aug 2018 01:50:34 +0000 (03:50 +0200)
To minimize fanout work and redis home feed storage space when
there are lots of recent sign-ups

app/models/user.rb

index c820c553a7fd28d0a81446987f460d6aec86e4f5..a2cf2565fd55b8b70d326cc51a6a4d36923a246a 100644 (file)
@@ -42,7 +42,14 @@ class User < ApplicationRecord
   include Settings::Extend
   include Omniauthable
 
-  ACTIVE_DURATION = 7.days
+  # The home and list feeds will be stored in Redis for this amount
+  # of time, and status fan-out to followers will include only people
+  # within this time frame. Lowering the duration may improve performance
+  # if lots of people sign up, but not a lot of them check their feed
+  # every day. Raising the duration reduces the amount of expensive
+  # RegenerationWorker jobs that need to be run when those people come
+  # to check their feed
+  ACTIVE_DURATION = ENV.fetch('USER_ACTIVE_DAYS', 7).to_i.days
 
   devise :two_factor_authenticatable,
          otp_secret_encryption_key: Rails.configuration.x.otp_secret