we have 3 microservices - a, b and c.
a needs response from b, b in order to give response to a, needs response from c. whenever c isn't available, b freezes, not only on current endpoint, but even on others, not related to microservice c
we use nestjs and kafkajs, here're minimal examples to reproduce the issue:
microservice a:
@MessagePattern('a')
async test(@Payload() data: any) {
return await lastValueFrom(await this.client.send('b', data))
}
microservice b:
@MessagePattern('b')
async test(@Payload() data: any) {
return await lastValueFrom(await this.client.send('c(non-existing)', data))
}
microservice c:
isn't available
kafka has default settings, each topic has 10 partitions
ask me any questions for clarification would be very thankful for any guesses as to how to fix this issue