Видео: ознакомьтесь с лучшими практиками семинара 2019 года
В этом руководстве рассматриваются некоторые передовые методы, которые вы можете реализовать для оптимизации эффективности и производительности своих приложений.
Текущее обслуживание
Чтобы обеспечить бесперебойную работу вашего приложения:
Поддерживайте актуальным ваш контактный адрес электронной почты разработчика в API-центре. Это псевдоним, который мы используем для связи с вами. Если нам не удастся связаться с вами по вопросам соблюдения Условий использования API, ваш доступ к API может быть отозван без вашего предварительного уведомления. Избегайте использования личного адреса электронной почты, привязанного к отдельной или неотслеживаемой учётной записи. Для просмотра API-центра необходимо войти в свою учётную запись менеджера.
Чтобы быть в курсе таких вопросов, как изменения в продукте, простои в обслуживании, даты прекращения поддержки и т. д., подпишитесь на нашу рассылку.
Форум регулярно отслеживается командой API Google Ads, что делает его идеальным местом для публикации вопросов по API.
- Соблюдайте условия использования Google Ads API (P&C). При необходимости команда по проверке токенов и обеспечению соответствия свяжется с вами по указанному вами адресу электронной почты. Если у вас есть вопросы или сомнения по поводу P&C, вы можете связаться с командой по проверке, ответив на электронное письмо, которое они отправили вам при рассмотрении вашей заявки на получение токена разработчика.
Оптимизация
Вы можете оптимизировать свое приложение, выполняя пакетные операции и, при необходимости, отправляя разреженные объекты.
Пакетные операции
Выполнение запроса к API влечёт за собой ряд фиксированных затрат, таких как задержка передачи данных туда и обратно, сериализация и десериализация, а также вызовы внутренних систем. Чтобы снизить влияние этих фиксированных затрат и повысить общую производительность, большинство методов mutate в API разработаны для обработки массива операций. Объединяя несколько операций в каждом запросе, можно сократить количество выполняемых запросов и связанные с ними фиксированные затраты. По возможности избегайте запросов, содержащих только одну операцию.
Например, предположим, что вы добавляете 50 000 ключевых слов в кампанию в нескольких группах объявлений. Вместо 50 000 запросов по одному ключевому слову в каждом, сделайте 100 запросов по 500 ключевых слов в каждом или даже 10 запросов по 5000 ключевых слов в каждом. Количество операций в запросе ограничено, поэтому для достижения оптимальной эффективности может потребоваться скорректировать размер пакета.
Отправлять разреженные объекты
При отправке объектов в API поля должны быть десериализованы, проверены и сохранены в базе данных. Передача полных объектов, когда требуется обновить лишь несколько полей, может привести к увеличению времени обработки и снижению производительности. Чтобы снизить этот эффект, API Google Ads поддерживает разреженные обновления, позволяя заполнять только те поля объекта, которые необходимо изменить или которые являются обязательными. Разреженные обновления обрабатываются быстрее и реже приводят к ошибкам. Поля, не указанные в update_mask (также известной как FieldMask
), остаются без изменений.
Например, приложение, обновляющее ставки на уровне ключевых слов, может выиграть от использования разреженных обновлений, поскольку необходимо будет заполнить только поля идентификатора группы объявлений, идентификатора критерия и ставок.
Обработка ошибок и управление ими
В процессе разработки вы, вероятно, столкнётесь с ошибками. В этом разделе описываются рекомендации и стратегии по внедрению управления ошибками в ваше приложение. В дополнение к этому разделу, ознакомьтесь с руководством по устранению неполадок для получения дополнительной информации об управлении ошибками.
Различать источники запросов
Некоторые приложения преимущественно интерактивны, выполняя вызовы API непосредственно в ответ на действия пользователя в пользовательском интерфейсе. Другие работают преимущественно в автономном режиме, выполняя вызовы API в рамках периодического бэкэнд-процесса. Многие приложения совмещают эти два подхода. При рассмотрении управления ошибками полезно различать эти типы запросов.
При обработке запросов, инициированных пользователями, вашей главной задачей должно быть обеспечение комфортного взаимодействия с пользователем. Используйте конкретную ошибку, которая произошла, чтобы предоставить пользователю как можно больше контекста в пользовательском интерфейсе. Предложите простые шаги для устранения ошибки (см. рекомендации ниже).
Для запросов, инициированных на стороне сервера, реализуйте обработчики различных типов ошибок, с которыми может столкнуться ваше приложение. Всегда включайте обработчик по умолчанию для обработки редких или ранее не встречавшихся ошибок. Хорошим подходом для обработчика по умолчанию является добавление неудавшейся операции и ошибки в очередь, чтобы оператор мог их рассмотреть и определить подходящее решение.
Различать типы ошибок
Знание различий между типами ошибок в API Google Ads критически важно для построения надёжной системы обработки ошибок. Вот некоторые из наиболее распространённых типов ошибок:
Более подробную информацию см. в разделах Типы ошибок и Распространенные ошибки .
Синхронизация бэкэндов
Если пользователи вашего приложения имеют ручной доступ к аккаунтам Google Ads, они могут вносить изменения, неизвестные вашему приложению, что приводит к рассинхронизации локальной базы данных приложения. Как отмечено в нашем руководстве по типам ошибок , вы можете устранять ошибки синхронизации реактивно, по мере их возникновения, но также можете попытаться предотвратить их проактивно. Одна из проактивных стратегий — еженощная синхронизация всех ваших аккаунтов, извлечение объектов Google Ads из них и сравнение с локальной базой данных.
Ошибки журнала
Все ошибки следует регистрировать для облегчения отладки и мониторинга. Как минимум, регистрируйте идентификатор запроса, операции, вызвавшие ошибку, и саму ошибку. Также в журнале регистрируются идентификатор клиента, API-сервис, задержка запроса туда и обратно, количество повторных попыток, а также исходный запрос и ответ.
Мониторинг тенденций
Обязательно отслеживайте тенденции ошибок API, чтобы выявлять и устранять проблемы в вашем приложении. Рассмотрите возможность создания собственного решения или использования одного из множества доступных коммерческих инструментов, которые могут использовать ваши журналы для создания интерактивных панелей мониторинга и отправки автоматических оповещений.
Разработка
Используйте тестовые аккаунты во время разработки.
Используйте тестовые аккаунты
Тестовые аккаунты — это аккаунты Google Ads, которые фактически не показывают рекламу. Вы можете использовать тестовый аккаунт для экспериментов с API Google Ads и проверки корректности работы подключения, логики управления кампаниями и других процессов в вашем приложении. Для использования в тестовом аккаунте не требуется одобрение токена разработчика, поэтому вы можете начать разработку с использованием API Google Ads сразу после запроса токена разработчика, даже до проверки вашего приложения.