HTTP
rack-mini-profiler
HTTP | rack-mini-profiler | |
---|---|---|
6 | 21 | |
2,987 | 3,665 | |
0.1% | 0.7% | |
5.8 | 7.5 | |
24 days ago | 4 months ago | |
Ruby | Ruby | |
MIT License | MIT License |
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.
HTTP
-
Best Ruby HTTP Clients in 2023
Where's http.rb?
-
Pattern Matching Interfaces in Ruby
I had submitted a PR against this repo, but I believe the two most interesting types to match against are responses and requests:
-
My project: railstart app
http
-
7 Ruby Standard libraries you should get to grips with
In the past I have opted to use the HTTP.rb gem, but for simple tasks it’s really useful to learn Net/http or even open-uri for simple GET requests.
-
The Best Ruby HTTP clients for 2021
I actually like HTTP.rb's API more, but they still can't make a decision about "base URL" API, which is quite valuable for API wrappers, e.g. @client = HTTPLibrary.new('https://api.base.com/v2/') and then @client.get('/foo').
-
Ruby on Rails + Auth0: Authenticating your API with an external authentication service
Everything will be created under the class Auth0, and it'll be using HTTP gem to perform the quests, but feel free to decide over your code organization and tools.
rack-mini-profiler
-
RoR Debugbar
Author of peek here. Honestly, I got burnt out. We stopped using this internally at GitHub which made it difficult to continue working on. Rails was going through its identity crisis with asset pipelines.
https://github.com/MiniProfiler/rack-mini-profiler gets you most of the way there and comes by default in the Gemfile for new Rails applications.
-
For RoR, see in production every method call, parameter and return value
This already exists to some degree: https://github.com/MiniProfiler/rack-mini-profiler
- How to reduce memory usage for your Rails app - R14 - Memory Quota Exceeded in Ruby (MRI)
- benchmark sql queries in an action?
-
A Trick For Reading Flamegraphs
rack-mini-profiler will generate flamegraphs for Rails backend requests.
-
How to make Turbo frames load faster?
Have you tried using https://github.com/MiniProfiler/rack-mini-profiler to get a clear breakdown of where your server is spending it's time filling the requests? If rack-mini-profiler is too much for you to deal with right now, you can still get a good idea just using the https://github.com/ruby/benchmark gem and wrapping some of your requests in a benchmark.
-
Active_storage first time need help!
# Bundle edge Rails instead: gem "rails", github: "rails/rails", branch: "main" gem "rails", "~> 7.0.4" # The original asset pipeline for Rails [https://github.com/rails/sprockets-rails] gem "sprockets-rails" # Use sqlite3 as the database for Active Record gem "sqlite3", "~> 1.4" # Use the Puma web server [https://github.com/puma/puma] gem "puma", "~> 5.0" # Use JavaScript with ESM import maps [https://github.com/rails/importmap-rails] gem "importmap-rails" # Hotwire's SPA-like page accelerator [https://turbo.hotwired.dev] gem "turbo-rails" # Hotwire's modest JavaScript framework [https://stimulus.hotwired.dev] gem "stimulus-rails" # Build JSON APIs with ease [https://github.com/rails/jbuilder] gem "jbuilder" # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem "tzinfo-data", platforms: %i[ mingw mswin x64_mingw jruby ] # Reduces boot times through caching; required in config/boot.rb gem "bootsnap", require: false # Use Sass to process CSS # gem "sassc-rails" # Use Active Storage variants [https://guides.rubyonrails.org/active_storage_overview.html#transforming-images] # gem "image_processing", "~> 1.2" group :development, :test do # See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem gem "debug", platforms: %i[ mri mingw x64_mingw ] end group :development do # Use console on exceptions pages [https://github.com/rails/web-console] gem "web-console" # Add speed badges [https://github.com/MiniProfiler/rack-mini-profiler] # gem "rack-mini-profiler" # Speed up commands on slow machines / big apps [https://github.com/rails/spring] # gem "spring" end group :test do # Use system testing [https://guides.rubyonrails.org/testing.html#system-testing] gem "capybara" gem "selenium-webdriver" gem "webdrivers" end
- What are the main suspects in a really slow Rails app?
-
My project: railstart app
rack-mini-profiler
-
Troubleshooting a RoR Application in Production
For a quick ad hoc peek at the performance of pages that you can request yourself, without having to go through the hoops of connecting to and committing to an external service, this gem can also be useful: https://github.com/MiniProfiler/rack-mini-profiler
What are some alternatives?
Faraday - Simple, but flexible HTTP client library, with support for multiple backends.
bullet - help to kill N+1 queries and unused eager loading
httparty - :tada: Makes http fun again!
ruby-prof - A ruby profiler. See https://ruby-prof.github.io for more information.
Typhoeus - Typhoeus wraps libcurl in order to make fast and reliable requests.
Peek - Take a peek into your Rails applications.
excon - Usable, fast, simple HTTP 1.1 for Ruby
Derailed Benchmarks - Go faster, off the Rails - Benchmarks for your whole Rails app
Unirest - Unirest in Ruby: Simplified, lightweight HTTP client library.
benchmark-ips - Provides iteration per second benchmarking for Ruby
XSR - XSR - eXtremely Simple REST client
perftools.rb - gperftools for ruby code