Нужно сделать приложение, в котором будет 2 функции:
1) морда, в которая будет обращаться к БД и записывать данные туда
2) что-то неизвиданное, что будет обращаться к БД, брать оттуда данные, выполнять request к API, брать оттуда данные и записывать в БД_2 .
А данные из БД_2 будут отображаться на сайте
Как лучше сделать?
Просто сделать пункт 1 и 2 в разных горутинах. Асинхронность в го и так есть по-умолчанию, при этом можно просто писать последовательный код и не беспокоиться о ней.
Обработчики http-запросов в Go автоматически асинхронны.
Не забыть об этом и все функции должны быть реализованы как реентерабельные.
Ну и блокировки общих и внешних ресурсов не забыть или предусмотреть в ней асинхронность.