URLFetch за прокси-сервером в App Engine - PullRequest
5 голосов
/ 10 января 2012

Есть ли способ указать прокси-сервер при использовании urlfetch в Google App Engine?

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

Я хочу использовать прокси, потому что существуют проблемы с использованием исходящих IP-адресов Google (ограничение скорости, отсутствие статического исходящего IP-адреса, иногда занесен в черный список и т. Д.).Настройка прокси-сервера обычно проста, если вы можете редактировать само сообщение http, но API GAE не позволяет вам сделать это.

Ответы [ 2 ]

3 голосов
/ 10 января 2012

Вы всегда можете свернуть свои собственные:

  1. В случае фиксированного пункта назначения: просто настройте фиксированную переадресацию портов на прокси-сервере. Затем отправьте запросы от GAE на прокси. Если у вас есть несколько пунктов назначения, установите переадресацию на отдельные порты, по одному для каждого пункта назначения

  2. В случае динамического назначения (слишком много для обработки через фиксированную переадресацию портов) ваше приложение GAE добавляет настраиваемый заголовок http (X-Something), содержащий конечное назначение, а затем подключается к настраиваемому прокси. Пользовательский прокси-сервер проверяет это поле и направляет запрос в пункт назначения.

0 голосов
/ 05 сентября 2017

Мы столкнулись с этой проблемой и обратились в службу поддержки Google Cloud. Они предложили использовать Google App Engine Flexible с некоторыми настройками app.yaml, пользовательской сетью и экземпляром шлюза NAT для пересылки ip.

Это не сработало для нас, потому что многие основные функции из App Engine Standard не реализованы в App Engine Flexible. По сути, нам нужно будет переписать наш продукт.

Итак, чтобы применимые запросы выборки URL имели статический IP, мы создали собственный прокси: https://github.com/csgactuarial/app-engine-proxy

По соображениям резервирования, я предлагаю реализовать это как многорегиональную, многозонную систему с балансировкой нагрузки.

...