51 lines
1.2 KiB
JavaScript
51 lines
1.2 KiB
JavaScript
/**
|
|
* Script: Clear Teacher Cache
|
|
* Xóa tất cả cache liên quan đến teachers
|
|
*/
|
|
|
|
require('dotenv').config();
|
|
const { redisClient } = require('../config/redis');
|
|
|
|
async function clearTeacherCache() {
|
|
console.log('🧹 Clearing teacher cache...\n');
|
|
|
|
try {
|
|
// Redis client is already connected via config
|
|
console.log('✅ Using existing Redis connection\n');
|
|
|
|
// Delete all teacher-related cache patterns
|
|
const patterns = [
|
|
'teachers:list:*',
|
|
'teacher:*',
|
|
];
|
|
|
|
let totalDeleted = 0;
|
|
|
|
for (const pattern of patterns) {
|
|
console.log(`Searching for: ${pattern}`);
|
|
const keys = await redisClient.keys(pattern);
|
|
|
|
if (keys.length > 0) {
|
|
console.log(` Found ${keys.length} keys`);
|
|
await redisClient.del(...keys);
|
|
totalDeleted += keys.length;
|
|
console.log(` ✅ Deleted ${keys.length} keys\n`);
|
|
} else {
|
|
console.log(` No keys found\n`);
|
|
}
|
|
}
|
|
|
|
console.log('='.repeat(60));
|
|
console.log(`✅ Cache cleared! Total deleted: ${totalDeleted} keys`);
|
|
console.log('='.repeat(60));
|
|
|
|
process.exit(0);
|
|
|
|
} catch (error) {
|
|
console.error('❌ Error:', error.message);
|
|
process.exit(1);
|
|
}
|
|
}
|
|
|
|
clearTeacherCache();
|