Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

302
Views
¿Cómo usar RabbitMQ y REST-API en la aplicación Nest?

¡Buenos días!

Estoy tratando de implementar 2 microservices that communicate with each other through a message broker . But one of them should accept Http requests via REST-Api . Desafortunadamente, no entiendo cómo hacer que el microservicio escuche tanto la cola de mensajes como las solicitudes HTTP entrantes. Tal vez no entiendo algo en el paradigma de la comunicación a través de un intermediario de mensajes, pero ¿cómo recibir solicitudes del cliente y reenviarlas a la arquitectura de microservicios?

Main.ts

 import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; import {Transport, MicroserviceOptions} from '@nestjs/microservices' async function bootstrap() { const app = await NestFactory.createMicroservice<MicroserviceOptions>(AppModule, { transport: Transport.RMQ, options: { urls: ['amqp://rabbitmq:5672'], queue: 'hello_world', queueOptions: { durable: false }, }, }); await app.listen(); } bootstrap();

Como puede ver, ahora la aplicación no está escuchando en el puerto 3000 como en el enfoque estándar. ¿Lo que debe hacerse?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

La respuesta resultó ser bastante simple. NEST js tiene aplicaciones híbridas. Puede conocerlos aquí https://docs.nestjs.com/faq/hybrid-application#hybrid-application . Gracias a todos

 import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; import {Transport, MicroserviceOptions} from '@nestjs/microservices' async function bootstrap() { const app = await NestFactory.create(AppModule); const microservice = app.connectMicroservice({ transport: Transport.RMQ, options: { urls: ['amqp://rabbitmq:5672'], queue: 'hello_world', queueOptions: { durable: false }, }, }); await app.startAllMicroservices(); await app.listen(3000); } bootstrap();
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!