do
⚙️ A dependency injection toolkit based on Go 1.18+ Generics. (by samber)
redis-rb
A Ruby client library for Redis (by redis)
Our great sponsors
do | redis-rb | |
---|---|---|
6 | 8 | |
1,585 | 3,943 | |
- | 0.2% | |
5.5 | 7.5 | |
about 2 months ago | 6 days ago | |
Go | Ruby | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
do
Posts with mentions or reviews of do.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-02-18.
- Google’s Wire: Automated Dependency Injection in Go
-
Genjector: Reflection-free Run-Time Dependency Injection framework for Go 1.18+
How does this compare with https://github.com/samber/do ?
-
Modular monolithic codebase architecture example using Hooks and Do (for DI)
Last week I posted here about a new library that I released called hooks that was generally well-received. I've since built out an example application using hooks and do (excellent library for dependency-injection) to not only highlight use-cases for hooks but also to demonstrate the larger idea/concept I had for using hooks to build modular monoliths with Go that I wanted to share and perhaps start a discussion about.
-
Hooks: Simple, type-safe hook system for Go
It's not, but I've been thinking about it. I may experiment with it in a different branch of a different repo. I'm not sure if everyone would want hooks included or baked in to Pagoda, but I do think it would be a very good fit. I recently worked on and published an application example using hooks and do (for DI) to emphasize a fully modular architecture: https://github.com/mikestefanello/hooks-example. That highlights the vision I had for the overall approach with hooks, and I think it came out quite nice. I'd really like feedback on that, so if you have any, please let me know.
- Show HN: A dependency injection library based on Go 1.18 Generics
- A dependency injection toolkit based on Go 1.18+ Generics. Support for health checks and graceful shutdown.
redis-rb
Posts with mentions or reviews of redis-rb.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-08-12.
-
Show HN: FalkorDB fork from RedisGraph bringing it back to life
You're right the general client doesn't have the stack support yet. https://github.com/redis/redis-rb.
-
Monitor Ruby Application Performance with Magic Dashboards
Sidekiq integration - requires the Redis gem 3.3.5 or higher. For this integration, the AppSignal gem 2.9.5 or higher is recommended.
-
Connect to Redis cluster with encryption in-transit enabled using redis-rb gem
It mentions hiredis. A quick look at the redis-rb source code yields that this is coming from Hiredis connection: https://github.com/redis/redis-rb/blob/6542934f01b9c390ee450bd372209a04bc3a239b/lib/redis/connection/hiredis.rb#L18
-
Provide Redis cluster endpoint in Rails Cache configuration
You're likely already using this library to connect, but check out these docs: https://github.com/redis/redis-rb#cluster-support
-
Redis shards auto discovery in redis-rb client
I use redis-rb to connect to my Redis cluster (multi shard/node architecture) from my Rails app. In the documentation, I can see that it is enough to provide the cluster endpoint while initialising the client and the client will discover the node endpoints along with their respective keys slot using the cluster-nodes command:
-
Use Redis Sets to track and expire cache keys in Rails
The redis-rb gem is not thread-friendly by default. If you use redis-rb without a connection pool you will end up with race conditions on Redis accesses.
What are some alternatives?
When comparing do and redis-rb you can also consider the following projects:
wire - Compile-time Dependency Injection for Go
Clickhouse - A Ruby database driver for Clickhouse
fx - A dependency injection based application framework for Go.
Redic - Lightweight Redis Client
dig - A reflection based dependency injection toolkit for Go.
Cassandra Driver - [MAINTENANCE ONLY] DataStax Ruby Driver for Apache Cassandra
goioc/di - Simple and yet powerful Dependency Injection for Go
TinyTDS - TinyTDS - Simple and fast FreeTDS bindings for Ruby using DB-Library.
di - 🛠 A full-featured dependency injection container for go programming language.
mongo-ruby-driver - The Official MongoDB Ruby Driver
gocontainer - Simple Dependency Injection Container
DataObjects