日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java强制执行方法_java – 在多台机器上强制执行单一速率限制的好方法是什么?...

發(fā)布時(shí)間:2024/1/23 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java强制执行方法_java – 在多台机器上强制执行单一速率限制的好方法是什么?... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

你說的兩件事是:

1)"I would like to rate limit so that only 10,000 requests get processed/day"

2)"while still load balancing those 10,000 requests."

首先,您似乎正在使用分而治之的方法,其中來自最終用戶的每個(gè)請求都被映射到n臺機(jī)器中的一臺.因此,為確保在給定時(shí)間范圍內(nèi)僅處理10,000個(gè)請求,有兩個(gè)選項(xiàng):

1)實(shí)現(xiàn)一個(gè)組合器,它將來自所有n臺機(jī)器的結(jié)果路由到

然后外部API能夠訪問的另一個(gè)端點(diǎn).這個(gè)端點(diǎn)能夠

保持正在處理的工作量的計(jì)數(shù),如果它超過了你的門檻,

然后拒絕這份工作.

2)另一種方法是將當(dāng)天處理的作業(yè)數(shù)量存儲為變量

在你的數(shù)據(jù)庫里面.然后,通常的做法是檢查您的閾值

在初始請求作業(yè)時(shí),數(shù)據(jù)庫中的值已達(dá)到

(甚至在你把它傳遞給你的一臺機(jī)器之前).如果閾值已經(jīng)過了

到了,然后在開始時(shí)拒絕工作.這與適當(dāng)?shù)南⑾嘟Y(jié)合,具有為最終用戶提供更好體驗(yàn)的優(yōu)點(diǎn).

為了確保所有這10,000個(gè)請求仍然是負(fù)載平衡的,以便沒有1個(gè)CPU處理比任何其他CPU更多的作業(yè),您應(yīng)該使用簡單的循環(huán)方法在m CPU上分配作業(yè).使用循環(huán)法,與bin /分類方法相同,您將確保作業(yè)請求盡可能均勻地分布在您的n CPU上.循環(huán)的一個(gè)缺點(diǎn)是,根據(jù)您正在處理的作業(yè)類型,您可能會在開始擴(kuò)展時(shí)復(fù)制大量數(shù)據(jù).如果這是您關(guān)注的問題,您應(yīng)該考慮實(shí)現(xiàn)一種局部敏感的哈希(LSH)函數(shù).雖然良好的散列函數(shù)盡可能均勻地分布數(shù)據(jù),但如果您選擇散列的屬性中的偏差很可能發(fā)生,則LSH會讓您使CPU處理的作業(yè)多于其他CPU.與往常一樣,這兩者都有權(quán)衡,所以你最了解你的用例.

總結(jié)

以上是生活随笔為你收集整理的java强制执行方法_java – 在多台机器上强制执行单一速率限制的好方法是什么?...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。