]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - server/lib/worker/parent-process.ts
Fix workers constants
[github/Chocobozzz/PeerTube.git] / server / lib / worker / parent-process.ts
CommitLineData
c53853ca
C
1import { join } from 'path'
2import Piscina from 'piscina'
3import { WORKER_THREADS } from '@server/initializers/constants'
4import { downloadImage } from './workers/image-downloader'
3a54605d 5import { processImage } from '@server/helpers/image-utils'
c53853ca
C
6
7const downloadImagerWorker = new Piscina({
8 filename: join(__dirname, 'workers', 'image-downloader.js'),
9 concurrentTasksPerWorker: WORKER_THREADS.DOWNLOAD_IMAGE.CONCURRENCY,
10 maxThreads: WORKER_THREADS.DOWNLOAD_IMAGE.MAX_THREADS
11})
12
13function downloadImageFromWorker (options: Parameters<typeof downloadImage>[0]): Promise<ReturnType<typeof downloadImage>> {
14 return downloadImagerWorker.run(options)
15}
16
3a54605d
C
17// ---------------------------------------------------------------------------
18
19const processImageWorker = new Piscina({
20 filename: join(__dirname, 'workers', 'image-processor.js'),
ccd62a45
C
21 concurrentTasksPerWorker: WORKER_THREADS.PROCESS_IMAGE.CONCURRENCY,
22 maxThreads: WORKER_THREADS.PROCESS_IMAGE.MAX_THREADS
3a54605d
C
23})
24
25function processImageFromWorker (options: Parameters<typeof processImage>[0]): Promise<ReturnType<typeof processImage>> {
26 return processImageWorker.run(options)
27}
28
c53853ca 29export {
3a54605d
C
30 downloadImageFromWorker,
31 processImageFromWorker
c53853ca 32}