Сервис агрегации курсов валют
Компания продаёт товары во всех валютах; пользователь выбирает валюту, цена пересчитывается на лету. Куплены две подписки на внешние источники курсов, у каждого можно запросить текущий курс выбранной пары. Нужно дать остальным сервисам: 1) API текущего курса по валютной паре; 2) API исторического курса.
Вопросы по ходу: сколько всего пар и какой объём хранения? Какие компоненты (плохо — отдельный сервис под каждого поставщика; норм — разделение чтения и записи, запись по расписанию)? Как обеспечить отказоустойчивость? Что делать, если курс у поставщиков расходится (доверенный поставщик, среднее, перцентиль)? Как внешним сервисам обрабатывать ошибки сервиса курсов (когда падать, когда использовать запасной вариант)?
Порядок, которого ждут: уточни требования → оцени нагрузку → API и данные → схема компонентов → узкие места и отказ. Не прыгай сразу в Kafka.