Метод Boto connect_xxx и пулы соединений

Если я вызываю boto.connect_xxx, где xxx – некоторая служба (dynamodb, s3 и т. Д.) Несколько раз, создает ли каждый новый пул соединений? То, что я хотел бы сделать, это что-то вроде этого (пример в Flask):

@app.before_request def before_request(): g.db = connect_dynamodb() 

чтобы убедиться, что я всегда подключаюсь, но я не хочу делать это перед каждым запросом, если он каждый раз будет создавать новые токены безопасности и т. д., весь rigamarole. Безопасно ли просто называть connect_xxx () один раз при запуске приложения и полагаться на boto для создания новых подключений по мере необходимости и т. Д.?

One Solution collect form web for “Метод Boto connect_xxx и пулы соединений”

Лучший подход – вызывать метод connect_xxx один раз, когда ваше приложение запускается и полагается на boto для управления соединением с этого момента. Единственным исключением из этого правила является использование нескольких потоков. В этом случае каждый поток должен создать свое собственное соединение, так как boto использует httplib, который не является потокобезопасным.

Даже если вы вызываете метод connect_xxx перед каждым запросом, вы действительно должны быть в порядке. Boto объединяет соединение на уровне класса и должно обрабатывать это довольно эффективно.

  • Применение HTTPS на эластичной бобовой кладке
  • Запуск uwsgi с помощью виртуальных и колб
  • Как использовать маршруты Flask с Apache и mod_wsgi?
  • Как создать страницу 404?
  • Создание API RESTful с использованием Flask?
  • Flask, mod_wsgi и Apache: ImportError
  • Диалог настройки SQLAlchemy Flask
  • сообщение python-requests с именами файлов в unicode
  • Python - лучший язык программирования в мире.