So finden Sie AWS EC2 mit der geringsten Latenz zu einem anderen Server

So finden Sie AWS EC2 mit der geringsten Latenz zu einem anderen Server

Ich habe einen Client-Server in AWS und möchte die Latenz zwischen seiner Maschine und meiner EC2-Instanz reduzieren. Ich habe zwei gleiche Server in einer Verfügbarkeitszone gemietet und begonnen, Anfragen an die API des Clients zu senden. Es stellte sich heraus, dass diese Server unterschiedliche Latenzen haben: Die 95. Perzentile unterschieden sich um etwa 5 Millisekunden (das sind etwa 30 % der durchschnittlichen Latenz). Und mein Ziel ist es, die Latenz zu reduzieren.

Ich denke, ich kann mehr Server mieten und dieses Experiment wiederholen, aber das wird der nächste Schritt meiner Untersuchung sein. Der erste Schritt für mich besteht darin, die Gründe zu verstehen, warum Server in derselben Zone so große Unterschiede in der API-Antwortlatenz aufweisen und welche Metriken zur Erklärung hilfreich sein können.

Die zweite Möglichkeit, die Latenz zu reduzieren, besteht darin, einen Bare-Metal-Server anstelle von EC2 zu mieten, aber das scheint zu teuer zu sein. Und ich befürchte, dass die Miete dieses Servers die Situation noch verschlimmert, wenn er weiter vom Client-Server entfernt steht.

Also, sag mir bitte:

  1. Haben Sie einen Rat, wie man die Latenz reduzieren kann?
  2. Wie kann ich in derselben AWS-Zone den nächstgelegenen Server für meinen Kunden mieten?

Antwort1

Selbst wenn Sie in derselben AZ starten, können sich Ihre EC2-Instanzen in unterschiedlichen Rechenzentren befinden. Es wird ein Glücksspiel sein, sie durch Ausprobieren zusammenzubringen.

Sehen Sie sich „Platzierungsgruppen“ an. Sie werden beim Starten mehrerer EC2-Instanzen verwendet, um sie in denselben Rechenzentren zu starten und so die Latenz zwischen ihnen zu verringern.

Wenn Sie über eine vorhandene EC2-Instanz verfügen, die sich nicht in einer Platzierungsgruppe befindet, ist es meiner Ansicht nach nicht möglich, sie einer Platzierungsgruppe hinzuzufügen.

Antwort2

Sie können zunächst sicherstellen, dass sich Ihre Instanzen in derselben physischen AZ befinden, was nicht immer dasselbe Gebäude bedeuten muss. Im Resource Access Manager (RAM) gibt es eine Zuordnung Ihrer logischen AZ-ID zur physischen AZ-ID. Diese wird zwischen den Konten zufällig vergeben – AZ-A in Ihrem Konto kann in einem anderen Konto AZ-C sein. Dies liegt daran, dass die meisten Leute die meisten Ressourcen in AZ-A platzieren, sodass die Dinge ausgeglichen werden.

Darüber hinaus glaube ich nicht, dass Sie viel mehr tun können, als durch Ausprobieren eine Instanz mit geringer Latenz zu Ihrem Client-Rechner zu erhalten. Ich bin mir ziemlich sicherPlatzierungsgruppenwie oben erwähnt, gelten diese für ein einzelnes Konto. Wenn Sie also eine extrem niedrige Latenz benötigen (5 ms sind nicht schlecht), müssen Sie sich möglicherweise im selben Konto befinden.

AZ-Kartierung

verwandte Informationen