Рейтинг:0

Запрос токена доступа через OpenStack Keystone очень медленный

флаг kz

Я пытался выяснить, почему запрос токена доступа через OpenStack Keystone выполняется относительно медленно (наименьшее значение составляет от 400 мс до в некоторых случаях более секунды).

Чтобы понять причину, я использовал OSProfiler, и, похоже, большую часть времени я трачу на общение с базой данных. Я вижу, как Keystone делает около сотни вызовов базы данных при запросе токена. Отдельные вызовы к базе данных выполняются относительно быстро (от 2 до 6 мс), но выполнение этого раза 100 может легко привести к задержке в 500 мс только в запросах к базе данных.

Прямо сейчас доступ к базе данных осуществляется через сеть (время обращения по сети составляет около 0,3 мс). Время для каждого запроса к базе данных имеет смысл, если посмотреть на накладные расходы TCP и MySQL, так что это не так уж и безумно.

Главное, о чем я задаюсь вопросом, является ли это ожидаемым поведением, нормально ли для Keystone выполнять такое количество запросов для запроса токена. Кэширование включено, и я знаю, что кэширование работает, поскольку я вижу, как Keystone использует базу данных, и при отладке библиотеки кэширования это фактически указывает на то, что при обращении к кешу он получает попадания.

Прямо сейчас единственный вариант, который я вижу, — это полностью исключить сеть и переместить базу данных на тот же компьютер, что и Keystone API.

Обновление: это на Уссури с использованием токенов Fernet

Wilson Hauck avatar
флаг jp
Какая у вас версия openstack-keystone?
Wilson Hauck avatar
флаг jp
Не могли бы вы опубликовать свой запрос? Не могли бы вы опубликовать общий журнал для одного из этих запросов токена доступа, чтобы мы могли увидеть, что вызывает активность?
флаг in
Мне нужно проверить это, когда я вернусь на работу в понедельник, но у меня была аналогичная проблема, когда база данных билетов стала слишком большой, потому что старые билеты не были удалены.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.