Я начал писать свое полноценное REST-API приложение на Go, но проблема описания архитектуры приложения мне остается не совсем понятной. Я понял суть разделения на трехслойную архитектуру, но последующие внутренние архитектурные нюансы в каждом источнике отличаются настолько, что не могу уловить какой-то общий паттерн (как, например, описываются логгирование, конфиги, роутинг).
Так, например, в рамках одного из видео по написанию REST-API была предложена такая схема (она не полная, но суть, я думаю, понятна):
Подскажите, пожалуйста, источники, где к этому можно обратиться.