带宽管理与轨道?(bandwidth management with rails?)

2019-07-31 08:28发布

我想知道是否有人知道的,你可以在某些方面是不依赖于Web服务器上的Rails应用程序中管理带宽的方式。 例如,每个帐户具有带宽限制。 在进出绑定的业务从每月津贴减去?

Answer 1:

一种选择是在application.rb中添加after_filter(使之适用于所有的行动),并执行以下操作:

def store_bandwidth_usage
   response_size = response.body.size
   # Assuming the User model has a bandwidth_usage attribute
   @current_user.increment!(:bandwidth_usage, response_size) 
end

当然,那么你就需要检查哪一个用户没走在他们分配的带宽,否则他们应该被拒绝访问的before_filter。

请记住,这将只计为一次击中轨道服务器的请求,由一个前端服务器填充任何请求(如图像)将不被包括在内。



文章来源: bandwidth management with rails?