如何找到與另一台伺服器延遲最低的 AWS EC2

如何找到與另一台伺服器延遲最低的 AWS EC2

我有一個位於 AWS 的客戶端伺服器,我想減少他的機器和我的 EC2 執行個體之間的延遲。我在一個可用區租用了兩台相同的伺服器,並開始向客戶端的 API 發送請求。事實證明,這些伺服器具有不同的延遲:第 95 個百分位的差異約為 5 毫秒(即平均延遲的 30% 左右)。我的目標是減少延遲。

我認為我可以租用更多伺服器並重複這些實驗,但這將是我調查的下一步。對我來說,第一步是了解同一區域中的伺服器在 API 回應延遲方面存在如此大差異的原因以及哪些指標可以用來解釋它?

減少延遲的第二種方法是租用裸機伺服器而不是EC2,但似乎太貴了。而且我擔心如果租用這台伺服器距離客戶端伺服器較遠,情況會更糟。

那麼,請告訴我:

  1. 您對如何減少延遲有什麼建議嗎?
  2. 如何在同一 AWS 區域中租用離我的客戶最近的伺服器?

答案1

即使在同一可用區中啟動,您的 EC2 執行個體也可能位於不同的資料中心。透過反覆試驗將他們聚集在一起將是一次糟糕的拍攝。

查看“展示位置組”。它們在啟動多個 EC2 執行個體時使用,以使它們在同一資料中心中啟動,從而減少它們之間的延遲。

如果您有一個不在置放群組中的現有 EC2 實例,我認為無法將其新增至置放群組。

答案2

您可以先確保您的執行個體位於同一實體可用區,這並不總是意味著同一棟建築物。在資源存取管理器 (RAM) 中,存在邏輯 AZ ID 到實體 AZ ID 的對應。這是在帳戶之間隨機分配的 - 您帳戶中的 AZ-A 可能是另一個帳戶中的 AZ-C。這是因為大多數人將大部分資源投入到 AZ-A 中,因此它可以平衡事情。

除此之外,我認為除了反覆試驗之外,您無法做太多事情來獲得對客戶端電腦具有低延遲的實例。我相當確定歸置組如上所述,適用於單一帳戶內部,因此如果您需要超低延遲(5 毫秒也不錯),您可能必須在同一個帳戶中。

可用區映射

相關內容