EventMachine::HttpRequest adapter for HTTP REST client
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
lib
spec
.gitignore
.rspec
.travis.yml
CHANGELOG.md
Gemfile1
Gemfile2
LICENSE
README.md
Rakefile
em-rest-client.gemspec

README.md

EM-REST-Client

This gem allows to use different HTTP implementation in RestClient with next adapters:

  • :net_http - Net::HTTP (default, blocking I/O)
  • :em_http - EventMachine::HttpRequest (non-blocking I/0)

Installation

Add this line to your application's Gemfile:

gem 'em-rest-client'

And then execute:

$ bundle

Or install it yourself as:

$ gem install em-rest-client

Usage

You may specify adapter for each request:

RestClient.get('https://www.google.com')
RestClient.get('https://www.google.com', adapter: :em_http)

Or you may specify adapter globaly:

RestClient.adapter = :em_http
RestClient.get('https://www.google.com')

Notes

When EventMachine is already running we assume that you are responsible for Fiber allocation. You can add Rack::FiberPool to your application middleware and it automatically provides a Fiber for each incoming HTTP request. It creates pool of Fibers and re-use fiber for each incoming HTTP request. Also you can control the connection pool size.

Authors

References