https://github.com/kristyancarvalho/multi-thread-image-processing
Benchmark comparativo entre processamento de imagens em single thread e utilizando Worker Threads em Node.js. Visa medir e comparar o desempenho de ambas as abordagens ao realizar operações de redimensionamento e conversão para escala de cinza em imagens.
https://github.com/kristyancarvalho/multi-thread-image-processing
jaavscript multithreading nodejs worker-pool worker-threads
Last synced: 9 months ago
JSON representation
Benchmark comparativo entre processamento de imagens em single thread e utilizando Worker Threads em Node.js. Visa medir e comparar o desempenho de ambas as abordagens ao realizar operações de redimensionamento e conversão para escala de cinza em imagens.
- Host: GitHub
- URL: https://github.com/kristyancarvalho/multi-thread-image-processing
- Owner: kristyancarvalho
- Created: 2024-06-15T03:18:26.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-29T01:00:31.000Z (over 1 year ago)
- Last Synced: 2025-01-23T20:17:26.393Z (11 months ago)
- Topics: jaavscript, multithreading, nodejs, worker-pool, worker-threads
- Language: JavaScript
- Homepage:
- Size: 30.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Benchmark: Processamento de imagens em pararelo com Node Worker Threads x Single-Thread
Este projeto demonstra o processamento de imagens utilizando o Node.js, comparando a performance entre processamento em single thread e com Worker Threads. As imagens de entrada são convertidas para escala de cinza e redimensionadas para uma largura de 800 pixels.
## Instalação
1. Instale as dependências:
```sh
npm install
```
2. Crie as pastas para as imagens:
```sh
mkdir images images_processed_single_thread images_processed_worker_threads logs
```
## Como Rodar
1. Adicione suas imagens na pasta `images`.
2. Execute o servidor principal:
```sh
npm start
```
3. Inicie os testes de processamento:
use `curl` para iniciar os testes. Exemplo, para processar 100 imagens, execute:
```sh
curl http://localhost:3000/test/100
```
## Features
1. Limpar pastas de imagens processadas:
```sh
npm run clean
```
## Logs
Os logs são gerados tanto no console quanto no arquivo `logs/app.log`. Eles incluem informações sobre o tempo de processamento e possíveis erros.
Desenvolvido por Kristyan Carvalho.