2013-03-04 47 views
0

我在EC2中的Elastic Load Balancer後面有一個自動調整的web/app層。我想爲我的REST Web服務設置一個限制,以強制執行每秒交易限制。我想強制執行它基於被調用的服務和一些專有的http頭信息傳入請求。我正在考慮站起來騾服務器來遏制傳入的請求,然後將它們轉發給ELB或返回一個http 503,但我不知道這將是多麼困難的構建和測試,或者如果它可以工作。我可以在彈性負載平衡器的EC2盈方中構建服務節流閥嗎?

無論如何,我可以設置一些東西在我的ELB面前,以遏制傳入的請求?有沒有更好的方法在EC2中執行Web服務調節?

+0

不是一個曲線球,但你有沒有考慮過像Apigee這樣的服務? – 2013-03-04 20:25:40

+0

我很欣賞這個建議,但我不清楚如何切換到Apigee來解決EC2中的服務限制問題。你能澄清嗎? – TERACytE 2013-03-04 20:52:33

+0

Throttling是Apigee應該提供的功能之一。我並不是建議使用交換機,只是將它們用作服務的前端代理。 – 2013-03-04 21:35:35

回答

1

您必須在EC2上配置節流,ELB不提供限制請求率的功能。

+0

是的,我瞭解ELB不提供此功能。我曾問過在其他地方(可能是EC2)設置油門,如果不符合油門配額,則會調用ELB。問題是我不知道您是否可以設置服務器以這種方式運行:返回REST服務調用的結果而不重新打包響應或返回503. – TERACytE 2013-03-04 20:50:07

+0

那麼,CloudWatch允許處理ELB指標:http:// harish11g.blogspot.com/2012/02/cloudwatch-elastic-load-balancing.html。當請求速率超過您的ec2容量時,可能需要自動縮放? – 2013-03-04 21:13:33