Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: support redis transit #105

Open
dragon-master-5892 opened this issue Dec 24, 2024 · 0 comments
Open

Feature: support redis transit #105

dragon-master-5892 opened this issue Dec 24, 2024 · 0 comments

Comments

@dragon-master-5892
Copy link

Is your feature request related to a problem? Please describe.
Currently, Moleculer-Go does not support Redis as a transit layer. This limits flexibility when working in distributed systems where Redis is already being used as a central message broker or caching layer. Adding support for Redis would allow seamless integration and better performance in environments optimized for Redis.

Describe the solution you'd like
Implement Redis as an optional transit mechanism for Moleculer-Go. The solution should:

  • Allow configuration of Redis as a transit layer via environment variables or configuration files.
    
  • Support standard Redis features, such as pub/sub, clustering, and authentication.
    
  • Provide clear examples and API usage documentation, including configuration details, supported Redis versions, and error handling mechanisms.
    

Example usage:

service := moleculer.NewService(broker.Options{
    Transit: redis.NewRedisTransit(redis.Config{
        Address: "localhost:6379",
        Password: "",
        DB:       0,
    }),
})

Describe alternatives you've considered

  • Using NATS or Kafka as transit layers (both of which are supported). However, Redis is often preferred in many setups due to its simplicity and widespread use.
  • Implementing a custom transit layer outside of the framework, but this adds complexity and maintenance overhead.

Additional context
Supporting Redis as a transit layer aligns with Moleculer-Go's design principles of being modular and flexible. It would make Moleculer-Go more attractive to developers already leveraging Redis in their stack.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant