Я работаю для стартапа, где у нас есть продукт для iOS, который взаимодействует с бэкэнд-API. Первоначально, когда продукт разрабатывался, API был спроектирован так, чтобы быть гибким, чтобы клиент всегда мог получить доступ к нужным ему данным в данном представлении; тем более что взгляды развивались.
По мере того, как мы начинаем масштабирование, мы обнаруживаем, что существует множество узких мест в производительности из-за объема данных, которые мы передаем клиенту, некоторые из которых не нужны на данной конечной точке.
Мой вопрос таков: в случае частного API, где вы также создаете единственный клиент, который будет использовать API, является ли распространенным (или приемлемым) связывание требований внешнего интерфейса непосредственно с тем, что обслуживает внутренний сервер, так что бэкэнд обеспечивает только то, что клиенту нужен для данной конечной точки / представления?