- logger.info('Server listening on port %d', port)
- logger.info('Webserver: %s', CONFIG.WEBSERVER.URL)
- })
- })
+ // Caches initializations
+ VideosPreviewCache.Instance.init(CONFIG.CACHE.PREVIEWS.SIZE, CACHE.PREVIEWS.MAX_AGE)
+ VideosCaptionCache.Instance.init(CONFIG.CACHE.VIDEO_CAPTIONS.SIZE, CACHE.VIDEO_CAPTIONS.MAX_AGE)
+
+ // Enable Schedulers
+ BadActorFollowScheduler.Instance.enable()
+ RemoveOldJobsScheduler.Instance.enable()
+ UpdateVideosScheduler.Instance.enable()
+ YoutubeDlUpdateScheduler.Instance.enable()
+
+ // Redis initialization
+ Redis.Instance.init()
+
+ // Make server listening
+ server.listen(port, hostname, () => {
+ logger.info('Server listening on %s:%d', hostname, port)
+ logger.info('Web server: %s', CONFIG.WEBSERVER.URL)
+ })
+
+ process.on('exit', () => {
+ JobQueue.Instance.terminate()
+ })
+
+ process.on('SIGINT', () => process.exit(0))