В этом руководстве описаны некоторые передовые методы, которые вы можете внедрить для оптимизации эффективности и производительности ваших приложений.
Поддерживайте работу своего приложения.
Чтобы ваше приложение работало без сбоев, выполните следующие действия:
Убедитесь, что список владельцев и редакторов вашего проекта Google Cloud актуален. Мы свяжемся с этими пользователями в случае возникновения каких-либо чрезвычайных ситуаций или вопросов, связанных с соблюдением условий использования API. Если мы не сможем связаться с вами по поводу соблюдения условий использования API, ваш доступ к API может быть ограничен или отозван.
Чтобы быть в курсе таких вопросов, как изменения в продукте, простои на техническое обслуживание и даты прекращения поддержки, подпишитесь на наш блог об API и блог о продукте .
Обеспечьте соответствие вашего приложения условиям использования API Google Ads (Условия и положения). При необходимости команда по обеспечению соответствия API свяжется с владельцами и редакторами вашего проекта Google Cloud, предоставившим доступ к API. Если у вас есть вопросы или замечания по поводу Условий и положений, вы можете связаться с командой по обеспечению соответствия, ответив на электронное письмо, которое они отправили вам при рассмотрении вашей заявки на доступ к API.
Оптимизация
��ы можете оптимизировать свое приложение, выполняя пакетные операции и, при необходимости, отправляя разреженные объекты.
Пакетные операции
Отправка запроса к API влечет за собой ряд фиксированных затрат, таких как задержка в сети в обоих направлениях, обработка сериализации и десериализации, а также вызовы к бэкэнд-системам. Чтобы уменьшить влияние этих фиксированных затрат и повысить общую производительность, большинство методов изменения в API предназначены для приема массива операций. Объединяя несколько операций в один запрос, вы можете уменьшить количество отправляемых запросов и связанные с ними фиксированные затраты. По возможности избегайте запросов, содержащих только одну операцию.
Например, предположим, вы добавляете 50 000 ключевых слов в кампанию, охватывающую несколько групп объявлений. Вместо того чтобы делать 50 000 запросов по одному ключевому слову в каждом, сделайте 100 запросов по 500 ключевых слов в каждом или даже 10 запросов по 5000 ключевых слов в каждом. Существуют ограничения на количество операций в запросе, поэтому вам может потребоваться скорректировать размер пакета для достижения оптимальной производительности.
Отправка разреженных объектов
При отправке объектов в API поля должны быть десериализованы, проверены и сохранены в базе данных. Передача полных объектов, когда необходимо обновить только несколько полей, может привести к увеличению времени обработки и снижению производительности. Для решения этой проблемы API Google Ads поддерживает разреженные обновления, позволяющие заполнять только те поля объекта, которые необходимо изменить или которые являются обязательными. Разреженные обновления обрабатываются быстрее и с меньшей вероятностью приводят к ошибкам. Поля, не включенные в update_mask (также известный как FieldMask ), остаются неизмененными.
Например, приложению, которое обновляет ставки на уровне ключевых слов, может быть полезно использовать разреженные обновления, поскольку потребуется заполнить только ��оля ID группы объявлений, ID критерия и ставки.
Обработка и управление ошибками
В процессе разработки вы, вероятно, столкнетесь с ошибками. В этом разделе описаны соображения и стратегии по внедрению системы управления ошибками в ваше приложение. Помимо этого раздела, посетите руководство по устранению неполадок для получения дополнительной информации об управлении ошибками.
Различить источники запросов
Некоторые приложения в основном интерактивны, отправляя вызовы API непосредственно в ответ на действия пользователя в пользовательском интерфейсе. Другие работают преимущественно в автономном режиме, отправляя вызовы API в рамках периодического процесса на стороне сервера. Многие приложения сочетают в себе оба подхода. При рассмотрении вопросов управления ошибками полезно различать эти разные типы запросов.
При обработке запросов, инициированных пользователями, вашей главной задачей должно быть обеспечение удобного взаимодействия с пользователем. Используйте описание конкретной ошибки, чтобы предоставить пользователю как можно больше контекста в пользовательском интерфейсе. Предложите четкие шаги, которые он может предпринять для устранения ошибки (см. следующие рекомендации).
Для запросов, инициированных на бэкэнде, реализуйте обработчики для различных типов ошибок, с которыми может столкнуться ваше приложение. Всегда включайте обработчик по умолчанию для обработки редких или ранее не встречавшихся ошибок. Хорошим подходом для обработчика по умолчанию является добавление неудачной операции и ошибки в очередь для проверки оператором и определения соответствующего решения.
Различать типы ошибок
Знание различий между типами ошибок в Google Ads API имеет решающее значение при создании надежной системы обработки ошибок. К наиболее распространенным типам ошибок относятся:
- Ошибки аутентификации
- Ошибки, которые можно исправить повторно.
- Ошибки проверки
- Ошибки, свя��анные с синхронизацией
Для получения более подробной информации см. разделы «Типы ошибок» и «Распространенные ошибки» .
Сетевые бэкэнды
Если пользователи вашего приложения имеют ручной доступ к аккаунтам Google Ads, они могут вносить изменения, о которых ваше приложение не знает, что приводит к рассинхронизации локальной базы данных. Как отмечено в нашем руководстве по типам ошибок , вы можете реагировать на ошибки синхронизации по мере их возникновения, но вы также можете попытаться предотвратить их на упреждающей основе. Одна из таких стратегий — запуск периодической задачи синхронизации для согласования вашей локальной базы данных с объектами Google Ads в ваших аккаунтах. Для больших иерархий аккаунтов избегайте ежедневной загрузки всех объектов из каждого аккаунта, чтобы не исчерпать ежедневные квоты; вместо этого запрашивайте ChangeStatus или фильтруйте недавно измененные сущности для инкрементальной синхронизации изменений.
Ошибки журнала
Все ошибки следует регистрировать для облегчения отладки и мониторинга. Как минимум, регистрируйте идентификатор запроса, операции, вызвавшие ошибку, и саму ошибку. Также следует регистрировать идентификатор клиента, API-сервис, задержку запроса в обоих направлениях, количество повторных попыток, а также очищенные необработанные запросы и ответы (обязательно удалите конфиденциальные учетные данные, такие как токены OAuth и любые персональные данные).
Отслеживание тенденций
Обязательно отслеживайте тенденции ошибок API, чтобы выявлять и устранять проблемы в вашем приложении. Рассмотрите возможность создания собственного решения или использования одного из множества доступных коммерческих инструментов, которые могут использовать ваши журналы для создания интерактивных панелей мониторинга и отправки автоматических оповещений.
Разработка
Используйте тестовые учетные записи во время разработки.
Используйте тестовые аккаунты
Тестовые аккаунты — это аккаунты Google Ads, которые фактически не показывают рекламу. Вы можете использовать тестовый аккаунт для экспериментов с API Google Ads и проверки того, что подключение вашего приложения, логика управления кампаниями или другие процессы работают должным образом. Вашему проекту в Google Cloud требуется только доступ к тестовому аккаунту, поэтому вы можете сразу же начать разработку с использованием API Google Ads, ожидая, пока Google проверит ваше приложение на предмет возможности получения более высокого уровня доступа к API.