forked from matadon/mizuno
-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Don Werve
committed
Jul 3, 2010
1 parent
b8c2117
commit 5fc2330
Showing
16 changed files
with
38 additions
and
956 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,41 +1,33 @@ | ||
is a high-performance Rack adapter for JRuby apps, | ||
based on the latest version of the Jetty webserver | ||
(http://jetty.codehaus.org/jetty/) | ||
Mizuno is a set of Jetty-powered running shoes for JRuby/Rack. | ||
|
||
To use rack-handler-jetty with your Rack app: | ||
To use Mizuno with your Rack app: | ||
|
||
gem install rack-handler-jetty | ||
cd /path/to/my/app | ||
jetty | ||
gem install mizuno | ||
cd /path/to/my/rack/app | ||
mizuno | ||
|
||
We get our performance by implementing a direct servlet-to-rack bridge | ||
via JRuby's Java integration layer. | ||
...and you're off and running. You don't need to set up a Java web | ||
container for your Rack application to run under JRuby, because Mizuno | ||
works just like Mongrel, WEBRick, Thin, or any other standard Rack | ||
handler. | ||
|
||
The numbers speak for themselves: | ||
Mizuno is the fastest option for Rack applications on JRuby: | ||
|
||
ruby 1.9.1p243 | ||
Mizuno: 6106.66 req/s (mean) | ||
Jetty (via jruby-rack): 2011.67 req/s (mean) | ||
Mongrel: 1479.15 req/sec (mean) | ||
|
||
Mongrel | ||
Webrick | ||
Thin | ||
Mizuno also supports asynchronous request handling. | ||
|
||
JRuby 1.5.0RC1 on Java SE Server VM 1.6.0_17-b04 | ||
All the speed comes from Jetty 7; Mizuno just ties it to Rack through | ||
JRuby's Ruby/Java integration layer. | ||
|
||
Mongrel | ||
Webrick | ||
rack-handler-jetty | ||
Jetty+Warbler | ||
Tomcat+Warbler | ||
Note that Mizuno is NOT a direct replacement for jruby-rack or Warbler, | ||
because it doesn't produce WAR files or make any attempt to package a | ||
Rack application for installation in a Java web container. | ||
|
||
rack-handler-jetty also provides access to the underlaying servlet | ||
context, allowing for runtime additions of additional servlets and | ||
filters. We plan on using this to tie in the cometd servlet | ||
as a piece of Rack middleware, which will provide a simple way to | ||
add Comet funtionality, via the Bayeux protocol, to any Rack | ||
application. | ||
|
||
Note that rack-handler-jetty is NOT a direct replacement for jruby-rack | ||
or Warbler, as we don't produce WAR files or make any attempt to package | ||
a Rack application for installation in a Java web container. Rather, we | ||
just make it really easy to use Jetty as a webserver for your Rack | ||
applications. | ||
There's also a few features that I have yet to implement: | ||
1. Integrate the cometd servlet to provide Comet/Bayeux. | ||
2. Route Jetty's logs into Rack::Logger. | ||
3. Add hooks for realtime monitoring of server performance. | ||
4. Add the ability to run multiple Rack apps in a single JVM. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Binary file not shown.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.