mirror of
https://github.com/whyour/qinglong.git
synced 2026-06-30 20:35:09 +08:00
修改数据库加载
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
import DataStore from 'nedb';
|
||||
import config from '../config';
|
||||
import Logger from './logger';
|
||||
|
||||
interface Dbs {
|
||||
cronDb: DataStore;
|
||||
dependenceDb: DataStore;
|
||||
envDb: DataStore;
|
||||
appDb: DataStore;
|
||||
authDb: DataStore;
|
||||
}
|
||||
|
||||
const db: Dbs = {} as any;
|
||||
|
||||
export default () => {
|
||||
db.cronDb = new DataStore({ filename: config.cronDbFile });
|
||||
db.dependenceDb = new DataStore({ filename: config.dependenceDbFile });
|
||||
db.envDb = new DataStore({ filename: config.envDbFile });
|
||||
db.appDb = new DataStore({ filename: config.appDbFile });
|
||||
db.authDb = new DataStore({ filename: config.authDbFile });
|
||||
|
||||
// compaction data file
|
||||
db.cronDb.persistence.compactDatafile();
|
||||
db.envDb.persistence.compactDatafile();
|
||||
db.dependenceDb.persistence.compactDatafile();
|
||||
db.appDb.persistence.compactDatafile();
|
||||
db.authDb.persistence.compactDatafile();
|
||||
|
||||
db.cronDb.loadDatabase((err) => {
|
||||
if (err) throw err;
|
||||
});
|
||||
db.envDb.loadDatabase((err) => {
|
||||
if (err) throw err;
|
||||
});
|
||||
db.dependenceDb.loadDatabase((err) => {
|
||||
if (err) throw err;
|
||||
});
|
||||
db.appDb.loadDatabase((err) => {
|
||||
if (err) throw err;
|
||||
});
|
||||
db.authDb.loadDatabase((err) => {
|
||||
if (err) throw err;
|
||||
});
|
||||
|
||||
Logger.info('✌️ DB loaded');
|
||||
};
|
||||
|
||||
export const dbs: Dbs = db;
|
||||
@@ -5,19 +5,14 @@ import { Crontab, CrontabStatus } from '../data/cron';
|
||||
import CronService from '../services/cron';
|
||||
import EnvService from '../services/env';
|
||||
import _ from 'lodash';
|
||||
import { dbs } from '../loaders/db';
|
||||
|
||||
export default async () => {
|
||||
const cronService = Container.get(CronService);
|
||||
const envService = Container.get(EnvService);
|
||||
const dependenceService = Container.get(DependenceService);
|
||||
const cronDb = cronService.getDb();
|
||||
const envDb = envService.getDb();
|
||||
const dependenceDb = dependenceService.getDb();
|
||||
|
||||
// compaction data file
|
||||
cronDb.persistence.compactDatafile();
|
||||
envDb.persistence.compactDatafile();
|
||||
dependenceDb.persistence.compactDatafile();
|
||||
const cronDb = dbs.cronDb;
|
||||
const dependenceDb = dbs.dependenceDb;
|
||||
|
||||
// 初始化更新所有任务状态为空闲
|
||||
cronDb.update(
|
||||
|
||||
Reference in New Issue
Block a user