Rails本身基于多个独立进程,这些进程在请求之间是无状态的.我需要在我的Rails应用程序中添加一个有状态的集中服务(游戏自动匹配器).
从我知道的一点点来看,我应该将有状态的服务作为机架应用程序.是否有一些关于如何制作机架应用程序的教程,以及如何与Rails进行通信.使用Rails部署它的惯用方法是什么,以及将它放在我的git Rails代码库中的惯用位置?
最佳答案 我在另一个问题中回答了我的问题:
How to read POST data in rack request
require 'json'
class Greeter
def call(env)
req = Rack::Request.new(env)
if req.post?
puts req.POST()
end
[200, {"Content-Type" => "application/json"}, [{x:"Hello World!"}.to_json]]
end
end
run Greeter.new
并使用JSON.parse(req.body.read)来解析POST数据.