Я создаю приложение React с GraphQL, используя AWS AppSync с DynamoDB. Мой вариант использования состоит в том, что у меня есть таблица данных, которая извлекается из таблицы DynamoDB и отображается пользователю с помощью GraphQL. У меня есть несколько полей, которые обновляются пошаговыми функциями, запущенными в AWS. Мне нужно, чтобы эти поля автоматически обновлялись для пользователя, так же как и подписка из GraphQL, но я обнаружил, что подписки привязаны к мутациям, и, следовательно, обновление базы данных из пошаговых функций не будет запускать обновление подписки во внешнем интерфейсе. Чтобы обойти это, я использую следующее:
useEffect(() => {
setTimeout(getSubmissions, 5 * 1000)
})
Очевидно, что это много перегрузок и, вероятно, потребует ненужных расходов. Я искал лучшее решение и наткнулся на потоки DynamoDB, но потоки DynamoDB не могут мне помочь, если они не могут запустить внешний интерфейс для обновления компонента. Должно быть лучшее решение, чем я придумал.
Спасибо!