Skip to content

Commit

Permalink
upd: move TTL after pipeline execution
Browse files Browse the repository at this point in the history
  • Loading branch information
Mar0xy committed Nov 1, 2023
1 parent 4fbd9dc commit 61c66b3
Showing 1 changed file with 11 additions and 11 deletions.
22 changes: 11 additions & 11 deletions packages/backend/src/core/HashtagService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -177,29 +177,29 @@ export class HashtagService {
// チャート用
redisPipeline.pfadd(`hashtagUsers:${hashtag}:${window}`, userId);

const TTLwindow = await this.redisClient.ttl(`hashtagUsers:${hashtag}:${window}`);

if (TTLwindow === -1) {
redisPipeline.expire(`hashtagUsers:${hashtag}:${window}`,
60 * 60 * 24 * 3, // 3日間
//'NX', // "NX -- Set expiry only when the key has no expiry" = 有効期限がないときだけ設定
);
}

// ユニークカウント用
// TODO: Bloom Filter を使うようにしても良さそう
redisPipeline.sadd(`hashtagUsers:${hashtag}`, userId);

await redisPipeline.exec();

const TTL = await this.redisClient.ttl(`hashtagUsers:${hashtag}`);

if (TTL === -1) {
redisPipeline.expire(`hashtagUsers:${hashtag}`,
this.redisClient.expire(`hashtagUsers:${hashtag}`,
60 * 60, // 1時間
//'NX', // "NX -- Set expiry only when the key has no expiry" = 有効期限がないときだけ設定
);
}

redisPipeline.exec();
const TTLwindow = await this.redisClient.ttl(`hashtagUsers:${hashtag}:${window}`);

if (TTLwindow === -1) {
this.redisClient.expire(`hashtagUsers:${hashtag}:${window}`,
60 * 60 * 24 * 3, // 3日間
//'NX', // "NX -- Set expiry only when the key has no expiry" = 有効期限がないときだけ設定
);
}
}

@bindThis
Expand Down

0 comments on commit 61c66b3

Please sign in to comment.