#59 楼 @jimrokliu 至少我在本地用 Sinatra 做测试的时候是不发生 Exception 的
#57 楼 @jimrokliu 那你给个 Example?那个 README 所有 Example 我都研究过的,没有符合要求的
#55 楼 @jimrokliu 不是要并发请求啊。。。是真正的无阻塞
好棒~~
Ruby 中竟然有这么神奇的异步库 了不起啊!是该好好学习源码了
恩,跑通了,我做了一个样例,你看看: https://github.com/halida/nonblocking_http
我觉得可以基于这个方法做一个 HTTPRequest 的 gem 了
#29 楼 @linjunhalida 哇 好棒!!谢谢!
#25 楼 @linjunhalida 我们只有一个效率很慢的 delayed job,这是因为数据库本来就要维护。resque 要用到 redis 就需要 ops 做额外工作去维护了呀,工作量变大又不涨工资的事情他们能批准嘛?
#22 楼 @linjunhalida 你是说 resque 那种?我们的 OPS 大概是不会批准的吧。。我们项目里倒是 delayed job,但是我觉得往表里写数据和发送 http 请求相比效率差不多的。。。
#20 楼 @linjunhalida 说得也是。我觉得我这思路其实很接近 UDP 的。。
是 Stream API? https://dev.twitter.com/docs/streaming-apis
这个相当于挂长连接了吧?其实对于 HTTP 而言,一般挂长连接的时候是只收不发的,比如 SSE 就是这样。 如果要做到一直发,就不能用 HTTP 了。。
#17 楼 @linjunhalida 又不是看最新版本的。。这也叫懂?关键是我还不懂硬件,所以对于 Kernel 源码也只是一知半解。。
#11 楼 @linjunhalida 底层东西我就不懂了呀。。哪个 C 的发送库能够实现这个功能呢?
#9 楼 @linjunhalida 当然没这么简单,很多号称 non-blocking 的 http 发送实际执行的时候还是在明显的 block(最简单的例子就是EM.run
),无论 callback 是否为空。我希望的就是真正 non-blocking。