dhiaayachi / temporal

Temporal service
https://docs.temporal.io
MIT License
0 stars 0 forks source link

Does temporal support message/event queue? #364

Open dhiaayachi opened 2 months ago

dhiaayachi commented 2 months ago

Is your feature request related to a problem? Please describe. I'm thinking of adopting temporal in my current system for decoupling durable complex tasks from microservices, which should implement only atomic functionalities I assume. However, the microservices are cross clusters therefore behind their firewalls. And, Temporal only supports gRPC so I don't know how friendly it is to the firewalls.

Describe the solution you'd like I need a firewall-friendly solution of orchestrating durable tasks. e.g. Maybe agents are needed to be deployed in each clusters/vnets communicating with the orchestrator as control plane. So any suggestions from temporal perspective?

Describe alternatives you've considered DIY by using gocelery or machinery to implement the whole solution.

Additional context Thanks.

dhiaayachi commented 1 month ago

Thanks for the feature request! Temporal currently only supports gRPC for communication, which can be challenging behind firewalls.

Here's a workaround to consider:

  1. Use a proxy server: You can deploy a proxy server, such as Nginx or Envoy, within your cluster and configure it to route gRPC traffic from your microservices to the Temporal server. This allows you to control the network traffic and make Temporal accessible without exposing the gRPC port directly.
  2. Use a custom client library: If you're willing to invest in custom development, you could write a client library that utilizes a different protocol, such as HTTP, to communicate with Temporal. However, this might require significant effort and could potentially impact the performance and features offered by the Temporal platform.

You can find detailed information about setting up a proxy server for your Temporal Service in our documentation.