https://github.com/gocardless/prometheus-client-ruby-data-stores-experiments
https://github.com/gocardless/prometheus-client-ruby-data-stores-experiments
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/gocardless/prometheus-client-ruby-data-stores-experiments
- Owner: gocardless
- Created: 2018-11-08T15:04:16.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-08-27T17:02:56.000Z (almost 4 years ago)
- Last Synced: 2025-04-11T11:48:16.818Z (about 1 year ago)
- Language: Ruby
- Size: 37.1 KB
- Stars: 2
- Watchers: 66
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Prometheus Ruby Client Data Stores Experiments
As part of our proposal of having [Swappable Data Stores](https://github.com/prometheus/client_ruby/pull/95)
for the Ruby Client, we wrote many different stores, and ran a significant number of
benchmarks to make sure our proposal performed adequately, and to choose what was the
sweet spot of runtime performance, code simplicity, and confidence / stability of each
store, to decide which stores should be proposed as the official ones.
In the repository, we share *all* the different stores that we wrote, plus all the
benchmark and test scripts we created to make sure things worked the way we expected,
and the results of those benchmarks.
## Repo Contents
- **Benchmarks**: All our basic and detailed benchmarks, in the `/benchmarks` directory.
- **Data Stores**: All the other data stores we created in the process of proposing the
3 that ended up in the official repo. In the `/data_stores` directory.
- **Tests for the data stores**: In the `/spec` directory.
## Running Tests
The Data Stores included in this repo have tests. Simply run:
```ruby
bundle exec rspec
```
**WARNING:** The Specs for the Redis store start by flushing DB #13. If you have data
in Redis, in DBs other than 0 (the default), you might want to check #13 before running
these tests, or your data may go away.