UNPKG

cnpmcore

Version:

Private NPM Registry for Enterprise

66 lines 5.7 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; import { Inject } from 'egg'; import { Schedule, ScheduleType } from 'egg/schedule'; import { SyncMode } from "../../common/constants.js"; let executingCount = 0; let SyncPackageWorker = class SyncPackageWorker { async subscribe() { if (this.config.cnpmcore.syncMode === SyncMode.none) return; if (executingCount >= this.config.cnpmcore.syncPackageWorkerMaxConcurrentTasks) return; executingCount++; try { let task = await this.packageSyncerService.findExecuteTask(); while (task) { const startTime = Date.now(); this.logger.info('[SyncPackageWorker:subscribe:executeTask:start][%s] taskId: %s, targetName: %s, attempts: %s, params: %j, updatedAt: %s, delay %sms', executingCount, task.taskId, task.targetName, task.attempts, task.data, task.updatedAt, startTime - task.updatedAt.getTime()); await this.packageSyncerService.executeTask(task); const use = Date.now() - startTime; this.logger.info('[SyncPackageWorker:subscribe:executeTask:success][%s] taskId: %s, targetName: %s, use %sms', executingCount, task.taskId, task.targetName, use); if (executingCount >= this.config.cnpmcore.syncPackageWorkerMaxConcurrentTasks) { this.logger.info('[SyncPackageWorker:subscribe:executeTask] current sync task count %s, exceed max concurrent tasks %s', executingCount, this.config.cnpmcore.syncPackageWorkerMaxConcurrentTasks); break; } // try next task task = await this.packageSyncerService.findExecuteTask(); } } catch (err) { this.logger.error('[SyncPackageWorker:subscribe:executeTask:error][%s] %s', executingCount, err); } finally { executingCount--; } } }; __decorate([ Inject(), __metadata("design:type", Function) ], SyncPackageWorker.prototype, "packageSyncerService", void 0); __decorate([ Inject(), __metadata("design:type", Object) ], SyncPackageWorker.prototype, "config", void 0); __decorate([ Inject(), __metadata("design:type", Function) ], SyncPackageWorker.prototype, "logger", void 0); SyncPackageWorker = __decorate([ Schedule({ type: ScheduleType.ALL, scheduleData: { interval: 1000, }, }) ], SyncPackageWorker); export { SyncPackageWorker }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3luY1BhY2thZ2VXb3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcG9ydC9zY2hlZHVsZS9TeW5jUGFja2FnZVdvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFrQixNQUFNLEtBQUssQ0FBQztBQUM3QyxPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBdUIsTUFBTSxjQUFjLENBQUM7QUFFM0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR3JELElBQUksY0FBYyxHQUFHLENBQUMsQ0FBQztBQVFoQixJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQVU1QixLQUFLLENBQUMsU0FBUztRQUNiLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxLQUFLLFFBQVEsQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUM1RCxJQUFJLGNBQWMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQ0FBbUM7WUFBRSxPQUFPO1FBRXZGLGNBQWMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQztZQUNILElBQUksSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzdELE9BQU8sSUFBSSxFQUFFLENBQUM7Z0JBQ1osTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxxSUFBcUksRUFDckksY0FBYyxFQUNkLElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsUUFBUSxFQUNiLElBQUksQ0FBQyxJQUFJLEVBQ1QsSUFBSSxDQUFDLFNBQVMsRUFDZCxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FDckMsQ0FBQztnQkFDRixNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2xELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxTQUFTLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNkLDRGQUE0RixFQUM1RixjQUFjLEVBQ2QsSUFBSSxDQUFDLE1BQU0sRUFDWCxJQUFJLENBQUMsVUFBVSxFQUNmLEdBQUcsQ0FDSixDQUFDO2dCQUNGLElBQUksY0FBYyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLG1DQUFtQyxFQUFFLENBQUM7b0JBQy9FLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNkLHNHQUFzRyxFQUN0RyxjQUFjLEVBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsbUNBQW1DLENBQ3pELENBQUM7b0JBQ0YsTUFBTTtnQkFDUixDQUFDO2dCQUNELGdCQUFnQjtnQkFDaEIsSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzNELENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHdEQUF3RCxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNuRyxDQUFDO2dCQUFTLENBQUM7WUFDVCxjQUFjLEVBQUUsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUFyRGtCO0lBRGhCLE1BQU0sRUFBRTs7K0RBQ21EO0FBRzNDO0lBRGhCLE1BQU0sRUFBRTs7aURBQ3VCO0FBR2Y7SUFEaEIsTUFBTSxFQUFFOztpREFDdUI7QUFSckIsaUJBQWlCO0lBTjdCLFFBQVEsQ0FBaUI7UUFDeEIsSUFBSSxFQUFFLFlBQVksQ0FBQyxHQUFHO1FBQ3RCLFlBQVksRUFBRTtZQUNaLFFBQVEsRUFBRSxJQUFJO1NBQ2Y7S0FDRixDQUFDO0dBQ1csaUJBQWlCLENBdUQ3QiJ9