可能重复:
Sinatra 是多线程的吗?
我有一个需要在 Ruby 1.8.7 上运行的 Web 服务。目前我正在使用带有 Thin 的 Sinatra 来托管服务。
我做了一个测试来提交两个请求:“A”和“B”。如果我只提交 A,这只是一个“helloworld”请求,我会立即得到结果。如果我先发送请求 B,这比请求 A 花费更多的时间和资源,我会在大约同一时间收到 A 和 B 的结果。似乎 Sinatra 同步处理它们。
有没有办法让 Sinatra 多线程?
可能重复:
Sinatra 是多线程的吗?
我有一个需要在 Ruby 1.8.7 上运行的 Web 服务。目前我正在使用带有 Thin 的 Sinatra 来托管服务。
我做了一个测试来提交两个请求:“A”和“B”。如果我只提交 A,这只是一个“helloworld”请求,我会立即得到结果。如果我先发送请求 B,这比请求 A 花费更多的时间和资源,我会在大约同一时间收到 A 和 B 的结果。似乎 Sinatra 同步处理它们。
有没有办法让 Sinatra 多线程?
Thin 是多线程的,但您需要告诉它要启动多少台服务器:thin start --servers 3
. 否则它将没有足够的工人来满足您的要求。请参阅文档中的用法。
您可能想查看async-sinatra。