https://github.com/0x2c7/ruby_wolf
Tiny ruby web server for research and studying purpose
https://github.com/0x2c7/ruby_wolf
rack rails ruby webserver
Last synced: 10 months ago
JSON representation
Tiny ruby web server for research and studying purpose
- Host: GitHub
- URL: https://github.com/0x2c7/ruby_wolf
- Owner: 0x2c7
- License: mit
- Created: 2017-02-19T16:14:10.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-03-04T17:34:09.000Z (about 9 years ago)
- Last Synced: 2025-06-13T23:18:24.839Z (11 months ago)
- Topics: rack, rails, ruby, webserver
- Language: Ruby
- Size: 33.2 KB
- Stars: 19
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# RubyWolf
[](https://badge.fury.io/rb/ruby_wolf)
[](https://circleci.com/gh/nguyenquangminh0711/ruby_wolf)
Ruby wolf is a tiny ruby web server for rack-based application. This server follows pre-forked and event driven approach. Honestly, this web server is written for study and research purpose. I'm sure it could be used anywhere. So, don't use it in real world :)
## Installation
Add this line to your application's Gemfile:
```ruby
gem 'ruby_wolf'
```
And then execute:
$ bundle
Or install it yourself as:
$ gem install ruby_wolf
## Usage
Start your rack-based application with the following command:
`ruby_wolf -p 3000`
To explore the provided options, please use `ruby_wolf --help`
## Benchmark
Benchmark with some Hello world application, tested with Apache Benchmark, 10000 requests, 12 concurrences under local environment (Macbook Pro 2015 - Core i7, 16gb Ram)
### RubyWolf
```
50% 7ms
66% 11ms
75% 14ms
80% 15ms
90% 19ms
95% 24ms
98% 31ms
99% 33ms
100% 51ms (longest request)
```
### Puma
```
50% 25ms
66% 27ms
75% 28ms
80% 29ms
90% 31ms
95% 32ms
98% 35ms
99% 37ms
100% 39ms (longest request)
```
### Thin
```
50% 22ms
66% 23ms
75% 24ms
80% 24ms
90% 28ms
95% 30ms
98% 34ms
99% 36ms
100% 227ms (longest request)
```
Note that Hello world application is not considered to be a real application. Thus this benchmark doesn't mean much
## License
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).