Как найти AWS EC2 с наименьшей задержкой на другом сервере

Как найти AWS EC2 с наименьшей задержкой на другом сервере

У меня есть клиентский сервер, расположенный в AWS, и я хочу уменьшить задержку между его машиной и моим экземпляром EC2. Я арендовал два одинаковых сервера в одной зоне доступности и начал отправлять запросы на API клиента. Оказалось, что у этих серверов разные задержки: 95-е процентили отличались примерно на 5 миллисекунд (то есть примерно на 30% от средней задержки). И моя цель — уменьшить задержку.

Я думаю, что я могу арендовать больше серверов и повторить эти эксперименты, но это будет следующим шагом моего исследования. Первым шагом для меня является понимание причин, по которым серверы в одной зоне имеют такую ​​большую разницу в задержке ответа API, и какие метрики могут быть полезны для объяснения этого?

Второй способ уменьшить задержку — арендовать bare metal сервер вместо EC2, но это, похоже, слишком дорого. И я боюсь, что аренда этого сервера сделает еще хуже, если он будет дальше от клиентского сервера.

Итак, скажите мне, пожалуйста:

  1. Есть ли у вас какие-либо советы по уменьшению задержки?
  2. Как мне арендовать ближайший к моему клиенту сервер в той же зоне AWS?

решение1

Даже при запуске в одной и той же AZ ваши экземпляры EC2 могут находиться в разных центрах обработки данных. Это будет паршивая попытка собрать их вместе методом проб и ошибок.

Взгляните на «Группы размещения». Они используются при запуске нескольких экземпляров EC2, чтобы они запускались в одних и тех же центрах обработки данных, сокращая задержку между ними.

Если у вас есть существующий экземпляр EC2, который не входит в группу размещения, я не думаю, что его можно будет добавить в группу размещения.

решение2

Вы можете начать с того, чтобы убедиться, что ваши экземпляры находятся в одной физической AZ, что не всегда означает одно и то же здание. В Resource Access Manager (RAM) есть сопоставление вашего логического идентификатора AZ с физическим идентификатором AZ. Это рандомизировано между учетными записями — AZ-A в вашей учетной записи может быть AZ-C в другой учетной записи. Это связано с тем, что большинство людей размещают большинство ресурсов в AZ-A, поэтому это уравновешивает ситуацию.

Помимо этого, я не думаю, что вы можете сделать что-то еще, кроме как методом проб и ошибок, чтобы получить экземпляр с низкой задержкой для вашей клиентской машины. Я почти уверен,Группы размещениякак упоминалось выше, предназначены для использования в рамках одной учетной записи, поэтому, если вам нужна сверхнизкая задержка (5 мс — это неплохо), вам, возможно, придется находиться в той же учетной записи.

Картографирование AZ

Связанный контент