1
내 앱 컨트롤러가 타사 API (webhooks)의 요청을 수락하지만 400 RPM이되면 내 사이트가 다운됩니다 (클라이언트가 너무 많음). 그걸로 내가 뭘 할 수 있니?Rails 컨트롤러로 많은 요청을 수락하는 올바른 방법은 무엇입니까?
class CallbacksController < ApplicationController
def acceptor
if params['type'] == 'confirmation' # this type is rare. only when client switches on callback
group_setting = GroupSetting.find_by_callback_token(params[:callback_token])
if group_setting
group_setting.update_attribute(:use_callback, true)
GroupSetting.new.callback_start(group_setting.group, group_setting.user)
render text: group_setting.response_string
else
render text:'ok'
end
else
CallbackWorker.perform_async(params[:callback_token], params['type'],
params['group_id'], params['object'],
params['secret'])
render text:'ok'
end
end
end
아마도 당신이 옳습니다. 내 경우는 Passenger + Nginx입니다. 승객의 최대 연결 수는 100 개이지만 새로운 사이트 방문자를 차단하기 전에는 사이트가 매우 느려집니다. 내 경우에 무엇을 보여줄까요? – nobilik