Skip to content

⎈ Blazing fast and configurable idempotency reverse-proxy designed for scale.

License

Notifications You must be signed in to change notification settings

toksdotdev/murundiri

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

👮Murundiri

Murundiri is a blazing fast and configurable idempotency reverse-proxy designed for scale.

Features

  • It can exist as either a proxy or stand-alone service.
  • Allows support for integration with a redis cluster for caching.
  • Supports redis clusters (at least 3).
  • Easily configuration via a .yaml file.
  • Supports all HTTP verbs.
  • Supports the following actions:
    • Service redirection (to any URI)
    • Returning custom JSON messages.
  • Supports TTL for idempotency (i.e. time before idempotency expires)

Important

The core implementation has been implemented, although, this isn't ready for production use yet.

Roadmap

  • Implement murundiri config parser
  • Add reverse proxy
    • Implement proxy request interceptor
    • Validate request info based on idepotency rule
  • Cache idempotency fields to redis
    • Implement idempotency support.
    • Support 100% async for redis client ( i.e. both normal or cluster mode).
  • Support mounting of proxy on custom ip & port.
  • Add proper Document the config file
  • Add TLS support.
  • Support infinity idempotency TTL.

Contributing

If you find any issue, bug, or missing feature, please kindly create an issue or submit a pull request, as it will go a long way in helping other Rustaceans grow.

License

This repository is open-sourced software licensed under the MIT license.

About

⎈ Blazing fast and configurable idempotency reverse-proxy designed for scale.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published