https://github.com/jonatasmsantos/nestjs-standalone
Services with nestjs standalone for gRPC, Kafka, BullMQ (BullJs) e RabbitMQ
https://github.com/jonatasmsantos/nestjs-standalone
apachekafka bullmq grpc rabbitmq redis
Last synced: about 1 month ago
JSON representation
Services with nestjs standalone for gRPC, Kafka, BullMQ (BullJs) e RabbitMQ
- Host: GitHub
- URL: https://github.com/jonatasmsantos/nestjs-standalone
- Owner: JonatasMSantos
- Created: 2023-10-20T13:15:22.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-10-20T19:57:04.000Z (over 2 years ago)
- Last Synced: 2025-10-09T05:48:40.050Z (8 months ago)
- Topics: apachekafka, bullmq, grpc, rabbitmq, redis
- Language: TypeScript
- Homepage:
- Size: 92.8 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NestJS Standalone Services Example
Este é um projeto NestJS que demonstra como criar serviços standalone para gRPC, Kafka, BullMQ (BullJs) e RabbitMQ. Cada serviço é executado de forma separada em uma pasta CMD com arquivos específicos para cada um dos serviços. O objetivo é permitir que você inicie e gerencie esses serviços individualmente. Você pode executar esses serviços em contêineres Docker independentes, orquestrados usando docker-compose.
## Project Structure
A estrutura do projeto é organizada da seguinte forma:
```text
nestjs-standalone-services/
│
├── src/
│ ├── cmd/
│ │ ├── grpc-server.ts
│ │ ├── kafka-consumer.ts
│ │ ├── rabbit-consumer.ts
│ │ ├── queue-consumer.ts
│ ├── main.ts (Serviço HTTP principal)
│
├── nest-cli.json
├── package.json
├── tsconfig.json
├── README.md
└── docker-compose.yaml
```
## Comandos
Você pode usar os seguintes comandos para iniciar os serviços standalone individualmente:
### Servir os serviços separadamente
> Execução no ambiente de desenvolvimento:
``` bash
## grpc-server:dev
npm run start:dev -- --entryFile cmd/grpc-server
## grpc-server:prod
npm run start:prod -- --entryFile cmd/grpc-server
## kafka-server:dev
npm run start:dev -- --entryFile cmd/kafka-consumer
## kafka-server:prod
npm run start:prod -- --entryFile cmd/kafka-consumer
## rabbit-server:dev
npm run start:dev -- --entryFile cmd/rabbit-consumer
## rabbit-server:prod
npm run start:prod -- --entryFile cmd/rabbit-consumer
## queue-server:dev
npm run start:dev -- --entryFile cmd/queue-consumer
## queue-server:prod
npm run start:prod -- --entryFile cmd/queue-consumer
```
Você pode personalizar os serviços que deseja executar e as configurações dos contêineres no arquivo docker-compose.yaml.