TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

How we’ve made Raptor fast

178 点作者 triskweline超过 10 年前

21 条评论

gnufied超过 10 年前
Just some glaring inconsistencies that I found:<p>1.<p>&gt; It’s less work for the user. You don’t have to setup Nginx. If you’re not familiar with Nginx, then using Raptor means you’ll have one tool less to worry about.<p>&gt;For example, our builtin HTTP server doesn’t handle static file serving at all, nor gzip compression.<p>Sounds like I would need nginx(or another frontend server) anyways?<p>2. &gt; By default, Raptor uses the multi-process blocking I&#x2F;O model, just like Unicorn.<p>&gt; When we said that Raptor’s builtin HTTP server is evented, we were not telling the entire truth. It is actually hybrid multithreaded and evented.<p>So, which it is? I assume by default is multi-process + events, but a paid version offers multithreaded + events? If so, isn&#x27;t unicorn&#x27;s model of multi-process+blocking IO is pretty good as well because OS becomes load balancer in that case.<p>Overall it seems they wrote a very fast web server. Kudos to that! But I don&#x27;t think the web server was ever the problem for Rack&#x2F;Ruby apps? Still on fence with this one until more details emerge. :-)
评论 #8588505 未加载
bratsche超过 10 年前
Does it seem weird to anyone else that they&#x27;re doing all this marketing for a project that&#x27;s supposedly going to be open source? Why all the suspense, why not just release it? Or, if it&#x27;s not ready yet, why not just finish it and then start promoting it?
评论 #8588339 未加载
评论 #8588334 未加载
bithive123超过 10 年前
As someone working in an enterprise environment, I&#x27;ve sort of lost interest in this breed of Rack server now that I&#x27;ve gotten used to having SSO and LDAP authorization available via Apache modules, to name a few features. Apache allows me to accommodate all sorts of requirements like setting up vhosts that require authentication except on the LAN, or vhosts which allow members of certain groups to access an internal app via reverse proxying.<p>I don&#x27;t mean to be negative; other posters have that angle covered. But I would comment that this ongoing proliferation in prefork backends is hardly disruptive to organizations who have already made significant commitments to Ruby web apps. Our Apache&#x2F;Passenger servers aren&#x27;t going away anytime soon.
rarepostinlurkr超过 10 年前
This is Passenger Phusion +1. As was pointed out in a thread several months ago, the DNS resolves to the same place. The writing style is similar and the feature set far too mature for a 1.0 product.
randall超过 10 年前
How would one use this on Heroku? It doesn&#x27;t support static file transfers allegedly... and per Heroku they require your app server to serve them by default.<p><a href="https://github.com/heroku/rails_12factor#rails-4-serve-static-assets" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;heroku&#x2F;rails_12factor#rails-4-serve-stati...</a><p>Any ideas?
评论 #8588191 未加载
评论 #8588184 未加载
fiatmoney超过 10 年前
&quot;You will need 5000 processes (1 client per process). A reasonably large Rails app can consume 250 MB per process, so you’ll need 1.2 TB of RAM.&quot;<p>Quibble: most multi-process web servers use fork() for child processes, which means they can share identical memory pages.
评论 #8587882 未加载
评论 #8589392 未加载
评论 #8587913 未加载
hurrycane超过 10 年前
I strongly believe that this is the next version of Phusion Passenger.
评论 #8587992 未加载
triskweline超过 10 年前
Spoiler: Insane amounts of low-level optimization.
评论 #8587626 未加载
评论 #8587994 未加载
评论 #8587700 未加载
jonaphin超过 10 年前
Congratulations on Raptor, I&#x27;ll definitely give it a whirl. Regarding static asset serving, I&#x27;m fairly certain serving them through the application server is often not the way to go anyway.
resca79超过 10 年前
Raptor seems pretty interesting, but personally I don&#x27;t like its marketing approach, and I&#x27;m not the only one.<p>On twitter some ruby heroes say : &quot; Raptor is 4x faster than existing ruby web servers for hello world applications&quot; :)<p>The strong proclamations in favour of an open source project is a little bit strange if the open code is not yet released.<p>However I hope that all graphs on the home page are real for the ruby programmers happiness
alvare超过 10 年前
<a href="http://www.yesodweb.com/blog/2012/11/warp-posa" rel="nofollow">http:&#x2F;&#x2F;www.yesodweb.com&#x2F;blog&#x2F;2012&#x2F;11&#x2F;warp-posa</a>
covi超过 10 年前
The section &quot;Hybrid evented&#x2F;multithreaded: one event loop per thread&quot; suggests that the whole model is basically SEDA [1]. I&#x27;m surprised the article does not directly reference the project&#x2F;paper.<p>[1] <a href="http://www.eecs.harvard.edu/~mdw/papers/seda-sosp01.pdf" rel="nofollow">http:&#x2F;&#x2F;www.eecs.harvard.edu&#x2F;~mdw&#x2F;papers&#x2F;seda-sosp01.pdf</a>
jrk超过 10 年前
The &quot;hybrid&quot; IO architecture is historically known as AMPED (asynchronous multi-process event driven): <a href="https://www.usenix.org/legacy/event/usenix99/full_papers/pai/pai.pdf" rel="nofollow">https:&#x2F;&#x2F;www.usenix.org&#x2F;legacy&#x2F;event&#x2F;usenix99&#x2F;full_papers&#x2F;pai...</a>
simonmales超过 10 年前
Puma says it runs best when using Rubinius or JRuby, but from my limited understanding, not everything can run on those implementations.<p>Are there any giveaways in the blog that wouldn&#x27;t allow Raptor to run on Rubinius or JRuby?
评论 #8590603 未加载
评论 #8589104 未加载
jcampbell1超过 10 年前
Does anyone know if the 60.000 in the chart means 60 or 60,000?
评论 #8588677 未加载
评论 #8588682 未加载
评论 #8588561 未加载
Ono-Sendai超过 10 年前
Not bad work. Seems somewhat futile though, since the speed will probably be massively slowed down by the actual ruby application code and database accesses etc..
评论 #8588054 未加载
评论 #8587832 未加载
mrinterweb超过 10 年前
I am all for a faster ruby application server. If Raptop can stand behind its claims on November 25th, that will be the best birthday present I could get.
corford超过 10 年前
Slightly OT but does uwsgi feature much in the ruby world? &#x2F;from a curious python guy
评论 #8588171 未加载
评论 #8587660 未加载
评论 #8587707 未加载
swrobel超过 10 年前
Does it support SPDY?
coned88超过 10 年前
what are these instead of just using a webserver like apache or nginx?
评论 #8587593 未加载
评论 #8587610 未加载
评论 #8587611 未加载
kondro超过 10 年前
Does this mean that the majority of the performance improvements over Puma actually come from the fact that they are using the considerably less battle-tested HTTP parser of PicoHTTPParser over the Mongrel one?<p>Of course, this may be mitigated by the fact that any reasonable production environment will have a web server layer over the app server&#x2F;s anyway for load balancing, fail-over and exploit detection&#x2F;prevention anyway.
评论 #8587767 未加载